diff --git a/.env.development b/.env.development
new file mode 100644
index 0000000..d133f5f
--- /dev/null
+++ b/.env.development
@@ -0,0 +1,11 @@
+NODE_ENV=development
+
+VITE_BLOG_URL=https://blog.ryujinx.org
+VITE_FAQ_URL=https://github.com/Ryujinx/Ryujinx/wiki/Frequently-Asked-Questions
+VITE_COMPATIBILITY_URL=https://github.com/Ryujinx/Ryujinx-Games-List/issues
+VITE_GUIDE_URL=https://github.com/Ryujinx/Ryujinx/wiki/Ryujinx-Setup-&-Configuration-Guide
+VITE_DISCORD_URL=https://discord.gg/VkQYXAZ
+VITE_RELEASE_URL=https://api.github.com/repos/Ryujinx/release-channel-master/releases/latest
+VITE_OLDER_BUILDS_URL=https://github.com/Ryujinx/release-channel-master/releases
+VITE_LDN_BUILD_URL=https://www.patreon.com/posts/ldn-2-5-vulkan-70757628
+VITE_PATREON_URL=https://patreon.com/Ryujinx
diff --git a/.env.production b/.env.production
new file mode 100644
index 0000000..aa86b60
--- /dev/null
+++ b/.env.production
@@ -0,0 +1,11 @@
+NODE_ENV=production
+
+VITE_BLOG_URL=https://blog.ryujinx.org
+VITE_FAQ_URL=https://github.com/Ryujinx/Ryujinx/wiki/Frequently-Asked-Questions
+VITE_COMPATIBILITY_URL=https://github.com/Ryujinx/Ryujinx-Games-List/issues
+VITE_GUIDE_URL=https://github.com/Ryujinx/Ryujinx/wiki/Ryujinx-Setup-&-Configuration-Guide
+VITE_DISCORD_URL=https://discord.gg/VkQYXAZ
+VITE_RELEASE_URL=https://api.github.com/repos/Ryujinx/release-channel-master/releases/latest
+VITE_OLDER_BUILDS_URL=https://github.com/Ryujinx/release-channel-master/releases
+VITE_LDN_BUILD_URL=https://www.patreon.com/posts/ldn-2-5-vulkan-70757628
+VITE_PATREON_URL=https://patreon.com/Ryujinx
diff --git a/.eslintrc b/.eslintrc
new file mode 100644
index 0000000..d66bfb0
--- /dev/null
+++ b/.eslintrc
@@ -0,0 +1,17 @@
+{
+ "root": true,
+ "parser": "vue-eslint-parser",
+ "env": {
+ "browser": true,
+ "es2021": true,
+ "node": true
+ },
+ "extends": [
+ "plugin:vue/vue3-recommended",
+ "eslint:recommended",
+ "@vue/typescript/recommended",
+ "prettier",
+ "plugin:@typescript-eslint/eslint-recommended",
+ "plugin:@typescript-eslint/recommended"
+ ]
+}
diff --git a/.eslintrc.js b/.eslintrc.js
deleted file mode 100644
index 22ba591..0000000
--- a/.eslintrc.js
+++ /dev/null
@@ -1,28 +0,0 @@
-module.exports = {
- "env": {
- "browser": true,
- "es6": true,
- "node": true
- },
- "extends": [
- "eslint:recommended",
- "plugin:vue/essential"
- ],
- "globals": {
- "Atomics": "readonly",
- "SharedArrayBuffer": "readonly"
- },
- "parserOptions": {
- "ecmaVersion": 2018,
- "sourceType": "module"
- },
- "plugins": [
- "vue",
- 'vuetify'
- ],
- "rules": {
- 'vuetify/no-deprecated-classes': 'error',
- 'vuetify/grid-unknown-attributes': 'error',
- 'vuetify/no-legacy-grid': 'error',
- }
-};
\ No newline at end of file
diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml
new file mode 100644
index 0000000..9c8cbeb
--- /dev/null
+++ b/.github/FUNDING.yml
@@ -0,0 +1 @@
+patreon: Ryujinx
diff --git a/.github/worflows/release.yml b/.github/worflows/release.yml
new file mode 100644
index 0000000..c8bcceb
--- /dev/null
+++ b/.github/worflows/release.yml
@@ -0,0 +1,24 @@
+name: Create release
+
+on:
+ workflow_dispatch:
+ inputs:
+ version:
+ description: 'Version (ex 1.0.1)'
+ required: true
+
+jobs:
+ merge:
+ runs-on: ubuntu-latest
+ steps:
+ - name: Copy Repo Files
+ uses: actions/checkout@v3
+
+ publish:
+ steps:
+ - name: Create release
+ uses: softprops/action-gh-release@v1
+ with:
+ tag_name: v${{ github.event.inputs.version }}
+ body: Please refer to [CHANGELOG.md](https://github.com/Ryujinx/Ryujinx-Website/blob/main/CHANGELOG.md) for details.
+ token: ${{ secrets.CR_PAT }}
diff --git a/.github/workflows/deployment.yml b/.github/workflows/deployment.yml
deleted file mode 100644
index 1ebf84d..0000000
--- a/.github/workflows/deployment.yml
+++ /dev/null
@@ -1,41 +0,0 @@
-name: Deploy to GitHub Pages
-
-on:
- push:
- branches:
- - master
-
-jobs:
- build:
- runs-on: ubuntu-latest
- steps:
- - name: "Checkout"
- uses: actions/checkout@v2
-
- - name: "Setup NodeJS"
- uses: actions/setup-node@v1
- with:
- node-version: '14.x'
-
- - name: "Install NPM dependencies"
- run: |
- # Workaround (see https://github.com/gridsome/gridsome/issues/1385)
- export VUE_CLI_BABEL_TRANSPILE_MODULES=true
- npm install
-
- - name: "Build"
- run: |
- # Workaround (see https://github.com/gridsome/gridsome/issues/1385)
- export VUE_CLI_BABEL_TRANSPILE_MODULES=true
- npm run deploy
-
- - name: "Deploy"
- uses: peaceiris/actions-gh-pages@v3
- with:
- deploy_key: ${{ secrets.ACTIONS_DEPLOY_KEY }}
- publish_dir: ./dist
- publish_branch: master
- external_repository: Ryujinx/ryujinx.github.io
- user_name: GitHub Action
- user_email: action@github.com
- force_orphan: true
diff --git a/.gitignore b/.gitignore
index 57826aa..a547bf3 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,9 +1,24 @@
+# Logs
+logs
*.log
-.cache
-.DS_Store
-src/.temp
-package-lock.json
+npm-debug.log*
+yarn-debug.log*
+yarn-error.log*
+pnpm-debug.log*
+lerna-debug.log*
+
node_modules
dist
-.env
-.env.*
+dist-ssr
+*.local
+
+# Editor directories and files
+.vscode/*
+!.vscode/extensions.json
+.idea
+.DS_Store
+*.suo
+*.ntvs*
+*.njsproj
+*.sln
+*.sw?
diff --git a/.node-version b/.node-version
new file mode 100644
index 0000000..2a4e4ab
--- /dev/null
+++ b/.node-version
@@ -0,0 +1 @@
+16.17.0
diff --git a/.prettierrc b/.prettierrc
new file mode 100644
index 0000000..64a7694
--- /dev/null
+++ b/.prettierrc
@@ -0,0 +1,6 @@
+{
+ "singleQuote": false,
+ "tabWidth": 2,
+ "trailingComma": "es5"
+}
+
diff --git a/.vscode/extensions.json b/.vscode/extensions.json
new file mode 100644
index 0000000..a7cea0b
--- /dev/null
+++ b/.vscode/extensions.json
@@ -0,0 +1,3 @@
+{
+ "recommendations": ["Vue.volar"]
+}
diff --git a/CHANGELOG.md b/CHANGELOG.md
new file mode 100644
index 0000000..4fbe45f
--- /dev/null
+++ b/CHANGELOG.md
@@ -0,0 +1,7 @@
+# Release Notes
+
+## v3.0.0 (02/09/2022)
+
+### Features
+
+- Website redesign
diff --git a/Dockerfile b/Dockerfile
new file mode 100644
index 0000000..7410f80
--- /dev/null
+++ b/Dockerfile
@@ -0,0 +1,14 @@
+# Stage build
+FROM node:lts-alpine as build-stage
+WORKDIR /app
+COPY package*.json ./
+RUN npm install
+COPY . .
+RUN npm run build
+
+# Stage prod
+FROM nginx:stable-alpine as production-stage
+COPY --from=build-stage /app/dist /usr/share/nginx/html
+COPY ./build/nginx.conf /etc/nginx/conf.d/default.conf
+EXPOSE 80
+CMD ["nginx", "-g", "daemon off;"]
diff --git a/LICENSE.txt b/LICENSE.txt
new file mode 100644
index 0000000..818ddd7
--- /dev/null
+++ b/LICENSE.txt
@@ -0,0 +1,9 @@
+MIT License
+
+Copyright (c) Ryujinx Team and Contributors
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/README.md b/README.md
index 247c752..8d31c28 100644
--- a/README.md
+++ b/README.md
@@ -1,24 +1,90 @@
-# Ryujinx Website
+
+
+
+
+ Ryujinx website
+
+ (REE-YOU-JINX)
+
-### 1. Install Gridsome CLI tool if you don't have
+
-`npm install --global @gridsome/cli`
+
+
+
+
+
+
+
+
-## 2. Build Setup
+## Changelog
-``` bash
-# Workaround (see https://github.com/gridsome/gridsome/issues/1385)
-export VUE_CLI_BABEL_TRANSPILE_MODULES=true
+The complete list of changes is available [here](CHANGELOG.md)
-# install dependencies
-npm install
+## Contribute
-# serve with hot reload at localhost:8080
-npm run develop
+### Translation
-# build for production with minification
-npm run build
+Currently, we need you to help us translate the website.
+Future languages to be added:
+- French
+- German
+- Dutch
+- Portuguese
+- Spanish
+
+Follow this link to participate in the translation (via Crowdin): https://crwd.in/ryujinx-website
+
+### Development
+
+We do encourage you talk to some devs in #development (on our Discord) before developing any PRs so we can make sure you aren't conflicting with another dev's plans, and so we can help you get accustomed to our code base and methods.
+
+## Building
+
+To build the website you need:
+
+- [nodejs](https://nodejs.org/en/) v16.x
+
+To start working on the Daemon, you can build the main branch:
+
+1. Clone the repo: `https://github.com/Ryujinx/Ryujinx-Website.git` or fork it and cd into.
+2. Restore project's dependencies : `npm install`
+3. Run website with `npm run dev`
+
+### Compiles and hot-reloads for development
-# build for production and view the bundle analyzer report
-npm run build --report
```
+npm run dev
+```
+
+### Compiles and minifies for production
+
+```
+npm run build
+```
+
+## Contact
+
+If you have contributions, suggestions, need website support or just want to get in touch with the team, join our [Discord server](https://discord.com/invite/Ryujinx).
+
+## Donations
+
+If you'd like to support the project financially, Ryujinx has an active Patreon campaign.
+
+
+
+
+
+All the developers working on the project do so on their free time, but the project has several expenses:
+* Hackable Nintendo Switch consoles to reverse-engineer the hardware
+* Additional computer hardware for testing purposes (e.g. GPUs to diagnose graphical bugs, etc.)
+* Licenses for various software development tools (e.g. Jetbrains, LDN servers, IDA)
+* Web hosting and infrastructure maintenance
+
+All funds received through Patreon are considered a donation to support the project. Patrons receive early access to progress reports and exclusive access to developer interviews.
+
+## License
+
+This software is licensed under the terms of the MIT license.
diff --git a/babel.config.json b/babel.config.json
deleted file mode 100644
index 6418b90..0000000
--- a/babel.config.json
+++ /dev/null
@@ -1,45 +0,0 @@
-{
- "comments": false,
- "presets": [
- ["minify", {
- "booleans": false,
- "consecutiveAdds": false,
- "deadcode": false,
- "flipComparisons": false,
- "guards": false,
- "infinity": false,
- "memberExpressions": false,
- "mergeVars": false,
- "numericLiterals": false,
- "regexpConstructors": false,
- "removeConsole": false,
- "removeDebugger": false,
- "removeUndefined": false,
- "builtIns": false,
- "evaluate": false,
- "replace": false,
- "simplify": false,
- "simplifyComparisons": false,
- "undefinedToVoid": false,
- "typeConstructors": false,
- "mangle": false,
- "propertyLiterals": false
- }],
- [
- "@babel/env",
- {
- "targets": {
- "edge": "17",
- "firefox": "60",
- "chrome": "67",
- "safari": "11.1",
- "ie": "11"
- },
- "modules": false,
- "useBuiltIns": "entry",
- "corejs": "3",
- "forceAllTransforms": true
- }
- ]
- ]
-}
\ No newline at end of file
diff --git a/build/nginx.conf b/build/nginx.conf
new file mode 100644
index 0000000..7d45b6f
--- /dev/null
+++ b/build/nginx.conf
@@ -0,0 +1,14 @@
+server {
+ listen 80 default_server;
+ listen [::]:80 default_server;
+
+ location / {
+ root /usr/share/nginx/html;
+ try_files $uri $uri/ /index.html;
+ index index.html;
+ }
+
+ location = /robots.txt {
+ root /usr/share/nginx/html;
+ }
+}
diff --git a/content/extra_page_infos.json b/content/extra_page_infos.json
deleted file mode 100644
index 5e2d088..0000000
--- a/content/extra_page_infos.json
+++ /dev/null
@@ -1,22 +0,0 @@
-[
- {
- "title": "Nintendo Switch Emulator",
- "path": "/",
- "keywords": ["home"]
- },
- {
- "title": "Download",
- "path": "/download",
- "keywords": ["download"]
- },
- {
- "title": "Contribute",
- "path": "/contribute",
- "keywords": ["contribute"]
- },
- {
- "title": "Build",
- "path": "/build",
- "keywords": ["build"]
- }
-]
\ No newline at end of file
diff --git a/content/team.json b/content/team.json
deleted file mode 100644
index 7dd0fc3..0000000
--- a/content/team.json
+++ /dev/null
@@ -1,48 +0,0 @@
-[{
- "name": "gdkchan",
- "github": "gdkchan",
- "avatar": "https://avatars2.githubusercontent.com/u/5624669?s=72&v=4",
- "title": "Lead Developer"
-},
-{
- "name": "Ac_K",
- "github": "AcK77",
- "avatar": "https://avatars3.githubusercontent.com/u/4905390?s=72&v=4",
- "title": "Developer"
-},
-{
- "name": "Thog",
- "github": "Thog",
- "avatar": "https://avatars3.githubusercontent.com/u/1760003?s=72&v=4",
- "title": "Developer"
-},
-{
- "name": "riperiperi",
- "github": "riperiperi",
- "avatar": "https://avatars3.githubusercontent.com/u/6294155?s=72&v=4",
- "title": "Developer"
-},
-{
- "name": "LDj3SNuD",
- "github": "LDj3SNuD",
- "avatar": "https://avatars3.githubusercontent.com/u/35856442?s=72&v=4",
- "title": "Developer"
-},
-{
- "name": "emmauss",
- "github": "emmauss",
- "avatar": "https://avatars3.githubusercontent.com/u/5307160?s=72&v=4",
- "title": "Developer"
-},
-{
- "name": "Moosehunter",
- "github": "Thealexbarney",
- "avatar": "https://avatars0.githubusercontent.com/u/601603?s=72&v=4",
- "title": "Developer"
-},
-{
- "name": "Lordmau5",
- "github": "Lordmau5",
- "avatar": "https://avatars0.githubusercontent.com/u/1345036?s=72&v=4",
- "title": "Web Designer"
-}]
diff --git a/content/ui/navbar/social.json b/content/ui/navbar/social.json
deleted file mode 100644
index 0ec85e9..0000000
--- a/content/ui/navbar/social.json
+++ /dev/null
@@ -1,27 +0,0 @@
-[
- {
- "title": "Patreon",
- "color": "red",
- "href": "https://patreon.com/Ryujinx",
- "icon": "fa-patreon"
- },
- {
- "title": "GitHub",
- "color": "green",
- "href": "https://github.com/Ryujinx/Ryujinx",
- "icon": "fa-github"
- },
- {
- "title": "Twitter",
- "color": "blue",
- "href": "https://twitter.com/RyujinxEmu",
- "icon": "fa-twitter"
-
- },
- {
- "title": "Discord",
- "color": "#7289DA",
- "href": "https://discord.gg/VkQYXAZ",
- "icon": "fa-discord"
- }
-]
\ No newline at end of file
diff --git a/docker-compose.yml b/docker-compose.yml
new file mode 100644
index 0000000..dfbf8a3
--- /dev/null
+++ b/docker-compose.yml
@@ -0,0 +1,10 @@
+version: "3.9"
+
+services:
+ frontend:
+ build:
+ context: ./
+ dockerfile: Dockerfile
+ restart: unless-stopped
+ ports:
+ - "3000:80"
diff --git a/gridsome.config.js b/gridsome.config.js
deleted file mode 100644
index 15876c0..0000000
--- a/gridsome.config.js
+++ /dev/null
@@ -1,42 +0,0 @@
-module.exports = {
- siteName: 'Ryujinx',
- siteUrl: 'https://ryujinx.org',
- titleTemplate: 'Ryujinx - %s',
- metadata: {
- siteDescription: "Ryujinx is an open source Nintendo Switch emulator written in C# for Windows and Linux.",
- siteKeywords: [
- "ryujinx",
- "switch",
- "nintendo switch",
- "emulator"
- ],
- siteAuthor: "Ryujinx",
- siteCopyright: "Ryujinx",
- siteTwitter: "@RyujinxEmu",
- coverImage: "/public/logo.png"
- },
- plugins: [
- 'gridsome-plugin-robots-txt',
- {
- use: '@gridsome/plugin-sitemap',
- options: {
- cacheTime: 0, // we don't want the sitemap to be cached!
- exclude: [],
- config: {}
- }
- },
- {
- use: '@gridsome/plugin-google-analytics',
- options: {
- id: 'UA-162558184-1'
- }
- },
- ],
- css: {
- loaderOptions: {
- scss: {
- // options here will be passed to sass-loader, nothing for now.
- }
- }
- }
-}
diff --git a/gridsome.server.js b/gridsome.server.js
deleted file mode 100644
index a8f6e11..0000000
--- a/gridsome.server.js
+++ /dev/null
@@ -1,38 +0,0 @@
-const nodeExternals = require('webpack-node-externals')
-const VuetifyLoaderPlugin = require('vuetify-loader/lib/plugin')
-const fs = require('fs')
-
-function addJSONCollection(actions,typeName, path) {
- const list = JSON.parse(fs.readFileSync(path));
- const collection = actions.addCollection({
- typeName: typeName
- })
-
- for (const element of list) {
- collection.addNode(element)
- }
-}
-
-module.exports = function (api) {
- api.chainWebpack((config, { isServer }) => {
- if (isServer) {
- config.externals([
- nodeExternals({
- allowlist: [/^vuetify/]
- })
- ])
- }
- })
-
- api.configureWebpack({
- plugins: [
- new VuetifyLoaderPlugin()
- ]
- })
-
- api.loadSource(async actions => {
- addJSONCollection(actions, "Team", "./content/team.json")
- addJSONCollection(actions, "SocialNavbarElements", "./content/ui/navbar/social.json")
- addJSONCollection(actions, "ExtraPagesInfo", "./content/extra_page_infos.json")
- })
-}
diff --git a/index.html b/index.html
new file mode 100644
index 0000000..cb6eb2e
--- /dev/null
+++ b/index.html
@@ -0,0 +1,43 @@
+
+
+
+
+
+
+ Ryujinx - Nintendo Switch Emulator
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/package-lock.json b/package-lock.json
new file mode 100644
index 0000000..5225e19
--- /dev/null
+++ b/package-lock.json
@@ -0,0 +1,5511 @@
+{
+ "name": "ryujinx-website",
+ "version": "3.0.0",
+ "lockfileVersion": 2,
+ "requires": true,
+ "packages": {
+ "": {
+ "name": "ryujinx-website",
+ "version": "3.0.0",
+ "dependencies": {
+ "@heroicons/vue": "^1.0.6",
+ "axios": "^0.27.2",
+ "dayjs": "^1.11.5",
+ "vue": "^3.2.37",
+ "vue-i18n": "^9.2.2",
+ "vue-router": "^4.1.3"
+ },
+ "devDependencies": {
+ "@tailwindcss/aspect-ratio": "^0.4.0",
+ "@tailwindcss/forms": "^0.5.2",
+ "@tailwindcss/typography": "^0.5.4",
+ "@types/node": "16.11.48",
+ "@vitejs/plugin-vue": "^3.0.2",
+ "@vue/eslint-config-typescript": "^11.0.0",
+ "autoprefixer": "^10.4.8",
+ "eslint": "^8.21.0",
+ "eslint-config-prettier": "^8.5.0",
+ "eslint-plugin-vue": "^9.3.0",
+ "postcss": "^8.4.16",
+ "prettier": "^2.7.1",
+ "tailwindcss": "^3.1.8",
+ "typescript": "^4.6.4",
+ "vite": "^3.0.6",
+ "vue-tsc": "^0.39.5"
+ }
+ },
+ "node_modules/@babel/parser": {
+ "version": "7.18.11",
+ "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.18.11.tgz",
+ "integrity": "sha512-9JKn5vN+hDt0Hdqn1PiJ2guflwP+B6Ga8qbDuoF0PzzVhrzsKIJo8yGqVk6CmMHiMei9w1C1Bp9IMJSIK+HPIQ==",
+ "bin": {
+ "parser": "bin/babel-parser.js"
+ },
+ "engines": {
+ "node": ">=6.0.0"
+ }
+ },
+ "node_modules/@esbuild/linux-loong64": {
+ "version": "0.14.54",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.14.54.tgz",
+ "integrity": "sha512-bZBrLAIX1kpWelV0XemxBZllyRmM6vgFQQG2GdNb+r3Fkp0FOh1NJSvekXDs7jq70k4euu1cryLMfU+mTXlEpw==",
+ "cpu": [
+ "loong64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@eslint/eslintrc": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.3.0.tgz",
+ "integrity": "sha512-UWW0TMTmk2d7hLcWD1/e2g5HDM/HQ3csaLSqXCfqwh4uNDuNqlaKWXmEsL4Cs41Z0KnILNvwbHAah3C2yt06kw==",
+ "dev": true,
+ "dependencies": {
+ "ajv": "^6.12.4",
+ "debug": "^4.3.2",
+ "espree": "^9.3.2",
+ "globals": "^13.15.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"
+ },
+ "engines": {
+ "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+ }
+ },
+ "node_modules/@heroicons/vue": {
+ "version": "1.0.6",
+ "resolved": "https://registry.npmjs.org/@heroicons/vue/-/vue-1.0.6.tgz",
+ "integrity": "sha512-ng2YcCQrdoQWEFpw+ipFl2rZo8mZ56v0T5+MyfQQvNqfKChwgP6DMloZLW+rl17GEcHkE3H82UTAMKBKZr4+WA==",
+ "peerDependencies": {
+ "vue": ">= 3"
+ }
+ },
+ "node_modules/@humanwhocodes/config-array": {
+ "version": "0.10.4",
+ "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.10.4.tgz",
+ "integrity": "sha512-mXAIHxZT3Vcpg83opl1wGlVZ9xydbfZO3r5YfRSH6Gpp2J/PfdBP0wbDa2sO6/qRbcalpoevVyW6A/fI6LfeMw==",
+ "dev": true,
+ "dependencies": {
+ "@humanwhocodes/object-schema": "^1.2.1",
+ "debug": "^4.1.1",
+ "minimatch": "^3.0.4"
+ },
+ "engines": {
+ "node": ">=10.10.0"
+ }
+ },
+ "node_modules/@humanwhocodes/gitignore-to-minimatch": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/@humanwhocodes/gitignore-to-minimatch/-/gitignore-to-minimatch-1.0.2.tgz",
+ "integrity": "sha512-rSqmMJDdLFUsyxR6FMtD00nfQKKLFb1kv+qBbOVKqErvloEIJLo5bDTJTQNTYgeyp78JsA7u/NPi5jT1GR/MuA==",
+ "dev": true,
+ "funding": {
+ "type": "github",
+ "url": "https://github.com/sponsors/nzakas"
+ }
+ },
+ "node_modules/@humanwhocodes/object-schema": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz",
+ "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==",
+ "dev": true
+ },
+ "node_modules/@intlify/core-base": {
+ "version": "9.2.2",
+ "resolved": "https://registry.npmjs.org/@intlify/core-base/-/core-base-9.2.2.tgz",
+ "integrity": "sha512-JjUpQtNfn+joMbrXvpR4hTF8iJQ2sEFzzK3KIESOx+f+uwIjgw20igOyaIdhfsVVBCds8ZM64MoeNSx+PHQMkA==",
+ "dependencies": {
+ "@intlify/devtools-if": "9.2.2",
+ "@intlify/message-compiler": "9.2.2",
+ "@intlify/shared": "9.2.2",
+ "@intlify/vue-devtools": "9.2.2"
+ },
+ "engines": {
+ "node": ">= 14"
+ }
+ },
+ "node_modules/@intlify/devtools-if": {
+ "version": "9.2.2",
+ "resolved": "https://registry.npmjs.org/@intlify/devtools-if/-/devtools-if-9.2.2.tgz",
+ "integrity": "sha512-4ttr/FNO29w+kBbU7HZ/U0Lzuh2cRDhP8UlWOtV9ERcjHzuyXVZmjyleESK6eVP60tGC9QtQW9yZE+JeRhDHkg==",
+ "dependencies": {
+ "@intlify/shared": "9.2.2"
+ },
+ "engines": {
+ "node": ">= 14"
+ }
+ },
+ "node_modules/@intlify/message-compiler": {
+ "version": "9.2.2",
+ "resolved": "https://registry.npmjs.org/@intlify/message-compiler/-/message-compiler-9.2.2.tgz",
+ "integrity": "sha512-IUrQW7byAKN2fMBe8z6sK6riG1pue95e5jfokn8hA5Q3Bqy4MBJ5lJAofUsawQJYHeoPJ7svMDyBaVJ4d0GTtA==",
+ "dependencies": {
+ "@intlify/shared": "9.2.2",
+ "source-map": "0.6.1"
+ },
+ "engines": {
+ "node": ">= 14"
+ }
+ },
+ "node_modules/@intlify/shared": {
+ "version": "9.2.2",
+ "resolved": "https://registry.npmjs.org/@intlify/shared/-/shared-9.2.2.tgz",
+ "integrity": "sha512-wRwTpsslgZS5HNyM7uDQYZtxnbI12aGiBZURX3BTR9RFIKKRWpllTsgzHWvj3HKm3Y2Sh5LPC1r0PDCKEhVn9Q==",
+ "engines": {
+ "node": ">= 14"
+ }
+ },
+ "node_modules/@intlify/vue-devtools": {
+ "version": "9.2.2",
+ "resolved": "https://registry.npmjs.org/@intlify/vue-devtools/-/vue-devtools-9.2.2.tgz",
+ "integrity": "sha512-+dUyqyCHWHb/UcvY1MlIpO87munedm3Gn6E9WWYdWrMuYLcoIoOEVDWSS8xSwtlPU+kA+MEQTP6Q1iI/ocusJg==",
+ "dependencies": {
+ "@intlify/core-base": "9.2.2",
+ "@intlify/shared": "9.2.2"
+ },
+ "engines": {
+ "node": ">= 14"
+ }
+ },
+ "node_modules/@nodelib/fs.scandir": {
+ "version": "2.1.5",
+ "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
+ "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==",
+ "dev": true,
+ "dependencies": {
+ "@nodelib/fs.stat": "2.0.5",
+ "run-parallel": "^1.1.9"
+ },
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/@nodelib/fs.stat": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz",
+ "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==",
+ "dev": true,
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/@nodelib/fs.walk": {
+ "version": "1.2.8",
+ "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz",
+ "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==",
+ "dev": true,
+ "dependencies": {
+ "@nodelib/fs.scandir": "2.1.5",
+ "fastq": "^1.6.0"
+ },
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/@tailwindcss/aspect-ratio": {
+ "version": "0.4.0",
+ "resolved": "https://registry.npmjs.org/@tailwindcss/aspect-ratio/-/aspect-ratio-0.4.0.tgz",
+ "integrity": "sha512-WJu0I4PpqNPuutpaA9zDUq2JXR+lorZ7PbLcKNLmb6GL9/HLfC7w3CRsMhJF4BbYd/lkY6CfXOvkYpuGnZfkpQ==",
+ "dev": true,
+ "peerDependencies": {
+ "tailwindcss": ">=2.0.0 || >=3.0.0 || >=3.0.0-alpha.1"
+ }
+ },
+ "node_modules/@tailwindcss/forms": {
+ "version": "0.5.2",
+ "resolved": "https://registry.npmjs.org/@tailwindcss/forms/-/forms-0.5.2.tgz",
+ "integrity": "sha512-pSrFeJB6Bg1Mrg9CdQW3+hqZXAKsBrSG9MAfFLKy1pVA4Mb4W7C0k7mEhlmS2Dfo/otxrQOET7NJiJ9RrS563w==",
+ "dev": true,
+ "dependencies": {
+ "mini-svg-data-uri": "^1.2.3"
+ },
+ "peerDependencies": {
+ "tailwindcss": ">=3.0.0 || >= 3.0.0-alpha.1"
+ }
+ },
+ "node_modules/@tailwindcss/typography": {
+ "version": "0.5.4",
+ "resolved": "https://registry.npmjs.org/@tailwindcss/typography/-/typography-0.5.4.tgz",
+ "integrity": "sha512-QEdg40EmGvE7kKoDei8zr5sf4D1pIayHj4R31bH3lX8x2BtTiR+jNejYPOkhbmy3DXgkMF9jC8xqNiGFAuL9Sg==",
+ "dev": true,
+ "dependencies": {
+ "lodash.castarray": "^4.4.0",
+ "lodash.isplainobject": "^4.0.6",
+ "lodash.merge": "^4.6.2"
+ },
+ "peerDependencies": {
+ "tailwindcss": ">=3.0.0 || insiders"
+ }
+ },
+ "node_modules/@types/json-schema": {
+ "version": "7.0.11",
+ "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz",
+ "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==",
+ "dev": true
+ },
+ "node_modules/@types/node": {
+ "version": "16.11.48",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-16.11.48.tgz",
+ "integrity": "sha512-Z9r9UWlNeNkYnxybm+1fc0jxUNjZqRekTAr1pG0qdXe9apT9yCiqk1c4VvKQJsFpnchU4+fLl25MabSLA2wxIw==",
+ "dev": true
+ },
+ "node_modules/@typescript-eslint/eslint-plugin": {
+ "version": "5.33.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.33.0.tgz",
+ "integrity": "sha512-jHvZNSW2WZ31OPJ3enhLrEKvAZNyAFWZ6rx9tUwaessTc4sx9KmgMNhVcqVAl1ETnT5rU5fpXTLmY9YvC1DCNg==",
+ "dev": true,
+ "dependencies": {
+ "@typescript-eslint/scope-manager": "5.33.0",
+ "@typescript-eslint/type-utils": "5.33.0",
+ "@typescript-eslint/utils": "5.33.0",
+ "debug": "^4.3.4",
+ "functional-red-black-tree": "^1.0.1",
+ "ignore": "^5.2.0",
+ "regexpp": "^3.2.0",
+ "semver": "^7.3.7",
+ "tsutils": "^3.21.0"
+ },
+ "engines": {
+ "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/typescript-eslint"
+ },
+ "peerDependencies": {
+ "@typescript-eslint/parser": "^5.0.0",
+ "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@typescript-eslint/parser": {
+ "version": "5.33.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.33.0.tgz",
+ "integrity": "sha512-cgM5cJrWmrDV2KpvlcSkelTBASAs1mgqq+IUGKJvFxWrapHpaRy5EXPQz9YaKF3nZ8KY18ILTiVpUtbIac86/w==",
+ "dev": true,
+ "dependencies": {
+ "@typescript-eslint/scope-manager": "5.33.0",
+ "@typescript-eslint/types": "5.33.0",
+ "@typescript-eslint/typescript-estree": "5.33.0",
+ "debug": "^4.3.4"
+ },
+ "engines": {
+ "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/typescript-eslint"
+ },
+ "peerDependencies": {
+ "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@typescript-eslint/scope-manager": {
+ "version": "5.33.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.33.0.tgz",
+ "integrity": "sha512-/Jta8yMNpXYpRDl8EwF/M8It2A9sFJTubDo0ATZefGXmOqlaBffEw0ZbkbQ7TNDK6q55NPHFshGBPAZvZkE8Pw==",
+ "dev": true,
+ "dependencies": {
+ "@typescript-eslint/types": "5.33.0",
+ "@typescript-eslint/visitor-keys": "5.33.0"
+ },
+ "engines": {
+ "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/typescript-eslint"
+ }
+ },
+ "node_modules/@typescript-eslint/type-utils": {
+ "version": "5.33.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.33.0.tgz",
+ "integrity": "sha512-2zB8uEn7hEH2pBeyk3NpzX1p3lF9dKrEbnXq1F7YkpZ6hlyqb2yZujqgRGqXgRBTHWIUG3NGx/WeZk224UKlIA==",
+ "dev": true,
+ "dependencies": {
+ "@typescript-eslint/utils": "5.33.0",
+ "debug": "^4.3.4",
+ "tsutils": "^3.21.0"
+ },
+ "engines": {
+ "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/typescript-eslint"
+ },
+ "peerDependencies": {
+ "eslint": "*"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@typescript-eslint/types": {
+ "version": "5.33.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.33.0.tgz",
+ "integrity": "sha512-nIMt96JngB4MYFYXpZ/3ZNU4GWPNdBbcB5w2rDOCpXOVUkhtNlG2mmm8uXhubhidRZdwMaMBap7Uk8SZMU/ppw==",
+ "dev": true,
+ "engines": {
+ "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/typescript-eslint"
+ }
+ },
+ "node_modules/@typescript-eslint/typescript-estree": {
+ "version": "5.33.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.33.0.tgz",
+ "integrity": "sha512-tqq3MRLlggkJKJUrzM6wltk8NckKyyorCSGMq4eVkyL5sDYzJJcMgZATqmF8fLdsWrW7OjjIZ1m9v81vKcaqwQ==",
+ "dev": true,
+ "dependencies": {
+ "@typescript-eslint/types": "5.33.0",
+ "@typescript-eslint/visitor-keys": "5.33.0",
+ "debug": "^4.3.4",
+ "globby": "^11.1.0",
+ "is-glob": "^4.0.3",
+ "semver": "^7.3.7",
+ "tsutils": "^3.21.0"
+ },
+ "engines": {
+ "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/typescript-eslint"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@typescript-eslint/utils": {
+ "version": "5.33.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.33.0.tgz",
+ "integrity": "sha512-JxOAnXt9oZjXLIiXb5ZIcZXiwVHCkqZgof0O8KPgz7C7y0HS42gi75PdPlqh1Tf109M0fyUw45Ao6JLo7S5AHw==",
+ "dev": true,
+ "dependencies": {
+ "@types/json-schema": "^7.0.9",
+ "@typescript-eslint/scope-manager": "5.33.0",
+ "@typescript-eslint/types": "5.33.0",
+ "@typescript-eslint/typescript-estree": "5.33.0",
+ "eslint-scope": "^5.1.1",
+ "eslint-utils": "^3.0.0"
+ },
+ "engines": {
+ "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/typescript-eslint"
+ },
+ "peerDependencies": {
+ "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0"
+ }
+ },
+ "node_modules/@typescript-eslint/utils/node_modules/eslint-scope": {
+ "version": "5.1.1",
+ "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz",
+ "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==",
+ "dev": true,
+ "dependencies": {
+ "esrecurse": "^4.3.0",
+ "estraverse": "^4.1.1"
+ },
+ "engines": {
+ "node": ">=8.0.0"
+ }
+ },
+ "node_modules/@typescript-eslint/utils/node_modules/estraverse": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz",
+ "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==",
+ "dev": true,
+ "engines": {
+ "node": ">=4.0"
+ }
+ },
+ "node_modules/@typescript-eslint/visitor-keys": {
+ "version": "5.33.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.33.0.tgz",
+ "integrity": "sha512-/XsqCzD4t+Y9p5wd9HZiptuGKBlaZO5showwqODii5C0nZawxWLF+Q6k5wYHBrQv96h6GYKyqqMHCSTqta8Kiw==",
+ "dev": true,
+ "dependencies": {
+ "@typescript-eslint/types": "5.33.0",
+ "eslint-visitor-keys": "^3.3.0"
+ },
+ "engines": {
+ "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/typescript-eslint"
+ }
+ },
+ "node_modules/@vitejs/plugin-vue": {
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-3.0.3.tgz",
+ "integrity": "sha512-U4zNBlz9mg+TA+i+5QPc3N5lQvdUXENZLO2h0Wdzp56gI1MWhqJOv+6R+d4kOzoaSSq6TnGPBdZAXKOe4lXy6g==",
+ "dev": true,
+ "engines": {
+ "node": "^14.18.0 || >=16.0.0"
+ },
+ "peerDependencies": {
+ "vite": "^3.0.0",
+ "vue": "^3.2.25"
+ }
+ },
+ "node_modules/@volar/code-gen": {
+ "version": "0.39.5",
+ "resolved": "https://registry.npmjs.org/@volar/code-gen/-/code-gen-0.39.5.tgz",
+ "integrity": "sha512-vQr5VoCH8T2NHmqLc/AA1/4F8l41WB+24+I+VjxBaev/Hmwjye9K0GlmMHAOl84WB3hWGOqpHaPX6JkqzRNjJg==",
+ "dev": true,
+ "dependencies": {
+ "@volar/source-map": "0.39.5"
+ }
+ },
+ "node_modules/@volar/source-map": {
+ "version": "0.39.5",
+ "resolved": "https://registry.npmjs.org/@volar/source-map/-/source-map-0.39.5.tgz",
+ "integrity": "sha512-IVOX+v++Sr5Kok4/cLbDJp2vf1ia1rChpV7adgcnMle6uORBuGFEur234UzamK0iHRCcfFFRz7z+hSPf2CO23Q==",
+ "dev": true
+ },
+ "node_modules/@volar/typescript-faster": {
+ "version": "0.39.5",
+ "resolved": "https://registry.npmjs.org/@volar/typescript-faster/-/typescript-faster-0.39.5.tgz",
+ "integrity": "sha512-IzLqlxefmKkjNKXC/8aFiqPcTqnj6RG31D2f9cIWxmW9pvUYJxLED+y9phnOxNxq0OmeRtQ3Pfmvu85tUBoZsQ==",
+ "dev": true,
+ "dependencies": {
+ "semver": "^7.3.7"
+ }
+ },
+ "node_modules/@volar/vue-code-gen": {
+ "version": "0.39.5",
+ "resolved": "https://registry.npmjs.org/@volar/vue-code-gen/-/vue-code-gen-0.39.5.tgz",
+ "integrity": "sha512-y+QUV9MuuasiIuRoGKQl+gMhDaAX6XNhckAyJCvD1FZ8f2eJuPY2VtoFxmu/Z2bGWBdtUW/g98jaeKJ+j3wwOw==",
+ "dev": true,
+ "dependencies": {
+ "@volar/code-gen": "0.39.5",
+ "@volar/source-map": "0.39.5",
+ "@vue/compiler-core": "^3.2.37",
+ "@vue/compiler-dom": "^3.2.37",
+ "@vue/shared": "^3.2.37"
+ }
+ },
+ "node_modules/@volar/vue-language-core": {
+ "version": "0.39.5",
+ "resolved": "https://registry.npmjs.org/@volar/vue-language-core/-/vue-language-core-0.39.5.tgz",
+ "integrity": "sha512-m+e1tYuL/WRPhSeC7hZ0NuSwHsfnnGJVxCBHLaP7jR0f6xcC0DAegP3QF+gfu9ZJFPGznpZYFKadngMjuhQS9Q==",
+ "dev": true,
+ "dependencies": {
+ "@volar/code-gen": "0.39.5",
+ "@volar/source-map": "0.39.5",
+ "@volar/vue-code-gen": "0.39.5",
+ "@vue/compiler-sfc": "^3.2.37",
+ "@vue/reactivity": "^3.2.37"
+ }
+ },
+ "node_modules/@volar/vue-typescript": {
+ "version": "0.39.5",
+ "resolved": "https://registry.npmjs.org/@volar/vue-typescript/-/vue-typescript-0.39.5.tgz",
+ "integrity": "sha512-ckhWD1xOi0OMr702XVkv/Npsb9FKAp5gvhxyLv0QqWekPdSo04t4KrZfwosJLGERIEcyr50SuB7HqBp8ndQmzA==",
+ "dev": true,
+ "dependencies": {
+ "@volar/code-gen": "0.39.5",
+ "@volar/typescript-faster": "0.39.5",
+ "@volar/vue-language-core": "0.39.5"
+ }
+ },
+ "node_modules/@vue/compiler-core": {
+ "version": "3.2.37",
+ "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.37.tgz",
+ "integrity": "sha512-81KhEjo7YAOh0vQJoSmAD68wLfYqJvoiD4ulyedzF+OEk/bk6/hx3fTNVfuzugIIaTrOx4PGx6pAiBRe5e9Zmg==",
+ "dependencies": {
+ "@babel/parser": "^7.16.4",
+ "@vue/shared": "3.2.37",
+ "estree-walker": "^2.0.2",
+ "source-map": "^0.6.1"
+ }
+ },
+ "node_modules/@vue/compiler-dom": {
+ "version": "3.2.37",
+ "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.37.tgz",
+ "integrity": "sha512-yxJLH167fucHKxaqXpYk7x8z7mMEnXOw3G2q62FTkmsvNxu4FQSu5+3UMb+L7fjKa26DEzhrmCxAgFLLIzVfqQ==",
+ "dependencies": {
+ "@vue/compiler-core": "3.2.37",
+ "@vue/shared": "3.2.37"
+ }
+ },
+ "node_modules/@vue/compiler-sfc": {
+ "version": "3.2.37",
+ "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.37.tgz",
+ "integrity": "sha512-+7i/2+9LYlpqDv+KTtWhOZH+pa8/HnX/905MdVmAcI/mPQOBwkHHIzrsEsucyOIZQYMkXUiTkmZq5am/NyXKkg==",
+ "dependencies": {
+ "@babel/parser": "^7.16.4",
+ "@vue/compiler-core": "3.2.37",
+ "@vue/compiler-dom": "3.2.37",
+ "@vue/compiler-ssr": "3.2.37",
+ "@vue/reactivity-transform": "3.2.37",
+ "@vue/shared": "3.2.37",
+ "estree-walker": "^2.0.2",
+ "magic-string": "^0.25.7",
+ "postcss": "^8.1.10",
+ "source-map": "^0.6.1"
+ }
+ },
+ "node_modules/@vue/compiler-ssr": {
+ "version": "3.2.37",
+ "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.37.tgz",
+ "integrity": "sha512-7mQJD7HdXxQjktmsWp/J67lThEIcxLemz1Vb5I6rYJHR5vI+lON3nPGOH3ubmbvYGt8xEUaAr1j7/tIFWiEOqw==",
+ "dependencies": {
+ "@vue/compiler-dom": "3.2.37",
+ "@vue/shared": "3.2.37"
+ }
+ },
+ "node_modules/@vue/devtools-api": {
+ "version": "6.2.1",
+ "resolved": "https://registry.npmjs.org/@vue/devtools-api/-/devtools-api-6.2.1.tgz",
+ "integrity": "sha512-OEgAMeQXvCoJ+1x8WyQuVZzFo0wcyCmUR3baRVLmKBo1LmYZWMlRiXlux5jd0fqVJu6PfDbOrZItVqUEzLobeQ=="
+ },
+ "node_modules/@vue/eslint-config-typescript": {
+ "version": "11.0.0",
+ "resolved": "https://registry.npmjs.org/@vue/eslint-config-typescript/-/eslint-config-typescript-11.0.0.tgz",
+ "integrity": "sha512-txuRzxnQVmtUvvy9UyWUy9sHWXNeRPGmSPqP53hRtaiUeCTAondI9Ho9GQYI/8/eWljYOST7iA4Aa8sANBkWaA==",
+ "dev": true,
+ "dependencies": {
+ "@typescript-eslint/eslint-plugin": "^5.0.0",
+ "@typescript-eslint/parser": "^5.0.0",
+ "vue-eslint-parser": "^9.0.0"
+ },
+ "engines": {
+ "node": "^14.17.0 || >=16.0.0"
+ },
+ "peerDependencies": {
+ "eslint": "^6.2.0 || ^7.0.0 || ^8.0.0",
+ "eslint-plugin-vue": "^9.0.0",
+ "typescript": "*"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@vue/reactivity": {
+ "version": "3.2.37",
+ "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.2.37.tgz",
+ "integrity": "sha512-/7WRafBOshOc6m3F7plwzPeCu/RCVv9uMpOwa/5PiY1Zz+WLVRWiy0MYKwmg19KBdGtFWsmZ4cD+LOdVPcs52A==",
+ "dependencies": {
+ "@vue/shared": "3.2.37"
+ }
+ },
+ "node_modules/@vue/reactivity-transform": {
+ "version": "3.2.37",
+ "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.2.37.tgz",
+ "integrity": "sha512-IWopkKEb+8qpu/1eMKVeXrK0NLw9HicGviJzhJDEyfxTR9e1WtpnnbYkJWurX6WwoFP0sz10xQg8yL8lgskAZg==",
+ "dependencies": {
+ "@babel/parser": "^7.16.4",
+ "@vue/compiler-core": "3.2.37",
+ "@vue/shared": "3.2.37",
+ "estree-walker": "^2.0.2",
+ "magic-string": "^0.25.7"
+ }
+ },
+ "node_modules/@vue/runtime-core": {
+ "version": "3.2.37",
+ "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.2.37.tgz",
+ "integrity": "sha512-JPcd9kFyEdXLl/i0ClS7lwgcs0QpUAWj+SKX2ZC3ANKi1U4DOtiEr6cRqFXsPwY5u1L9fAjkinIdB8Rz3FoYNQ==",
+ "dependencies": {
+ "@vue/reactivity": "3.2.37",
+ "@vue/shared": "3.2.37"
+ }
+ },
+ "node_modules/@vue/runtime-dom": {
+ "version": "3.2.37",
+ "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.2.37.tgz",
+ "integrity": "sha512-HimKdh9BepShW6YozwRKAYjYQWg9mQn63RGEiSswMbW+ssIht1MILYlVGkAGGQbkhSh31PCdoUcfiu4apXJoPw==",
+ "dependencies": {
+ "@vue/runtime-core": "3.2.37",
+ "@vue/shared": "3.2.37",
+ "csstype": "^2.6.8"
+ }
+ },
+ "node_modules/@vue/server-renderer": {
+ "version": "3.2.37",
+ "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.2.37.tgz",
+ "integrity": "sha512-kLITEJvaYgZQ2h47hIzPh2K3jG8c1zCVbp/o/bzQOyvzaKiCquKS7AaioPI28GNxIsE/zSx+EwWYsNxDCX95MA==",
+ "dependencies": {
+ "@vue/compiler-ssr": "3.2.37",
+ "@vue/shared": "3.2.37"
+ },
+ "peerDependencies": {
+ "vue": "3.2.37"
+ }
+ },
+ "node_modules/@vue/shared": {
+ "version": "3.2.37",
+ "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.37.tgz",
+ "integrity": "sha512-4rSJemR2NQIo9Klm1vabqWjD8rs/ZaJSzMxkMNeJS6lHiUjjUeYFbooN19NgFjztubEKh3WlZUeOLVdbbUWHsw=="
+ },
+ "node_modules/acorn": {
+ "version": "7.4.1",
+ "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz",
+ "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==",
+ "dev": true,
+ "bin": {
+ "acorn": "bin/acorn"
+ },
+ "engines": {
+ "node": ">=0.4.0"
+ }
+ },
+ "node_modules/acorn-jsx": {
+ "version": "5.3.2",
+ "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz",
+ "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==",
+ "dev": true,
+ "peerDependencies": {
+ "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0"
+ }
+ },
+ "node_modules/acorn-node": {
+ "version": "1.8.2",
+ "resolved": "https://registry.npmjs.org/acorn-node/-/acorn-node-1.8.2.tgz",
+ "integrity": "sha512-8mt+fslDufLYntIoPAaIMUe/lrbrehIiwmR3t2k9LljIzoigEPF27eLk2hy8zSGzmR/ogr7zbRKINMo1u0yh5A==",
+ "dev": true,
+ "dependencies": {
+ "acorn": "^7.0.0",
+ "acorn-walk": "^7.0.0",
+ "xtend": "^4.0.2"
+ }
+ },
+ "node_modules/acorn-walk": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz",
+ "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.4.0"
+ }
+ },
+ "node_modules/ajv": {
+ "version": "6.12.6",
+ "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz",
+ "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==",
+ "dev": true,
+ "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"
+ },
+ "funding": {
+ "type": "github",
+ "url": "https://github.com/sponsors/epoberezkin"
+ }
+ },
+ "node_modules/ansi-regex": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
+ "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
+ "dependencies": {
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/anymatch": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz",
+ "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==",
+ "dev": true,
+ "dependencies": {
+ "normalize-path": "^3.0.0",
+ "picomatch": "^2.0.4"
+ },
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/arg": {
+ "version": "5.0.2",
+ "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz",
+ "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==",
+ "dev": true
+ },
+ "node_modules/argparse": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
+ "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==",
+ "dev": true
+ },
+ "node_modules/array-union": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz",
+ "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/asynckit": {
+ "version": "0.4.0",
+ "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
+ "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q=="
+ },
+ "node_modules/autoprefixer": {
+ "version": "10.4.8",
+ "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.8.tgz",
+ "integrity": "sha512-75Jr6Q/XpTqEf6D2ltS5uMewJIx5irCU1oBYJrWjFenq/m12WRRrz6g15L1EIoYvPLXTbEry7rDOwrcYNj77xw==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "opencollective",
+ "url": "https://opencollective.com/postcss/"
+ },
+ {
+ "type": "tidelift",
+ "url": "https://tidelift.com/funding/github/npm/autoprefixer"
+ }
+ ],
+ "dependencies": {
+ "browserslist": "^4.21.3",
+ "caniuse-lite": "^1.0.30001373",
+ "fraction.js": "^4.2.0",
+ "normalize-range": "^0.1.2",
+ "picocolors": "^1.0.0",
+ "postcss-value-parser": "^4.2.0"
+ },
+ "bin": {
+ "autoprefixer": "bin/autoprefixer"
+ },
+ "engines": {
+ "node": "^10 || ^12 || >=14"
+ },
+ "peerDependencies": {
+ "postcss": "^8.1.0"
+ }
+ },
+ "node_modules/axios": {
+ "version": "0.27.2",
+ "resolved": "https://registry.npmjs.org/axios/-/axios-0.27.2.tgz",
+ "integrity": "sha512-t+yRIyySRTp/wua5xEr+z1q60QmLq8ABsS5O9Me1AsE5dfKqgnCFzwiCZZ/cGNd1lq4/7akDWMxdhVlucjmnOQ==",
+ "dependencies": {
+ "follow-redirects": "^1.14.9",
+ "form-data": "^4.0.0"
+ }
+ },
+ "node_modules/balanced-match": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
+ "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==",
+ "dev": true
+ },
+ "node_modules/binary-extensions": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz",
+ "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/boolbase": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz",
+ "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==",
+ "dev": true
+ },
+ "node_modules/brace-expansion": {
+ "version": "1.1.11",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
+ "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
+ "dev": true,
+ "dependencies": {
+ "balanced-match": "^1.0.0",
+ "concat-map": "0.0.1"
+ }
+ },
+ "node_modules/braces": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
+ "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
+ "dev": true,
+ "dependencies": {
+ "fill-range": "^7.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/browserslist": {
+ "version": "4.21.3",
+ "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.3.tgz",
+ "integrity": "sha512-898rgRXLAyRkM1GryrrBHGkqA5hlpkV5MhtZwg9QXeiyLUYs2k00Un05aX5l2/yJIOObYKOpS2JNo8nJDE7fWQ==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "opencollective",
+ "url": "https://opencollective.com/browserslist"
+ },
+ {
+ "type": "tidelift",
+ "url": "https://tidelift.com/funding/github/npm/browserslist"
+ }
+ ],
+ "dependencies": {
+ "caniuse-lite": "^1.0.30001370",
+ "electron-to-chromium": "^1.4.202",
+ "node-releases": "^2.0.6",
+ "update-browserslist-db": "^1.0.5"
+ },
+ "bin": {
+ "browserslist": "cli.js"
+ },
+ "engines": {
+ "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7"
+ }
+ },
+ "node_modules/callsites": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
+ "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/camelcase-css": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz",
+ "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==",
+ "dev": true,
+ "engines": {
+ "node": ">= 6"
+ }
+ },
+ "node_modules/caniuse-lite": {
+ "version": "1.0.30001375",
+ "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001375.tgz",
+ "integrity": "sha512-kWIMkNzLYxSvnjy0hL8w1NOaWNr2rn39RTAVyIwcw8juu60bZDWiF1/loOYANzjtJmy6qPgNmn38ro5Pygagdw==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "opencollective",
+ "url": "https://opencollective.com/browserslist"
+ },
+ {
+ "type": "tidelift",
+ "url": "https://tidelift.com/funding/github/npm/caniuse-lite"
+ }
+ ]
+ },
+ "node_modules/chalk": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
+ "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
+ "dev": true,
+ "dependencies": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/chalk?sponsor=1"
+ }
+ },
+ "node_modules/chokidar": {
+ "version": "3.5.3",
+ "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz",
+ "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "individual",
+ "url": "https://paulmillr.com/funding/"
+ }
+ ],
+ "dependencies": {
+ "anymatch": "~3.1.2",
+ "braces": "~3.0.2",
+ "glob-parent": "~5.1.2",
+ "is-binary-path": "~2.1.0",
+ "is-glob": "~4.0.1",
+ "normalize-path": "~3.0.0",
+ "readdirp": "~3.6.0"
+ },
+ "engines": {
+ "node": ">= 8.10.0"
+ },
+ "optionalDependencies": {
+ "fsevents": "~2.3.2"
+ }
+ },
+ "node_modules/chokidar/node_modules/glob-parent": {
+ "version": "5.1.2",
+ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
+ "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
+ "dev": true,
+ "dependencies": {
+ "is-glob": "^4.0.1"
+ },
+ "engines": {
+ "node": ">= 6"
+ }
+ },
+ "node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "node_modules/combined-stream": {
+ "version": "1.0.8",
+ "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz",
+ "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==",
+ "dependencies": {
+ "delayed-stream": "~1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
+ "node_modules/concat-map": {
+ "version": "0.0.1",
+ "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
+ "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==",
+ "dev": true
+ },
+ "node_modules/cross-spawn": {
+ "version": "7.0.3",
+ "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
+ "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==",
+ "dev": true,
+ "dependencies": {
+ "path-key": "^3.1.0",
+ "shebang-command": "^2.0.0",
+ "which": "^2.0.1"
+ },
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/cssesc": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz",
+ "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==",
+ "dev": true,
+ "bin": {
+ "cssesc": "bin/cssesc"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/csstype": {
+ "version": "2.6.20",
+ "resolved": "https://registry.npmjs.org/csstype/-/csstype-2.6.20.tgz",
+ "integrity": "sha512-/WwNkdXfckNgw6S5R125rrW8ez139lBHWouiBvX8dfMFtcn6V81REDqnH7+CRpRipfYlyU1CmOnOxrmGcFOjeA=="
+ },
+ "node_modules/dayjs": {
+ "version": "1.11.5",
+ "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.5.tgz",
+ "integrity": "sha512-CAdX5Q3YW3Gclyo5Vpqkgpj8fSdLQcRuzfX6mC6Phy0nfJ0eGYOeS7m4mt2plDWLAtA4TqTakvbboHvUxfe4iA=="
+ },
+ "node_modules/debug": {
+ "version": "4.3.4",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
+ "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
+ "dev": true,
+ "dependencies": {
+ "ms": "2.1.2"
+ },
+ "engines": {
+ "node": ">=6.0"
+ },
+ "peerDependenciesMeta": {
+ "supports-color": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/deep-is": {
+ "version": "0.1.4",
+ "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz",
+ "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==",
+ "dev": true
+ },
+ "node_modules/defined": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.0.tgz",
+ "integrity": "sha512-Y2caI5+ZwS5c3RiNDJ6u53VhQHv+hHKwhkI1iHvceKUHw9Df6EK2zRLfjejRgMuCuxK7PfSWIMwWecceVvThjQ==",
+ "dev": true
+ },
+ "node_modules/delayed-stream": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
+ "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==",
+ "engines": {
+ "node": ">=0.4.0"
+ }
+ },
+ "node_modules/detective": {
+ "version": "5.2.1",
+ "resolved": "https://registry.npmjs.org/detective/-/detective-5.2.1.tgz",
+ "integrity": "sha512-v9XE1zRnz1wRtgurGu0Bs8uHKFSTdteYZNbIPFVhUZ39L/S79ppMpdmVOZAnoz1jfEFodc48n6MX483Xo3t1yw==",
+ "dev": true,
+ "dependencies": {
+ "acorn-node": "^1.8.2",
+ "defined": "^1.0.0",
+ "minimist": "^1.2.6"
+ },
+ "bin": {
+ "detective": "bin/detective.js"
+ },
+ "engines": {
+ "node": ">=0.8.0"
+ }
+ },
+ "node_modules/didyoumean": {
+ "version": "1.2.2",
+ "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz",
+ "integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==",
+ "dev": true
+ },
+ "node_modules/dir-glob": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz",
+ "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==",
+ "dev": true,
+ "dependencies": {
+ "path-type": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/dlv": {
+ "version": "1.1.3",
+ "resolved": "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz",
+ "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==",
+ "dev": true
+ },
+ "node_modules/doctrine": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz",
+ "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==",
+ "dev": true,
+ "dependencies": {
+ "esutils": "^2.0.2"
+ },
+ "engines": {
+ "node": ">=6.0.0"
+ }
+ },
+ "node_modules/electron-to-chromium": {
+ "version": "1.4.217",
+ "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.217.tgz",
+ "integrity": "sha512-iX8GbAMij7cOtJPZo02CClpaPMWjvN5meqXiJXkBgwvraNWTNH0Z7F9tkznI34JRPtWASoPM/xWamq3oNb49GA==",
+ "dev": true
+ },
+ "node_modules/esbuild": {
+ "version": "0.14.54",
+ "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.14.54.tgz",
+ "integrity": "sha512-Cy9llcy8DvET5uznocPyqL3BFRrFXSVqbgpMJ9Wz8oVjZlh/zUSNbPRbov0VX7VxN2JH1Oa0uNxZ7eLRb62pJA==",
+ "dev": true,
+ "hasInstallScript": true,
+ "bin": {
+ "esbuild": "bin/esbuild"
+ },
+ "engines": {
+ "node": ">=12"
+ },
+ "optionalDependencies": {
+ "@esbuild/linux-loong64": "0.14.54",
+ "esbuild-android-64": "0.14.54",
+ "esbuild-android-arm64": "0.14.54",
+ "esbuild-darwin-64": "0.14.54",
+ "esbuild-darwin-arm64": "0.14.54",
+ "esbuild-freebsd-64": "0.14.54",
+ "esbuild-freebsd-arm64": "0.14.54",
+ "esbuild-linux-32": "0.14.54",
+ "esbuild-linux-64": "0.14.54",
+ "esbuild-linux-arm": "0.14.54",
+ "esbuild-linux-arm64": "0.14.54",
+ "esbuild-linux-mips64le": "0.14.54",
+ "esbuild-linux-ppc64le": "0.14.54",
+ "esbuild-linux-riscv64": "0.14.54",
+ "esbuild-linux-s390x": "0.14.54",
+ "esbuild-netbsd-64": "0.14.54",
+ "esbuild-openbsd-64": "0.14.54",
+ "esbuild-sunos-64": "0.14.54",
+ "esbuild-windows-32": "0.14.54",
+ "esbuild-windows-64": "0.14.54",
+ "esbuild-windows-arm64": "0.14.54"
+ }
+ },
+ "node_modules/esbuild-android-64": {
+ "version": "0.14.54",
+ "resolved": "https://registry.npmjs.org/esbuild-android-64/-/esbuild-android-64-0.14.54.tgz",
+ "integrity": "sha512-Tz2++Aqqz0rJ7kYBfz+iqyE3QMycD4vk7LBRyWaAVFgFtQ/O8EJOnVmTOiDWYZ/uYzB4kvP+bqejYdVKzE5lAQ==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "android"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/esbuild-android-arm64": {
+ "version": "0.14.54",
+ "resolved": "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.14.54.tgz",
+ "integrity": "sha512-F9E+/QDi9sSkLaClO8SOV6etqPd+5DgJje1F9lOWoNncDdOBL2YF59IhsWATSt0TLZbYCf3pNlTHvVV5VfHdvg==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "android"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/esbuild-darwin-64": {
+ "version": "0.14.54",
+ "resolved": "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.14.54.tgz",
+ "integrity": "sha512-jtdKWV3nBviOd5v4hOpkVmpxsBy90CGzebpbO9beiqUYVMBtSc0AL9zGftFuBon7PNDcdvNCEuQqw2x0wP9yug==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/esbuild-darwin-arm64": {
+ "version": "0.14.54",
+ "resolved": "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.14.54.tgz",
+ "integrity": "sha512-OPafJHD2oUPyvJMrsCvDGkRrVCar5aVyHfWGQzY1dWnzErjrDuSETxwA2HSsyg2jORLY8yBfzc1MIpUkXlctmw==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/esbuild-freebsd-64": {
+ "version": "0.14.54",
+ "resolved": "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.14.54.tgz",
+ "integrity": "sha512-OKwd4gmwHqOTp4mOGZKe/XUlbDJ4Q9TjX0hMPIDBUWWu/kwhBAudJdBoxnjNf9ocIB6GN6CPowYpR/hRCbSYAg==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "freebsd"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/esbuild-freebsd-arm64": {
+ "version": "0.14.54",
+ "resolved": "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.14.54.tgz",
+ "integrity": "sha512-sFwueGr7OvIFiQT6WeG0jRLjkjdqWWSrfbVwZp8iMP+8UHEHRBvlaxL6IuKNDwAozNUmbb8nIMXa7oAOARGs1Q==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "freebsd"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/esbuild-linux-32": {
+ "version": "0.14.54",
+ "resolved": "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.14.54.tgz",
+ "integrity": "sha512-1ZuY+JDI//WmklKlBgJnglpUL1owm2OX+8E1syCD6UAxcMM/XoWd76OHSjl/0MR0LisSAXDqgjT3uJqT67O3qw==",
+ "cpu": [
+ "ia32"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/esbuild-linux-64": {
+ "version": "0.14.54",
+ "resolved": "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.14.54.tgz",
+ "integrity": "sha512-EgjAgH5HwTbtNsTqQOXWApBaPVdDn7XcK+/PtJwZLT1UmpLoznPd8c5CxqsH2dQK3j05YsB3L17T8vE7cp4cCg==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/esbuild-linux-arm": {
+ "version": "0.14.54",
+ "resolved": "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.14.54.tgz",
+ "integrity": "sha512-qqz/SjemQhVMTnvcLGoLOdFpCYbz4v4fUo+TfsWG+1aOu70/80RV6bgNpR2JCrppV2moUQkww+6bWxXRL9YMGw==",
+ "cpu": [
+ "arm"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/esbuild-linux-arm64": {
+ "version": "0.14.54",
+ "resolved": "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.14.54.tgz",
+ "integrity": "sha512-WL71L+0Rwv+Gv/HTmxTEmpv0UgmxYa5ftZILVi2QmZBgX3q7+tDeOQNqGtdXSdsL8TQi1vIaVFHUPDe0O0kdig==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/esbuild-linux-mips64le": {
+ "version": "0.14.54",
+ "resolved": "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.14.54.tgz",
+ "integrity": "sha512-qTHGQB8D1etd0u1+sB6p0ikLKRVuCWhYQhAHRPkO+OF3I/iSlTKNNS0Lh2Oc0g0UFGguaFZZiPJdJey3AGpAlw==",
+ "cpu": [
+ "mips64el"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/esbuild-linux-ppc64le": {
+ "version": "0.14.54",
+ "resolved": "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.14.54.tgz",
+ "integrity": "sha512-j3OMlzHiqwZBDPRCDFKcx595XVfOfOnv68Ax3U4UKZ3MTYQB5Yz3X1mn5GnodEVYzhtZgxEBidLWeIs8FDSfrQ==",
+ "cpu": [
+ "ppc64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/esbuild-linux-riscv64": {
+ "version": "0.14.54",
+ "resolved": "https://registry.npmjs.org/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.14.54.tgz",
+ "integrity": "sha512-y7Vt7Wl9dkOGZjxQZnDAqqn+XOqFD7IMWiewY5SPlNlzMX39ocPQlOaoxvT4FllA5viyV26/QzHtvTjVNOxHZg==",
+ "cpu": [
+ "riscv64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/esbuild-linux-s390x": {
+ "version": "0.14.54",
+ "resolved": "https://registry.npmjs.org/esbuild-linux-s390x/-/esbuild-linux-s390x-0.14.54.tgz",
+ "integrity": "sha512-zaHpW9dziAsi7lRcyV4r8dhfG1qBidQWUXweUjnw+lliChJqQr+6XD71K41oEIC3Mx1KStovEmlzm+MkGZHnHA==",
+ "cpu": [
+ "s390x"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/esbuild-netbsd-64": {
+ "version": "0.14.54",
+ "resolved": "https://registry.npmjs.org/esbuild-netbsd-64/-/esbuild-netbsd-64-0.14.54.tgz",
+ "integrity": "sha512-PR01lmIMnfJTgeU9VJTDY9ZerDWVFIUzAtJuDHwwceppW7cQWjBBqP48NdeRtoP04/AtO9a7w3viI+PIDr6d+w==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "netbsd"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/esbuild-openbsd-64": {
+ "version": "0.14.54",
+ "resolved": "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.14.54.tgz",
+ "integrity": "sha512-Qyk7ikT2o7Wu76UsvvDS5q0amJvmRzDyVlL0qf5VLsLchjCa1+IAvd8kTBgUxD7VBUUVgItLkk609ZHUc1oCaw==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "openbsd"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/esbuild-sunos-64": {
+ "version": "0.14.54",
+ "resolved": "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.14.54.tgz",
+ "integrity": "sha512-28GZ24KmMSeKi5ueWzMcco6EBHStL3B6ubM7M51RmPwXQGLe0teBGJocmWhgwccA1GeFXqxzILIxXpHbl9Q/Kw==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "sunos"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/esbuild-windows-32": {
+ "version": "0.14.54",
+ "resolved": "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.14.54.tgz",
+ "integrity": "sha512-T+rdZW19ql9MjS7pixmZYVObd9G7kcaZo+sETqNH4RCkuuYSuv9AGHUVnPoP9hhuE1WM1ZimHz1CIBHBboLU7w==",
+ "cpu": [
+ "ia32"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "win32"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/esbuild-windows-64": {
+ "version": "0.14.54",
+ "resolved": "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.14.54.tgz",
+ "integrity": "sha512-AoHTRBUuYwXtZhjXZbA1pGfTo8cJo3vZIcWGLiUcTNgHpJJMC1rVA44ZereBHMJtotyN71S8Qw0npiCIkW96cQ==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "win32"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/esbuild-windows-arm64": {
+ "version": "0.14.54",
+ "resolved": "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.14.54.tgz",
+ "integrity": "sha512-M0kuUvXhot1zOISQGXwWn6YtS+Y/1RT9WrVIOywZnJHo3jCDyewAc79aKNQWFCQm+xNHVTq9h8dZKvygoXQQRg==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "win32"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/escalade": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz",
+ "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==",
+ "dev": true,
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/escape-string-regexp": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
+ "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==",
+ "dev": true,
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/eslint": {
+ "version": "8.21.0",
+ "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.21.0.tgz",
+ "integrity": "sha512-/XJ1+Qurf1T9G2M5IHrsjp+xrGT73RZf23xA1z5wB1ZzzEAWSZKvRwhWxTFp1rvkvCfwcvAUNAP31bhKTTGfDA==",
+ "dev": true,
+ "dependencies": {
+ "@eslint/eslintrc": "^1.3.0",
+ "@humanwhocodes/config-array": "^0.10.4",
+ "@humanwhocodes/gitignore-to-minimatch": "^1.0.2",
+ "ajv": "^6.10.0",
+ "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.1.1",
+ "eslint-utils": "^3.0.0",
+ "eslint-visitor-keys": "^3.3.0",
+ "espree": "^9.3.3",
+ "esquery": "^1.4.0",
+ "esutils": "^2.0.2",
+ "fast-deep-equal": "^3.1.3",
+ "file-entry-cache": "^6.0.1",
+ "find-up": "^5.0.0",
+ "functional-red-black-tree": "^1.0.1",
+ "glob-parent": "^6.0.1",
+ "globals": "^13.15.0",
+ "globby": "^11.1.0",
+ "grapheme-splitter": "^1.0.4",
+ "ignore": "^5.2.0",
+ "import-fresh": "^3.0.0",
+ "imurmurhash": "^0.1.4",
+ "is-glob": "^4.0.0",
+ "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.1",
+ "regexpp": "^3.2.0",
+ "strip-ansi": "^6.0.1",
+ "strip-json-comments": "^3.1.0",
+ "text-table": "^0.2.0",
+ "v8-compile-cache": "^2.0.3"
+ },
+ "bin": {
+ "eslint": "bin/eslint.js"
+ },
+ "engines": {
+ "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+ },
+ "funding": {
+ "url": "https://opencollective.com/eslint"
+ }
+ },
+ "node_modules/eslint-config-prettier": {
+ "version": "8.5.0",
+ "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.5.0.tgz",
+ "integrity": "sha512-obmWKLUNCnhtQRKc+tmnYuQl0pFU1ibYJQ5BGhTVB08bHe9wC8qUeG7c08dj9XX+AuPj1YSGSQIHl1pnDHZR0Q==",
+ "dev": true,
+ "bin": {
+ "eslint-config-prettier": "bin/cli.js"
+ },
+ "peerDependencies": {
+ "eslint": ">=7.0.0"
+ }
+ },
+ "node_modules/eslint-plugin-vue": {
+ "version": "9.3.0",
+ "resolved": "https://registry.npmjs.org/eslint-plugin-vue/-/eslint-plugin-vue-9.3.0.tgz",
+ "integrity": "sha512-iscKKkBZgm6fGZwFt6poRoWC0Wy2dQOlwUPW++CiPoQiw1enctV2Hj5DBzzjJZfyqs+FAXhgzL4q0Ww03AgSmQ==",
+ "dev": true,
+ "dependencies": {
+ "eslint-utils": "^3.0.0",
+ "natural-compare": "^1.4.0",
+ "nth-check": "^2.0.1",
+ "postcss-selector-parser": "^6.0.9",
+ "semver": "^7.3.5",
+ "vue-eslint-parser": "^9.0.1",
+ "xml-name-validator": "^4.0.0"
+ },
+ "engines": {
+ "node": "^14.17.0 || >=16.0.0"
+ },
+ "peerDependencies": {
+ "eslint": "^6.2.0 || ^7.0.0 || ^8.0.0"
+ }
+ },
+ "node_modules/eslint-scope": {
+ "version": "7.1.1",
+ "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz",
+ "integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==",
+ "dev": true,
+ "dependencies": {
+ "esrecurse": "^4.3.0",
+ "estraverse": "^5.2.0"
+ },
+ "engines": {
+ "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+ }
+ },
+ "node_modules/eslint-utils": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz",
+ "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==",
+ "dev": true,
+ "dependencies": {
+ "eslint-visitor-keys": "^2.0.0"
+ },
+ "engines": {
+ "node": "^10.0.0 || ^12.0.0 || >= 14.0.0"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/mysticatea"
+ },
+ "peerDependencies": {
+ "eslint": ">=5"
+ }
+ },
+ "node_modules/eslint-utils/node_modules/eslint-visitor-keys": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz",
+ "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==",
+ "dev": true,
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/eslint-visitor-keys": {
+ "version": "3.3.0",
+ "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz",
+ "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==",
+ "dev": true,
+ "engines": {
+ "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+ }
+ },
+ "node_modules/espree": {
+ "version": "9.3.3",
+ "resolved": "https://registry.npmjs.org/espree/-/espree-9.3.3.tgz",
+ "integrity": "sha512-ORs1Rt/uQTqUKjDdGCyrtYxbazf5umATSf/K4qxjmZHORR6HJk+2s/2Pqe+Kk49HHINC/xNIrGfgh8sZcll0ng==",
+ "dev": true,
+ "dependencies": {
+ "acorn": "^8.8.0",
+ "acorn-jsx": "^5.3.2",
+ "eslint-visitor-keys": "^3.3.0"
+ },
+ "engines": {
+ "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+ },
+ "funding": {
+ "url": "https://opencollective.com/eslint"
+ }
+ },
+ "node_modules/espree/node_modules/acorn": {
+ "version": "8.8.0",
+ "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.0.tgz",
+ "integrity": "sha512-QOxyigPVrpZ2GXT+PFyZTl6TtOFc5egxHIP9IlQ+RbupQuX4RkT/Bee4/kQuC02Xkzg84JcT7oLYtDIQxp+v7w==",
+ "dev": true,
+ "bin": {
+ "acorn": "bin/acorn"
+ },
+ "engines": {
+ "node": ">=0.4.0"
+ }
+ },
+ "node_modules/esquery": {
+ "version": "1.4.0",
+ "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz",
+ "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==",
+ "dev": true,
+ "dependencies": {
+ "estraverse": "^5.1.0"
+ },
+ "engines": {
+ "node": ">=0.10"
+ }
+ },
+ "node_modules/esrecurse": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz",
+ "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==",
+ "dev": true,
+ "dependencies": {
+ "estraverse": "^5.2.0"
+ },
+ "engines": {
+ "node": ">=4.0"
+ }
+ },
+ "node_modules/estraverse": {
+ "version": "5.3.0",
+ "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz",
+ "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==",
+ "dev": true,
+ "engines": {
+ "node": ">=4.0"
+ }
+ },
+ "node_modules/estree-walker": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz",
+ "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w=="
+ },
+ "node_modules/esutils": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz",
+ "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/fast-deep-equal": {
+ "version": "3.1.3",
+ "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
+ "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==",
+ "dev": true
+ },
+ "node_modules/fast-glob": {
+ "version": "3.2.11",
+ "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.11.tgz",
+ "integrity": "sha512-xrO3+1bxSo3ZVHAnqzyuewYT6aMFHRAd4Kcs92MAonjwQZLsK9d0SF1IyQ3k5PoirxTW0Oe/RqFgMQ6TcNE5Ew==",
+ "dev": true,
+ "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"
+ },
+ "engines": {
+ "node": ">=8.6.0"
+ }
+ },
+ "node_modules/fast-glob/node_modules/glob-parent": {
+ "version": "5.1.2",
+ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
+ "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
+ "dev": true,
+ "dependencies": {
+ "is-glob": "^4.0.1"
+ },
+ "engines": {
+ "node": ">= 6"
+ }
+ },
+ "node_modules/fast-json-stable-stringify": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz",
+ "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==",
+ "dev": true
+ },
+ "node_modules/fast-levenshtein": {
+ "version": "2.0.6",
+ "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz",
+ "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==",
+ "dev": true
+ },
+ "node_modules/fastq": {
+ "version": "1.13.0",
+ "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.13.0.tgz",
+ "integrity": "sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==",
+ "dev": true,
+ "dependencies": {
+ "reusify": "^1.0.4"
+ }
+ },
+ "node_modules/file-entry-cache": {
+ "version": "6.0.1",
+ "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz",
+ "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==",
+ "dev": true,
+ "dependencies": {
+ "flat-cache": "^3.0.4"
+ },
+ "engines": {
+ "node": "^10.12.0 || >=12.0.0"
+ }
+ },
+ "node_modules/fill-range": {
+ "version": "7.0.1",
+ "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
+ "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
+ "dev": true,
+ "dependencies": {
+ "to-regex-range": "^5.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/find-up": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz",
+ "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==",
+ "dev": true,
+ "dependencies": {
+ "locate-path": "^6.0.0",
+ "path-exists": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/flat-cache": {
+ "version": "3.0.4",
+ "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz",
+ "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==",
+ "dev": true,
+ "dependencies": {
+ "flatted": "^3.1.0",
+ "rimraf": "^3.0.2"
+ },
+ "engines": {
+ "node": "^10.12.0 || >=12.0.0"
+ }
+ },
+ "node_modules/flatted": {
+ "version": "3.2.6",
+ "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.6.tgz",
+ "integrity": "sha512-0sQoMh9s0BYsm+12Huy/rkKxVu4R1+r96YX5cG44rHV0pQ6iC3Q+mkoMFaGWObMFYQxCVT+ssG1ksneA2MI9KQ==",
+ "dev": true
+ },
+ "node_modules/follow-redirects": {
+ "version": "1.15.1",
+ "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.1.tgz",
+ "integrity": "sha512-yLAMQs+k0b2m7cVxpS1VKJVvoz7SS9Td1zss3XRwXj+ZDH00RJgnuLx7E44wx02kQLrdM3aOOy+FpzS7+8OizA==",
+ "funding": [
+ {
+ "type": "individual",
+ "url": "https://github.com/sponsors/RubenVerborgh"
+ }
+ ],
+ "engines": {
+ "node": ">=4.0"
+ },
+ "peerDependenciesMeta": {
+ "debug": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/form-data": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz",
+ "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==",
+ "dependencies": {
+ "asynckit": "^0.4.0",
+ "combined-stream": "^1.0.8",
+ "mime-types": "^2.1.12"
+ },
+ "engines": {
+ "node": ">= 6"
+ }
+ },
+ "node_modules/fraction.js": {
+ "version": "4.2.0",
+ "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz",
+ "integrity": "sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==",
+ "dev": true,
+ "engines": {
+ "node": "*"
+ },
+ "funding": {
+ "type": "patreon",
+ "url": "https://www.patreon.com/infusion"
+ }
+ },
+ "node_modules/fs.realpath": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
+ "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==",
+ "dev": true
+ },
+ "node_modules/fsevents": {
+ "version": "2.3.2",
+ "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz",
+ "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==",
+ "dev": true,
+ "hasInstallScript": true,
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": "^8.16.0 || ^10.6.0 || >=11.0.0"
+ }
+ },
+ "node_modules/function-bind": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
+ "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==",
+ "dev": true
+ },
+ "node_modules/functional-red-black-tree": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz",
+ "integrity": "sha512-dsKNQNdj6xA3T+QlADDA7mOSlX0qiMINjn0cgr+eGHGsbSHzTabcIogz2+p/iqP1Xs6EP/sS2SbqH+brGTbq0g==",
+ "dev": true
+ },
+ "node_modules/glob": {
+ "version": "7.2.3",
+ "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz",
+ "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==",
+ "dev": true,
+ "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"
+ },
+ "engines": {
+ "node": "*"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
+ }
+ },
+ "node_modules/glob-parent": {
+ "version": "6.0.2",
+ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz",
+ "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==",
+ "dev": true,
+ "dependencies": {
+ "is-glob": "^4.0.3"
+ },
+ "engines": {
+ "node": ">=10.13.0"
+ }
+ },
+ "node_modules/globals": {
+ "version": "13.17.0",
+ "resolved": "https://registry.npmjs.org/globals/-/globals-13.17.0.tgz",
+ "integrity": "sha512-1C+6nQRb1GwGMKm2dH/E7enFAMxGTmGI7/dEdhy/DNelv85w9B72t3uc5frtMNXIbzrarJJ/lTCjcaZwbLJmyw==",
+ "dev": true,
+ "dependencies": {
+ "type-fest": "^0.20.2"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/globby": {
+ "version": "11.1.0",
+ "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz",
+ "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==",
+ "dev": true,
+ "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"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/grapheme-splitter": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz",
+ "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==",
+ "dev": true
+ },
+ "node_modules/has": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
+ "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==",
+ "dev": true,
+ "dependencies": {
+ "function-bind": "^1.1.1"
+ },
+ "engines": {
+ "node": ">= 0.4.0"
+ }
+ },
+ "node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/ignore": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.0.tgz",
+ "integrity": "sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==",
+ "dev": true,
+ "engines": {
+ "node": ">= 4"
+ }
+ },
+ "node_modules/import-fresh": {
+ "version": "3.3.0",
+ "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz",
+ "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==",
+ "dev": true,
+ "dependencies": {
+ "parent-module": "^1.0.0",
+ "resolve-from": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=6"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/imurmurhash": {
+ "version": "0.1.4",
+ "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
+ "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.8.19"
+ }
+ },
+ "node_modules/inflight": {
+ "version": "1.0.6",
+ "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
+ "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==",
+ "dev": true,
+ "dependencies": {
+ "once": "^1.3.0",
+ "wrappy": "1"
+ }
+ },
+ "node_modules/inherits": {
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
+ "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
+ "dev": true
+ },
+ "node_modules/is-binary-path": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz",
+ "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==",
+ "dev": true,
+ "dependencies": {
+ "binary-extensions": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/is-core-module": {
+ "version": "2.10.0",
+ "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.10.0.tgz",
+ "integrity": "sha512-Erxj2n/LDAZ7H8WNJXd9tw38GYM3dv8rk8Zcs+jJuxYTW7sozH+SS8NtrSjVL1/vpLvWi1hxy96IzjJ3EHTJJg==",
+ "dev": true,
+ "dependencies": {
+ "has": "^1.0.3"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/is-extglob": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
+ "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/is-glob": {
+ "version": "4.0.3",
+ "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz",
+ "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==",
+ "dev": true,
+ "dependencies": {
+ "is-extglob": "^2.1.1"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/is-number": {
+ "version": "7.0.0",
+ "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
+ "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.12.0"
+ }
+ },
+ "node_modules/isexe": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
+ "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==",
+ "dev": true
+ },
+ "node_modules/js-yaml": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz",
+ "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==",
+ "dev": true,
+ "dependencies": {
+ "argparse": "^2.0.1"
+ },
+ "bin": {
+ "js-yaml": "bin/js-yaml.js"
+ }
+ },
+ "node_modules/json-schema-traverse": {
+ "version": "0.4.1",
+ "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
+ "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==",
+ "dev": true
+ },
+ "node_modules/json-stable-stringify-without-jsonify": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz",
+ "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==",
+ "dev": true
+ },
+ "node_modules/levn": {
+ "version": "0.4.1",
+ "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz",
+ "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==",
+ "dev": true,
+ "dependencies": {
+ "prelude-ls": "^1.2.1",
+ "type-check": "~0.4.0"
+ },
+ "engines": {
+ "node": ">= 0.8.0"
+ }
+ },
+ "node_modules/lilconfig": {
+ "version": "2.0.6",
+ "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.0.6.tgz",
+ "integrity": "sha512-9JROoBW7pobfsx+Sq2JsASvCo6Pfo6WWoUW79HuB1BCoBXD4PLWJPqDF6fNj67pqBYTbAHkE57M1kS/+L1neOg==",
+ "dev": true,
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/locate-path": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz",
+ "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==",
+ "dev": true,
+ "dependencies": {
+ "p-locate": "^5.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/lodash": {
+ "version": "4.17.21",
+ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz",
+ "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==",
+ "dev": true
+ },
+ "node_modules/lodash.castarray": {
+ "version": "4.4.0",
+ "resolved": "https://registry.npmjs.org/lodash.castarray/-/lodash.castarray-4.4.0.tgz",
+ "integrity": "sha512-aVx8ztPv7/2ULbArGJ2Y42bG1mEQ5mGjpdvrbJcJFU3TbYybe+QlLS4pst9zV52ymy2in1KpFPiZnAOATxD4+Q==",
+ "dev": true
+ },
+ "node_modules/lodash.isplainobject": {
+ "version": "4.0.6",
+ "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz",
+ "integrity": "sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==",
+ "dev": true
+ },
+ "node_modules/lodash.merge": {
+ "version": "4.6.2",
+ "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz",
+ "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==",
+ "dev": true
+ },
+ "node_modules/lru-cache": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
+ "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
+ "dev": true,
+ "dependencies": {
+ "yallist": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/magic-string": {
+ "version": "0.25.9",
+ "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.9.tgz",
+ "integrity": "sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==",
+ "dependencies": {
+ "sourcemap-codec": "^1.4.8"
+ }
+ },
+ "node_modules/merge2": {
+ "version": "1.4.1",
+ "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz",
+ "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==",
+ "dev": true,
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/micromatch": {
+ "version": "4.0.5",
+ "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz",
+ "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==",
+ "dev": true,
+ "dependencies": {
+ "braces": "^3.0.2",
+ "picomatch": "^2.3.1"
+ },
+ "engines": {
+ "node": ">=8.6"
+ }
+ },
+ "node_modules/mime-db": {
+ "version": "1.52.0",
+ "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz",
+ "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==",
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/mime-types": {
+ "version": "2.1.35",
+ "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz",
+ "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==",
+ "dependencies": {
+ "mime-db": "1.52.0"
+ },
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/mini-svg-data-uri": {
+ "version": "1.4.4",
+ "resolved": "https://registry.npmjs.org/mini-svg-data-uri/-/mini-svg-data-uri-1.4.4.tgz",
+ "integrity": "sha512-r9deDe9p5FJUPZAk3A59wGH7Ii9YrjjWw0jmw/liSbHl2CHiyXj6FcDXDu2K3TjVAXqiJdaw3xxwlZZr9E6nHg==",
+ "dev": true,
+ "bin": {
+ "mini-svg-data-uri": "cli.js"
+ }
+ },
+ "node_modules/minimatch": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
+ "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
+ "dev": true,
+ "dependencies": {
+ "brace-expansion": "^1.1.7"
+ },
+ "engines": {
+ "node": "*"
+ }
+ },
+ "node_modules/minimist": {
+ "version": "1.2.6",
+ "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz",
+ "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==",
+ "dev": true
+ },
+ "node_modules/ms": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
+ "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
+ "dev": true
+ },
+ "node_modules/nanoid": {
+ "version": "3.3.4",
+ "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz",
+ "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==",
+ "bin": {
+ "nanoid": "bin/nanoid.cjs"
+ },
+ "engines": {
+ "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1"
+ }
+ },
+ "node_modules/natural-compare": {
+ "version": "1.4.0",
+ "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz",
+ "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==",
+ "dev": true
+ },
+ "node_modules/node-releases": {
+ "version": "2.0.6",
+ "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.6.tgz",
+ "integrity": "sha512-PiVXnNuFm5+iYkLBNeq5211hvO38y63T0i2KKh2KnUs3RpzJ+JtODFjkD8yjLwnDkTYF1eKXheUwdssR+NRZdg==",
+ "dev": true
+ },
+ "node_modules/normalize-path": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz",
+ "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/normalize-range": {
+ "version": "0.1.2",
+ "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz",
+ "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/nth-check": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz",
+ "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==",
+ "dev": true,
+ "dependencies": {
+ "boolbase": "^1.0.0"
+ },
+ "funding": {
+ "url": "https://github.com/fb55/nth-check?sponsor=1"
+ }
+ },
+ "node_modules/object-hash": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-3.0.0.tgz",
+ "integrity": "sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==",
+ "dev": true,
+ "engines": {
+ "node": ">= 6"
+ }
+ },
+ "node_modules/once": {
+ "version": "1.4.0",
+ "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
+ "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==",
+ "dev": true,
+ "dependencies": {
+ "wrappy": "1"
+ }
+ },
+ "node_modules/optionator": {
+ "version": "0.9.1",
+ "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz",
+ "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==",
+ "dev": true,
+ "dependencies": {
+ "deep-is": "^0.1.3",
+ "fast-levenshtein": "^2.0.6",
+ "levn": "^0.4.1",
+ "prelude-ls": "^1.2.1",
+ "type-check": "^0.4.0",
+ "word-wrap": "^1.2.3"
+ },
+ "engines": {
+ "node": ">= 0.8.0"
+ }
+ },
+ "node_modules/p-limit": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz",
+ "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==",
+ "dev": true,
+ "dependencies": {
+ "yocto-queue": "^0.1.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/p-locate": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz",
+ "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==",
+ "dev": true,
+ "dependencies": {
+ "p-limit": "^3.0.2"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/parent-module": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
+ "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
+ "dev": true,
+ "dependencies": {
+ "callsites": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/path-exists": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
+ "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/path-is-absolute": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
+ "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/path-key": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
+ "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/path-parse": {
+ "version": "1.0.7",
+ "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz",
+ "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==",
+ "dev": true
+ },
+ "node_modules/path-type": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz",
+ "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/picocolors": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz",
+ "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ=="
+ },
+ "node_modules/picomatch": {
+ "version": "2.3.1",
+ "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz",
+ "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==",
+ "dev": true,
+ "engines": {
+ "node": ">=8.6"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/jonschlinkert"
+ }
+ },
+ "node_modules/pify": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
+ "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/postcss": {
+ "version": "8.4.16",
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.16.tgz",
+ "integrity": "sha512-ipHE1XBvKzm5xI7hiHCZJCSugxvsdq2mPnsq5+UF+VHCjiBvtDrlxJfMBToWaP9D5XlgNmcFGqoHmUn0EYEaRQ==",
+ "funding": [
+ {
+ "type": "opencollective",
+ "url": "https://opencollective.com/postcss/"
+ },
+ {
+ "type": "tidelift",
+ "url": "https://tidelift.com/funding/github/npm/postcss"
+ }
+ ],
+ "dependencies": {
+ "nanoid": "^3.3.4",
+ "picocolors": "^1.0.0",
+ "source-map-js": "^1.0.2"
+ },
+ "engines": {
+ "node": "^10 || ^12 || >=14"
+ }
+ },
+ "node_modules/postcss-import": {
+ "version": "14.1.0",
+ "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-14.1.0.tgz",
+ "integrity": "sha512-flwI+Vgm4SElObFVPpTIT7SU7R3qk2L7PyduMcokiaVKuWv9d/U+Gm/QAd8NDLuykTWTkcrjOeD2Pp1rMeBTGw==",
+ "dev": true,
+ "dependencies": {
+ "postcss-value-parser": "^4.0.0",
+ "read-cache": "^1.0.0",
+ "resolve": "^1.1.7"
+ },
+ "engines": {
+ "node": ">=10.0.0"
+ },
+ "peerDependencies": {
+ "postcss": "^8.0.0"
+ }
+ },
+ "node_modules/postcss-js": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/postcss-js/-/postcss-js-4.0.0.tgz",
+ "integrity": "sha512-77QESFBwgX4irogGVPgQ5s07vLvFqWr228qZY+w6lW599cRlK/HmnlivnnVUxkjHnCu4J16PDMHcH+e+2HbvTQ==",
+ "dev": true,
+ "dependencies": {
+ "camelcase-css": "^2.0.1"
+ },
+ "engines": {
+ "node": "^12 || ^14 || >= 16"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/postcss/"
+ },
+ "peerDependencies": {
+ "postcss": "^8.3.3"
+ }
+ },
+ "node_modules/postcss-load-config": {
+ "version": "3.1.4",
+ "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-3.1.4.tgz",
+ "integrity": "sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==",
+ "dev": true,
+ "dependencies": {
+ "lilconfig": "^2.0.5",
+ "yaml": "^1.10.2"
+ },
+ "engines": {
+ "node": ">= 10"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/postcss/"
+ },
+ "peerDependencies": {
+ "postcss": ">=8.0.9",
+ "ts-node": ">=9.0.0"
+ },
+ "peerDependenciesMeta": {
+ "postcss": {
+ "optional": true
+ },
+ "ts-node": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/postcss-nested": {
+ "version": "5.0.6",
+ "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-5.0.6.tgz",
+ "integrity": "sha512-rKqm2Fk0KbA8Vt3AdGN0FB9OBOMDVajMG6ZCf/GoHgdxUJ4sBFp0A/uMIRm+MJUdo33YXEtjqIz8u7DAp8B7DA==",
+ "dev": true,
+ "dependencies": {
+ "postcss-selector-parser": "^6.0.6"
+ },
+ "engines": {
+ "node": ">=12.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/postcss/"
+ },
+ "peerDependencies": {
+ "postcss": "^8.2.14"
+ }
+ },
+ "node_modules/postcss-selector-parser": {
+ "version": "6.0.10",
+ "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.10.tgz",
+ "integrity": "sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w==",
+ "dev": true,
+ "dependencies": {
+ "cssesc": "^3.0.0",
+ "util-deprecate": "^1.0.2"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/postcss-value-parser": {
+ "version": "4.2.0",
+ "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz",
+ "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==",
+ "dev": true
+ },
+ "node_modules/prelude-ls": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz",
+ "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==",
+ "dev": true,
+ "engines": {
+ "node": ">= 0.8.0"
+ }
+ },
+ "node_modules/prettier": {
+ "version": "2.7.1",
+ "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.7.1.tgz",
+ "integrity": "sha512-ujppO+MkdPqoVINuDFDRLClm7D78qbDt0/NR+wp5FqEZOoTNAjPHWj17QRhu7geIHJfcNhRk1XVQmF8Bp3ye+g==",
+ "dev": true,
+ "bin": {
+ "prettier": "bin-prettier.js"
+ },
+ "engines": {
+ "node": ">=10.13.0"
+ },
+ "funding": {
+ "url": "https://github.com/prettier/prettier?sponsor=1"
+ }
+ },
+ "node_modules/punycode": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz",
+ "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==",
+ "dev": true,
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/queue-microtask": {
+ "version": "1.2.3",
+ "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz",
+ "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/feross"
+ },
+ {
+ "type": "patreon",
+ "url": "https://www.patreon.com/feross"
+ },
+ {
+ "type": "consulting",
+ "url": "https://feross.org/support"
+ }
+ ]
+ },
+ "node_modules/quick-lru": {
+ "version": "5.1.1",
+ "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz",
+ "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==",
+ "dev": true,
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/read-cache": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz",
+ "integrity": "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==",
+ "dev": true,
+ "dependencies": {
+ "pify": "^2.3.0"
+ }
+ },
+ "node_modules/readdirp": {
+ "version": "3.6.0",
+ "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz",
+ "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==",
+ "dev": true,
+ "dependencies": {
+ "picomatch": "^2.2.1"
+ },
+ "engines": {
+ "node": ">=8.10.0"
+ }
+ },
+ "node_modules/regexpp": {
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz",
+ "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/mysticatea"
+ }
+ },
+ "node_modules/resolve": {
+ "version": "1.22.1",
+ "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz",
+ "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==",
+ "dev": true,
+ "dependencies": {
+ "is-core-module": "^2.9.0",
+ "path-parse": "^1.0.7",
+ "supports-preserve-symlinks-flag": "^1.0.0"
+ },
+ "bin": {
+ "resolve": "bin/resolve"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/resolve-from": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
+ "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",
+ "dev": true,
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/reusify": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz",
+ "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==",
+ "dev": true,
+ "engines": {
+ "iojs": ">=1.0.0",
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/rimraf": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
+ "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
+ "dev": true,
+ "dependencies": {
+ "glob": "^7.1.3"
+ },
+ "bin": {
+ "rimraf": "bin.js"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
+ }
+ },
+ "node_modules/rollup": {
+ "version": "2.77.3",
+ "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.77.3.tgz",
+ "integrity": "sha512-/qxNTG7FbmefJWoeeYJFbHehJ2HNWnjkAFRKzWN/45eNBBF/r8lo992CwcJXEzyVxs5FmfId+vTSTQDb+bxA+g==",
+ "dev": true,
+ "bin": {
+ "rollup": "dist/bin/rollup"
+ },
+ "engines": {
+ "node": ">=10.0.0"
+ },
+ "optionalDependencies": {
+ "fsevents": "~2.3.2"
+ }
+ },
+ "node_modules/run-parallel": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz",
+ "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/feross"
+ },
+ {
+ "type": "patreon",
+ "url": "https://www.patreon.com/feross"
+ },
+ {
+ "type": "consulting",
+ "url": "https://feross.org/support"
+ }
+ ],
+ "dependencies": {
+ "queue-microtask": "^1.2.2"
+ }
+ },
+ "node_modules/semver": {
+ "version": "7.3.7",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz",
+ "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==",
+ "dev": true,
+ "dependencies": {
+ "lru-cache": "^6.0.0"
+ },
+ "bin": {
+ "semver": "bin/semver.js"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/shebang-command": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
+ "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==",
+ "dev": true,
+ "dependencies": {
+ "shebang-regex": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/shebang-regex": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz",
+ "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/slash": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz",
+ "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/source-map-js": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz",
+ "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/sourcemap-codec": {
+ "version": "1.4.8",
+ "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz",
+ "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA=="
+ },
+ "node_modules/strip-ansi": {
+ "version": "6.0.1",
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
+ "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
+ "dev": true,
+ "dependencies": {
+ "ansi-regex": "^5.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/strip-json-comments": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz",
+ "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/supports-preserve-symlinks-flag": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz",
+ "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==",
+ "dev": true,
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/tailwindcss": {
+ "version": "3.1.8",
+ "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.1.8.tgz",
+ "integrity": "sha512-YSneUCZSFDYMwk+TGq8qYFdCA3yfBRdBlS7txSq0LUmzyeqRe3a8fBQzbz9M3WS/iFT4BNf/nmw9mEzrnSaC0g==",
+ "dev": true,
+ "dependencies": {
+ "arg": "^5.0.2",
+ "chokidar": "^3.5.3",
+ "color-name": "^1.1.4",
+ "detective": "^5.2.1",
+ "didyoumean": "^1.2.2",
+ "dlv": "^1.1.3",
+ "fast-glob": "^3.2.11",
+ "glob-parent": "^6.0.2",
+ "is-glob": "^4.0.3",
+ "lilconfig": "^2.0.6",
+ "normalize-path": "^3.0.0",
+ "object-hash": "^3.0.0",
+ "picocolors": "^1.0.0",
+ "postcss": "^8.4.14",
+ "postcss-import": "^14.1.0",
+ "postcss-js": "^4.0.0",
+ "postcss-load-config": "^3.1.4",
+ "postcss-nested": "5.0.6",
+ "postcss-selector-parser": "^6.0.10",
+ "postcss-value-parser": "^4.2.0",
+ "quick-lru": "^5.1.1",
+ "resolve": "^1.22.1"
+ },
+ "bin": {
+ "tailwind": "lib/cli.js",
+ "tailwindcss": "lib/cli.js"
+ },
+ "engines": {
+ "node": ">=12.13.0"
+ },
+ "peerDependencies": {
+ "postcss": "^8.0.9"
+ }
+ },
+ "node_modules/text-table": {
+ "version": "0.2.0",
+ "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
+ "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==",
+ "dev": true
+ },
+ "node_modules/to-regex-range": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
+ "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
+ "dev": true,
+ "dependencies": {
+ "is-number": "^7.0.0"
+ },
+ "engines": {
+ "node": ">=8.0"
+ }
+ },
+ "node_modules/tslib": {
+ "version": "1.14.1",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
+ "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
+ "dev": true
+ },
+ "node_modules/tsutils": {
+ "version": "3.21.0",
+ "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz",
+ "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==",
+ "dev": true,
+ "dependencies": {
+ "tslib": "^1.8.1"
+ },
+ "engines": {
+ "node": ">= 6"
+ },
+ "peerDependencies": {
+ "typescript": ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta"
+ }
+ },
+ "node_modules/type-check": {
+ "version": "0.4.0",
+ "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz",
+ "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==",
+ "dev": true,
+ "dependencies": {
+ "prelude-ls": "^1.2.1"
+ },
+ "engines": {
+ "node": ">= 0.8.0"
+ }
+ },
+ "node_modules/type-fest": {
+ "version": "0.20.2",
+ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz",
+ "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/typescript": {
+ "version": "4.7.4",
+ "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.7.4.tgz",
+ "integrity": "sha512-C0WQT0gezHuw6AdY1M2jxUO83Rjf0HP7Sk1DtXj6j1EwkQNZrHAg2XPWlq62oqEhYvONq5pkC2Y9oPljWToLmQ==",
+ "dev": true,
+ "bin": {
+ "tsc": "bin/tsc",
+ "tsserver": "bin/tsserver"
+ },
+ "engines": {
+ "node": ">=4.2.0"
+ }
+ },
+ "node_modules/update-browserslist-db": {
+ "version": "1.0.5",
+ "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.5.tgz",
+ "integrity": "sha512-dteFFpCyvuDdr9S/ff1ISkKt/9YZxKjI9WlRR99c180GaztJtRa/fn18FdxGVKVsnPY7/a/FDN68mcvUmP4U7Q==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "opencollective",
+ "url": "https://opencollective.com/browserslist"
+ },
+ {
+ "type": "tidelift",
+ "url": "https://tidelift.com/funding/github/npm/browserslist"
+ }
+ ],
+ "dependencies": {
+ "escalade": "^3.1.1",
+ "picocolors": "^1.0.0"
+ },
+ "bin": {
+ "browserslist-lint": "cli.js"
+ },
+ "peerDependencies": {
+ "browserslist": ">= 4.21.0"
+ }
+ },
+ "node_modules/uri-js": {
+ "version": "4.4.1",
+ "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz",
+ "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==",
+ "dev": true,
+ "dependencies": {
+ "punycode": "^2.1.0"
+ }
+ },
+ "node_modules/util-deprecate": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
+ "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==",
+ "dev": true
+ },
+ "node_modules/v8-compile-cache": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz",
+ "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==",
+ "dev": true
+ },
+ "node_modules/vite": {
+ "version": "3.0.6",
+ "resolved": "https://registry.npmjs.org/vite/-/vite-3.0.6.tgz",
+ "integrity": "sha512-pjfsWIzfUlQME/VAmU6SsjdHkTt6WAHysuqPkHDcjzNu6IGtxDSZ/VfRYOwHaCqX4M3Ivz0kxuSfAPM6gAIX+w==",
+ "dev": true,
+ "dependencies": {
+ "esbuild": "^0.14.47",
+ "postcss": "^8.4.16",
+ "resolve": "^1.22.1",
+ "rollup": ">=2.75.6 <2.77.0 || ~2.77.0"
+ },
+ "bin": {
+ "vite": "bin/vite.js"
+ },
+ "engines": {
+ "node": "^14.18.0 || >=16.0.0"
+ },
+ "optionalDependencies": {
+ "fsevents": "~2.3.2"
+ },
+ "peerDependencies": {
+ "less": "*",
+ "sass": "*",
+ "stylus": "*",
+ "terser": "^5.4.0"
+ },
+ "peerDependenciesMeta": {
+ "less": {
+ "optional": true
+ },
+ "sass": {
+ "optional": true
+ },
+ "stylus": {
+ "optional": true
+ },
+ "terser": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/vue": {
+ "version": "3.2.37",
+ "resolved": "https://registry.npmjs.org/vue/-/vue-3.2.37.tgz",
+ "integrity": "sha512-bOKEZxrm8Eh+fveCqS1/NkG/n6aMidsI6hahas7pa0w/l7jkbssJVsRhVDs07IdDq7h9KHswZOgItnwJAgtVtQ==",
+ "dependencies": {
+ "@vue/compiler-dom": "3.2.37",
+ "@vue/compiler-sfc": "3.2.37",
+ "@vue/runtime-dom": "3.2.37",
+ "@vue/server-renderer": "3.2.37",
+ "@vue/shared": "3.2.37"
+ }
+ },
+ "node_modules/vue-eslint-parser": {
+ "version": "9.0.3",
+ "resolved": "https://registry.npmjs.org/vue-eslint-parser/-/vue-eslint-parser-9.0.3.tgz",
+ "integrity": "sha512-yL+ZDb+9T0ELG4VIFo/2anAOz8SvBdlqEnQnvJ3M7Scq56DvtjY0VY88bByRZB0D4J0u8olBcfrXTVONXsh4og==",
+ "dev": true,
+ "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"
+ },
+ "engines": {
+ "node": "^14.17.0 || >=16.0.0"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/mysticatea"
+ },
+ "peerDependencies": {
+ "eslint": ">=6.0.0"
+ }
+ },
+ "node_modules/vue-i18n": {
+ "version": "9.2.2",
+ "resolved": "https://registry.npmjs.org/vue-i18n/-/vue-i18n-9.2.2.tgz",
+ "integrity": "sha512-yswpwtj89rTBhegUAv9Mu37LNznyu3NpyLQmozF3i1hYOhwpG8RjcjIFIIfnu+2MDZJGSZPXaKWvnQA71Yv9TQ==",
+ "dependencies": {
+ "@intlify/core-base": "9.2.2",
+ "@intlify/shared": "9.2.2",
+ "@intlify/vue-devtools": "9.2.2",
+ "@vue/devtools-api": "^6.2.1"
+ },
+ "engines": {
+ "node": ">= 14"
+ },
+ "peerDependencies": {
+ "vue": "^3.0.0"
+ }
+ },
+ "node_modules/vue-router": {
+ "version": "4.1.3",
+ "resolved": "https://registry.npmjs.org/vue-router/-/vue-router-4.1.3.tgz",
+ "integrity": "sha512-XvK81bcYglKiayT7/vYAg/f36ExPC4t90R/HIpzrZ5x+17BOWptXLCrEPufGgZeuq68ww4ekSIMBZY1qdUdfjA==",
+ "dependencies": {
+ "@vue/devtools-api": "^6.1.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/posva"
+ },
+ "peerDependencies": {
+ "vue": "^3.2.0"
+ }
+ },
+ "node_modules/vue-tsc": {
+ "version": "0.39.5",
+ "resolved": "https://registry.npmjs.org/vue-tsc/-/vue-tsc-0.39.5.tgz",
+ "integrity": "sha512-jhTsrKhZkafpIeN4Cbhr1K53hNfa/oesSrlh7hUaeHyCk55VhZT6oJkwJbtqN4MYkWZIwPrm3/xTwsELuf2ocg==",
+ "dev": true,
+ "dependencies": {
+ "@volar/vue-language-core": "0.39.5",
+ "@volar/vue-typescript": "0.39.5"
+ },
+ "bin": {
+ "vue-tsc": "bin/vue-tsc.js"
+ },
+ "peerDependencies": {
+ "typescript": "*"
+ }
+ },
+ "node_modules/which": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
+ "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
+ "dev": true,
+ "dependencies": {
+ "isexe": "^2.0.0"
+ },
+ "bin": {
+ "node-which": "bin/node-which"
+ },
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/word-wrap": {
+ "version": "1.2.3",
+ "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz",
+ "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/wrappy": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
+ "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==",
+ "dev": true
+ },
+ "node_modules/xml-name-validator": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-4.0.0.tgz",
+ "integrity": "sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw==",
+ "dev": true,
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/xtend": {
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz",
+ "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.4"
+ }
+ },
+ "node_modules/yallist": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
+ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
+ "dev": true
+ },
+ "node_modules/yaml": {
+ "version": "1.10.2",
+ "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz",
+ "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==",
+ "dev": true,
+ "engines": {
+ "node": ">= 6"
+ }
+ },
+ "node_modules/yocto-queue": {
+ "version": "0.1.0",
+ "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz",
+ "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==",
+ "dev": true,
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ }
+ },
+ "dependencies": {
+ "@babel/parser": {
+ "version": "7.18.11",
+ "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.18.11.tgz",
+ "integrity": "sha512-9JKn5vN+hDt0Hdqn1PiJ2guflwP+B6Ga8qbDuoF0PzzVhrzsKIJo8yGqVk6CmMHiMei9w1C1Bp9IMJSIK+HPIQ=="
+ },
+ "@esbuild/linux-loong64": {
+ "version": "0.14.54",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.14.54.tgz",
+ "integrity": "sha512-bZBrLAIX1kpWelV0XemxBZllyRmM6vgFQQG2GdNb+r3Fkp0FOh1NJSvekXDs7jq70k4euu1cryLMfU+mTXlEpw==",
+ "dev": true,
+ "optional": true
+ },
+ "@eslint/eslintrc": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.3.0.tgz",
+ "integrity": "sha512-UWW0TMTmk2d7hLcWD1/e2g5HDM/HQ3csaLSqXCfqwh4uNDuNqlaKWXmEsL4Cs41Z0KnILNvwbHAah3C2yt06kw==",
+ "dev": true,
+ "requires": {
+ "ajv": "^6.12.4",
+ "debug": "^4.3.2",
+ "espree": "^9.3.2",
+ "globals": "^13.15.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"
+ }
+ },
+ "@heroicons/vue": {
+ "version": "1.0.6",
+ "resolved": "https://registry.npmjs.org/@heroicons/vue/-/vue-1.0.6.tgz",
+ "integrity": "sha512-ng2YcCQrdoQWEFpw+ipFl2rZo8mZ56v0T5+MyfQQvNqfKChwgP6DMloZLW+rl17GEcHkE3H82UTAMKBKZr4+WA==",
+ "requires": {}
+ },
+ "@humanwhocodes/config-array": {
+ "version": "0.10.4",
+ "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.10.4.tgz",
+ "integrity": "sha512-mXAIHxZT3Vcpg83opl1wGlVZ9xydbfZO3r5YfRSH6Gpp2J/PfdBP0wbDa2sO6/qRbcalpoevVyW6A/fI6LfeMw==",
+ "dev": true,
+ "requires": {
+ "@humanwhocodes/object-schema": "^1.2.1",
+ "debug": "^4.1.1",
+ "minimatch": "^3.0.4"
+ }
+ },
+ "@humanwhocodes/gitignore-to-minimatch": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/@humanwhocodes/gitignore-to-minimatch/-/gitignore-to-minimatch-1.0.2.tgz",
+ "integrity": "sha512-rSqmMJDdLFUsyxR6FMtD00nfQKKLFb1kv+qBbOVKqErvloEIJLo5bDTJTQNTYgeyp78JsA7u/NPi5jT1GR/MuA==",
+ "dev": true
+ },
+ "@humanwhocodes/object-schema": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz",
+ "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==",
+ "dev": true
+ },
+ "@intlify/core-base": {
+ "version": "9.2.2",
+ "resolved": "https://registry.npmjs.org/@intlify/core-base/-/core-base-9.2.2.tgz",
+ "integrity": "sha512-JjUpQtNfn+joMbrXvpR4hTF8iJQ2sEFzzK3KIESOx+f+uwIjgw20igOyaIdhfsVVBCds8ZM64MoeNSx+PHQMkA==",
+ "requires": {
+ "@intlify/devtools-if": "9.2.2",
+ "@intlify/message-compiler": "9.2.2",
+ "@intlify/shared": "9.2.2",
+ "@intlify/vue-devtools": "9.2.2"
+ }
+ },
+ "@intlify/devtools-if": {
+ "version": "9.2.2",
+ "resolved": "https://registry.npmjs.org/@intlify/devtools-if/-/devtools-if-9.2.2.tgz",
+ "integrity": "sha512-4ttr/FNO29w+kBbU7HZ/U0Lzuh2cRDhP8UlWOtV9ERcjHzuyXVZmjyleESK6eVP60tGC9QtQW9yZE+JeRhDHkg==",
+ "requires": {
+ "@intlify/shared": "9.2.2"
+ }
+ },
+ "@intlify/message-compiler": {
+ "version": "9.2.2",
+ "resolved": "https://registry.npmjs.org/@intlify/message-compiler/-/message-compiler-9.2.2.tgz",
+ "integrity": "sha512-IUrQW7byAKN2fMBe8z6sK6riG1pue95e5jfokn8hA5Q3Bqy4MBJ5lJAofUsawQJYHeoPJ7svMDyBaVJ4d0GTtA==",
+ "requires": {
+ "@intlify/shared": "9.2.2",
+ "source-map": "0.6.1"
+ }
+ },
+ "@intlify/shared": {
+ "version": "9.2.2",
+ "resolved": "https://registry.npmjs.org/@intlify/shared/-/shared-9.2.2.tgz",
+ "integrity": "sha512-wRwTpsslgZS5HNyM7uDQYZtxnbI12aGiBZURX3BTR9RFIKKRWpllTsgzHWvj3HKm3Y2Sh5LPC1r0PDCKEhVn9Q=="
+ },
+ "@intlify/vue-devtools": {
+ "version": "9.2.2",
+ "resolved": "https://registry.npmjs.org/@intlify/vue-devtools/-/vue-devtools-9.2.2.tgz",
+ "integrity": "sha512-+dUyqyCHWHb/UcvY1MlIpO87munedm3Gn6E9WWYdWrMuYLcoIoOEVDWSS8xSwtlPU+kA+MEQTP6Q1iI/ocusJg==",
+ "requires": {
+ "@intlify/core-base": "9.2.2",
+ "@intlify/shared": "9.2.2"
+ }
+ },
+ "@nodelib/fs.scandir": {
+ "version": "2.1.5",
+ "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
+ "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==",
+ "dev": true,
+ "requires": {
+ "@nodelib/fs.stat": "2.0.5",
+ "run-parallel": "^1.1.9"
+ }
+ },
+ "@nodelib/fs.stat": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz",
+ "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==",
+ "dev": true
+ },
+ "@nodelib/fs.walk": {
+ "version": "1.2.8",
+ "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz",
+ "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==",
+ "dev": true,
+ "requires": {
+ "@nodelib/fs.scandir": "2.1.5",
+ "fastq": "^1.6.0"
+ }
+ },
+ "@tailwindcss/aspect-ratio": {
+ "version": "0.4.0",
+ "resolved": "https://registry.npmjs.org/@tailwindcss/aspect-ratio/-/aspect-ratio-0.4.0.tgz",
+ "integrity": "sha512-WJu0I4PpqNPuutpaA9zDUq2JXR+lorZ7PbLcKNLmb6GL9/HLfC7w3CRsMhJF4BbYd/lkY6CfXOvkYpuGnZfkpQ==",
+ "dev": true,
+ "requires": {}
+ },
+ "@tailwindcss/forms": {
+ "version": "0.5.2",
+ "resolved": "https://registry.npmjs.org/@tailwindcss/forms/-/forms-0.5.2.tgz",
+ "integrity": "sha512-pSrFeJB6Bg1Mrg9CdQW3+hqZXAKsBrSG9MAfFLKy1pVA4Mb4W7C0k7mEhlmS2Dfo/otxrQOET7NJiJ9RrS563w==",
+ "dev": true,
+ "requires": {
+ "mini-svg-data-uri": "^1.2.3"
+ }
+ },
+ "@tailwindcss/typography": {
+ "version": "0.5.4",
+ "resolved": "https://registry.npmjs.org/@tailwindcss/typography/-/typography-0.5.4.tgz",
+ "integrity": "sha512-QEdg40EmGvE7kKoDei8zr5sf4D1pIayHj4R31bH3lX8x2BtTiR+jNejYPOkhbmy3DXgkMF9jC8xqNiGFAuL9Sg==",
+ "dev": true,
+ "requires": {
+ "lodash.castarray": "^4.4.0",
+ "lodash.isplainobject": "^4.0.6",
+ "lodash.merge": "^4.6.2"
+ }
+ },
+ "@types/json-schema": {
+ "version": "7.0.11",
+ "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz",
+ "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==",
+ "dev": true
+ },
+ "@types/node": {
+ "version": "16.11.48",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-16.11.48.tgz",
+ "integrity": "sha512-Z9r9UWlNeNkYnxybm+1fc0jxUNjZqRekTAr1pG0qdXe9apT9yCiqk1c4VvKQJsFpnchU4+fLl25MabSLA2wxIw==",
+ "dev": true
+ },
+ "@typescript-eslint/eslint-plugin": {
+ "version": "5.33.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.33.0.tgz",
+ "integrity": "sha512-jHvZNSW2WZ31OPJ3enhLrEKvAZNyAFWZ6rx9tUwaessTc4sx9KmgMNhVcqVAl1ETnT5rU5fpXTLmY9YvC1DCNg==",
+ "dev": true,
+ "requires": {
+ "@typescript-eslint/scope-manager": "5.33.0",
+ "@typescript-eslint/type-utils": "5.33.0",
+ "@typescript-eslint/utils": "5.33.0",
+ "debug": "^4.3.4",
+ "functional-red-black-tree": "^1.0.1",
+ "ignore": "^5.2.0",
+ "regexpp": "^3.2.0",
+ "semver": "^7.3.7",
+ "tsutils": "^3.21.0"
+ }
+ },
+ "@typescript-eslint/parser": {
+ "version": "5.33.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.33.0.tgz",
+ "integrity": "sha512-cgM5cJrWmrDV2KpvlcSkelTBASAs1mgqq+IUGKJvFxWrapHpaRy5EXPQz9YaKF3nZ8KY18ILTiVpUtbIac86/w==",
+ "dev": true,
+ "requires": {
+ "@typescript-eslint/scope-manager": "5.33.0",
+ "@typescript-eslint/types": "5.33.0",
+ "@typescript-eslint/typescript-estree": "5.33.0",
+ "debug": "^4.3.4"
+ }
+ },
+ "@typescript-eslint/scope-manager": {
+ "version": "5.33.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.33.0.tgz",
+ "integrity": "sha512-/Jta8yMNpXYpRDl8EwF/M8It2A9sFJTubDo0ATZefGXmOqlaBffEw0ZbkbQ7TNDK6q55NPHFshGBPAZvZkE8Pw==",
+ "dev": true,
+ "requires": {
+ "@typescript-eslint/types": "5.33.0",
+ "@typescript-eslint/visitor-keys": "5.33.0"
+ }
+ },
+ "@typescript-eslint/type-utils": {
+ "version": "5.33.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.33.0.tgz",
+ "integrity": "sha512-2zB8uEn7hEH2pBeyk3NpzX1p3lF9dKrEbnXq1F7YkpZ6hlyqb2yZujqgRGqXgRBTHWIUG3NGx/WeZk224UKlIA==",
+ "dev": true,
+ "requires": {
+ "@typescript-eslint/utils": "5.33.0",
+ "debug": "^4.3.4",
+ "tsutils": "^3.21.0"
+ }
+ },
+ "@typescript-eslint/types": {
+ "version": "5.33.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.33.0.tgz",
+ "integrity": "sha512-nIMt96JngB4MYFYXpZ/3ZNU4GWPNdBbcB5w2rDOCpXOVUkhtNlG2mmm8uXhubhidRZdwMaMBap7Uk8SZMU/ppw==",
+ "dev": true
+ },
+ "@typescript-eslint/typescript-estree": {
+ "version": "5.33.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.33.0.tgz",
+ "integrity": "sha512-tqq3MRLlggkJKJUrzM6wltk8NckKyyorCSGMq4eVkyL5sDYzJJcMgZATqmF8fLdsWrW7OjjIZ1m9v81vKcaqwQ==",
+ "dev": true,
+ "requires": {
+ "@typescript-eslint/types": "5.33.0",
+ "@typescript-eslint/visitor-keys": "5.33.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": {
+ "version": "5.33.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.33.0.tgz",
+ "integrity": "sha512-JxOAnXt9oZjXLIiXb5ZIcZXiwVHCkqZgof0O8KPgz7C7y0HS42gi75PdPlqh1Tf109M0fyUw45Ao6JLo7S5AHw==",
+ "dev": true,
+ "requires": {
+ "@types/json-schema": "^7.0.9",
+ "@typescript-eslint/scope-manager": "5.33.0",
+ "@typescript-eslint/types": "5.33.0",
+ "@typescript-eslint/typescript-estree": "5.33.0",
+ "eslint-scope": "^5.1.1",
+ "eslint-utils": "^3.0.0"
+ },
+ "dependencies": {
+ "eslint-scope": {
+ "version": "5.1.1",
+ "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz",
+ "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==",
+ "dev": true,
+ "requires": {
+ "esrecurse": "^4.3.0",
+ "estraverse": "^4.1.1"
+ }
+ },
+ "estraverse": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz",
+ "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==",
+ "dev": true
+ }
+ }
+ },
+ "@typescript-eslint/visitor-keys": {
+ "version": "5.33.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.33.0.tgz",
+ "integrity": "sha512-/XsqCzD4t+Y9p5wd9HZiptuGKBlaZO5showwqODii5C0nZawxWLF+Q6k5wYHBrQv96h6GYKyqqMHCSTqta8Kiw==",
+ "dev": true,
+ "requires": {
+ "@typescript-eslint/types": "5.33.0",
+ "eslint-visitor-keys": "^3.3.0"
+ }
+ },
+ "@vitejs/plugin-vue": {
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-3.0.3.tgz",
+ "integrity": "sha512-U4zNBlz9mg+TA+i+5QPc3N5lQvdUXENZLO2h0Wdzp56gI1MWhqJOv+6R+d4kOzoaSSq6TnGPBdZAXKOe4lXy6g==",
+ "dev": true,
+ "requires": {}
+ },
+ "@volar/code-gen": {
+ "version": "0.39.5",
+ "resolved": "https://registry.npmjs.org/@volar/code-gen/-/code-gen-0.39.5.tgz",
+ "integrity": "sha512-vQr5VoCH8T2NHmqLc/AA1/4F8l41WB+24+I+VjxBaev/Hmwjye9K0GlmMHAOl84WB3hWGOqpHaPX6JkqzRNjJg==",
+ "dev": true,
+ "requires": {
+ "@volar/source-map": "0.39.5"
+ }
+ },
+ "@volar/source-map": {
+ "version": "0.39.5",
+ "resolved": "https://registry.npmjs.org/@volar/source-map/-/source-map-0.39.5.tgz",
+ "integrity": "sha512-IVOX+v++Sr5Kok4/cLbDJp2vf1ia1rChpV7adgcnMle6uORBuGFEur234UzamK0iHRCcfFFRz7z+hSPf2CO23Q==",
+ "dev": true
+ },
+ "@volar/typescript-faster": {
+ "version": "0.39.5",
+ "resolved": "https://registry.npmjs.org/@volar/typescript-faster/-/typescript-faster-0.39.5.tgz",
+ "integrity": "sha512-IzLqlxefmKkjNKXC/8aFiqPcTqnj6RG31D2f9cIWxmW9pvUYJxLED+y9phnOxNxq0OmeRtQ3Pfmvu85tUBoZsQ==",
+ "dev": true,
+ "requires": {
+ "semver": "^7.3.7"
+ }
+ },
+ "@volar/vue-code-gen": {
+ "version": "0.39.5",
+ "resolved": "https://registry.npmjs.org/@volar/vue-code-gen/-/vue-code-gen-0.39.5.tgz",
+ "integrity": "sha512-y+QUV9MuuasiIuRoGKQl+gMhDaAX6XNhckAyJCvD1FZ8f2eJuPY2VtoFxmu/Z2bGWBdtUW/g98jaeKJ+j3wwOw==",
+ "dev": true,
+ "requires": {
+ "@volar/code-gen": "0.39.5",
+ "@volar/source-map": "0.39.5",
+ "@vue/compiler-core": "^3.2.37",
+ "@vue/compiler-dom": "^3.2.37",
+ "@vue/shared": "^3.2.37"
+ }
+ },
+ "@volar/vue-language-core": {
+ "version": "0.39.5",
+ "resolved": "https://registry.npmjs.org/@volar/vue-language-core/-/vue-language-core-0.39.5.tgz",
+ "integrity": "sha512-m+e1tYuL/WRPhSeC7hZ0NuSwHsfnnGJVxCBHLaP7jR0f6xcC0DAegP3QF+gfu9ZJFPGznpZYFKadngMjuhQS9Q==",
+ "dev": true,
+ "requires": {
+ "@volar/code-gen": "0.39.5",
+ "@volar/source-map": "0.39.5",
+ "@volar/vue-code-gen": "0.39.5",
+ "@vue/compiler-sfc": "^3.2.37",
+ "@vue/reactivity": "^3.2.37"
+ }
+ },
+ "@volar/vue-typescript": {
+ "version": "0.39.5",
+ "resolved": "https://registry.npmjs.org/@volar/vue-typescript/-/vue-typescript-0.39.5.tgz",
+ "integrity": "sha512-ckhWD1xOi0OMr702XVkv/Npsb9FKAp5gvhxyLv0QqWekPdSo04t4KrZfwosJLGERIEcyr50SuB7HqBp8ndQmzA==",
+ "dev": true,
+ "requires": {
+ "@volar/code-gen": "0.39.5",
+ "@volar/typescript-faster": "0.39.5",
+ "@volar/vue-language-core": "0.39.5"
+ }
+ },
+ "@vue/compiler-core": {
+ "version": "3.2.37",
+ "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.37.tgz",
+ "integrity": "sha512-81KhEjo7YAOh0vQJoSmAD68wLfYqJvoiD4ulyedzF+OEk/bk6/hx3fTNVfuzugIIaTrOx4PGx6pAiBRe5e9Zmg==",
+ "requires": {
+ "@babel/parser": "^7.16.4",
+ "@vue/shared": "3.2.37",
+ "estree-walker": "^2.0.2",
+ "source-map": "^0.6.1"
+ }
+ },
+ "@vue/compiler-dom": {
+ "version": "3.2.37",
+ "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.37.tgz",
+ "integrity": "sha512-yxJLH167fucHKxaqXpYk7x8z7mMEnXOw3G2q62FTkmsvNxu4FQSu5+3UMb+L7fjKa26DEzhrmCxAgFLLIzVfqQ==",
+ "requires": {
+ "@vue/compiler-core": "3.2.37",
+ "@vue/shared": "3.2.37"
+ }
+ },
+ "@vue/compiler-sfc": {
+ "version": "3.2.37",
+ "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.37.tgz",
+ "integrity": "sha512-+7i/2+9LYlpqDv+KTtWhOZH+pa8/HnX/905MdVmAcI/mPQOBwkHHIzrsEsucyOIZQYMkXUiTkmZq5am/NyXKkg==",
+ "requires": {
+ "@babel/parser": "^7.16.4",
+ "@vue/compiler-core": "3.2.37",
+ "@vue/compiler-dom": "3.2.37",
+ "@vue/compiler-ssr": "3.2.37",
+ "@vue/reactivity-transform": "3.2.37",
+ "@vue/shared": "3.2.37",
+ "estree-walker": "^2.0.2",
+ "magic-string": "^0.25.7",
+ "postcss": "^8.1.10",
+ "source-map": "^0.6.1"
+ }
+ },
+ "@vue/compiler-ssr": {
+ "version": "3.2.37",
+ "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.37.tgz",
+ "integrity": "sha512-7mQJD7HdXxQjktmsWp/J67lThEIcxLemz1Vb5I6rYJHR5vI+lON3nPGOH3ubmbvYGt8xEUaAr1j7/tIFWiEOqw==",
+ "requires": {
+ "@vue/compiler-dom": "3.2.37",
+ "@vue/shared": "3.2.37"
+ }
+ },
+ "@vue/devtools-api": {
+ "version": "6.2.1",
+ "resolved": "https://registry.npmjs.org/@vue/devtools-api/-/devtools-api-6.2.1.tgz",
+ "integrity": "sha512-OEgAMeQXvCoJ+1x8WyQuVZzFo0wcyCmUR3baRVLmKBo1LmYZWMlRiXlux5jd0fqVJu6PfDbOrZItVqUEzLobeQ=="
+ },
+ "@vue/eslint-config-typescript": {
+ "version": "11.0.0",
+ "resolved": "https://registry.npmjs.org/@vue/eslint-config-typescript/-/eslint-config-typescript-11.0.0.tgz",
+ "integrity": "sha512-txuRzxnQVmtUvvy9UyWUy9sHWXNeRPGmSPqP53hRtaiUeCTAondI9Ho9GQYI/8/eWljYOST7iA4Aa8sANBkWaA==",
+ "dev": true,
+ "requires": {
+ "@typescript-eslint/eslint-plugin": "^5.0.0",
+ "@typescript-eslint/parser": "^5.0.0",
+ "vue-eslint-parser": "^9.0.0"
+ }
+ },
+ "@vue/reactivity": {
+ "version": "3.2.37",
+ "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.2.37.tgz",
+ "integrity": "sha512-/7WRafBOshOc6m3F7plwzPeCu/RCVv9uMpOwa/5PiY1Zz+WLVRWiy0MYKwmg19KBdGtFWsmZ4cD+LOdVPcs52A==",
+ "requires": {
+ "@vue/shared": "3.2.37"
+ }
+ },
+ "@vue/reactivity-transform": {
+ "version": "3.2.37",
+ "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.2.37.tgz",
+ "integrity": "sha512-IWopkKEb+8qpu/1eMKVeXrK0NLw9HicGviJzhJDEyfxTR9e1WtpnnbYkJWurX6WwoFP0sz10xQg8yL8lgskAZg==",
+ "requires": {
+ "@babel/parser": "^7.16.4",
+ "@vue/compiler-core": "3.2.37",
+ "@vue/shared": "3.2.37",
+ "estree-walker": "^2.0.2",
+ "magic-string": "^0.25.7"
+ }
+ },
+ "@vue/runtime-core": {
+ "version": "3.2.37",
+ "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.2.37.tgz",
+ "integrity": "sha512-JPcd9kFyEdXLl/i0ClS7lwgcs0QpUAWj+SKX2ZC3ANKi1U4DOtiEr6cRqFXsPwY5u1L9fAjkinIdB8Rz3FoYNQ==",
+ "requires": {
+ "@vue/reactivity": "3.2.37",
+ "@vue/shared": "3.2.37"
+ }
+ },
+ "@vue/runtime-dom": {
+ "version": "3.2.37",
+ "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.2.37.tgz",
+ "integrity": "sha512-HimKdh9BepShW6YozwRKAYjYQWg9mQn63RGEiSswMbW+ssIht1MILYlVGkAGGQbkhSh31PCdoUcfiu4apXJoPw==",
+ "requires": {
+ "@vue/runtime-core": "3.2.37",
+ "@vue/shared": "3.2.37",
+ "csstype": "^2.6.8"
+ }
+ },
+ "@vue/server-renderer": {
+ "version": "3.2.37",
+ "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.2.37.tgz",
+ "integrity": "sha512-kLITEJvaYgZQ2h47hIzPh2K3jG8c1zCVbp/o/bzQOyvzaKiCquKS7AaioPI28GNxIsE/zSx+EwWYsNxDCX95MA==",
+ "requires": {
+ "@vue/compiler-ssr": "3.2.37",
+ "@vue/shared": "3.2.37"
+ }
+ },
+ "@vue/shared": {
+ "version": "3.2.37",
+ "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.37.tgz",
+ "integrity": "sha512-4rSJemR2NQIo9Klm1vabqWjD8rs/ZaJSzMxkMNeJS6lHiUjjUeYFbooN19NgFjztubEKh3WlZUeOLVdbbUWHsw=="
+ },
+ "acorn": {
+ "version": "7.4.1",
+ "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz",
+ "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==",
+ "dev": true
+ },
+ "acorn-jsx": {
+ "version": "5.3.2",
+ "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz",
+ "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==",
+ "dev": true,
+ "requires": {}
+ },
+ "acorn-node": {
+ "version": "1.8.2",
+ "resolved": "https://registry.npmjs.org/acorn-node/-/acorn-node-1.8.2.tgz",
+ "integrity": "sha512-8mt+fslDufLYntIoPAaIMUe/lrbrehIiwmR3t2k9LljIzoigEPF27eLk2hy8zSGzmR/ogr7zbRKINMo1u0yh5A==",
+ "dev": true,
+ "requires": {
+ "acorn": "^7.0.0",
+ "acorn-walk": "^7.0.0",
+ "xtend": "^4.0.2"
+ }
+ },
+ "acorn-walk": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz",
+ "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==",
+ "dev": true
+ },
+ "ajv": {
+ "version": "6.12.6",
+ "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz",
+ "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==",
+ "dev": true,
+ "requires": {
+ "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": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
+ "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
+ "dev": true
+ },
+ "ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
+ "requires": {
+ "color-convert": "^2.0.1"
+ }
+ },
+ "anymatch": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz",
+ "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==",
+ "dev": true,
+ "requires": {
+ "normalize-path": "^3.0.0",
+ "picomatch": "^2.0.4"
+ }
+ },
+ "arg": {
+ "version": "5.0.2",
+ "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz",
+ "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==",
+ "dev": true
+ },
+ "argparse": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
+ "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==",
+ "dev": true
+ },
+ "array-union": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz",
+ "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==",
+ "dev": true
+ },
+ "asynckit": {
+ "version": "0.4.0",
+ "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
+ "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q=="
+ },
+ "autoprefixer": {
+ "version": "10.4.8",
+ "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.8.tgz",
+ "integrity": "sha512-75Jr6Q/XpTqEf6D2ltS5uMewJIx5irCU1oBYJrWjFenq/m12WRRrz6g15L1EIoYvPLXTbEry7rDOwrcYNj77xw==",
+ "dev": true,
+ "requires": {
+ "browserslist": "^4.21.3",
+ "caniuse-lite": "^1.0.30001373",
+ "fraction.js": "^4.2.0",
+ "normalize-range": "^0.1.2",
+ "picocolors": "^1.0.0",
+ "postcss-value-parser": "^4.2.0"
+ }
+ },
+ "axios": {
+ "version": "0.27.2",
+ "resolved": "https://registry.npmjs.org/axios/-/axios-0.27.2.tgz",
+ "integrity": "sha512-t+yRIyySRTp/wua5xEr+z1q60QmLq8ABsS5O9Me1AsE5dfKqgnCFzwiCZZ/cGNd1lq4/7akDWMxdhVlucjmnOQ==",
+ "requires": {
+ "follow-redirects": "^1.14.9",
+ "form-data": "^4.0.0"
+ }
+ },
+ "balanced-match": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
+ "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==",
+ "dev": true
+ },
+ "binary-extensions": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz",
+ "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==",
+ "dev": true
+ },
+ "boolbase": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz",
+ "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==",
+ "dev": true
+ },
+ "brace-expansion": {
+ "version": "1.1.11",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
+ "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
+ "dev": true,
+ "requires": {
+ "balanced-match": "^1.0.0",
+ "concat-map": "0.0.1"
+ }
+ },
+ "braces": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
+ "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
+ "dev": true,
+ "requires": {
+ "fill-range": "^7.0.1"
+ }
+ },
+ "browserslist": {
+ "version": "4.21.3",
+ "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.3.tgz",
+ "integrity": "sha512-898rgRXLAyRkM1GryrrBHGkqA5hlpkV5MhtZwg9QXeiyLUYs2k00Un05aX5l2/yJIOObYKOpS2JNo8nJDE7fWQ==",
+ "dev": true,
+ "requires": {
+ "caniuse-lite": "^1.0.30001370",
+ "electron-to-chromium": "^1.4.202",
+ "node-releases": "^2.0.6",
+ "update-browserslist-db": "^1.0.5"
+ }
+ },
+ "callsites": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
+ "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==",
+ "dev": true
+ },
+ "camelcase-css": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz",
+ "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==",
+ "dev": true
+ },
+ "caniuse-lite": {
+ "version": "1.0.30001375",
+ "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001375.tgz",
+ "integrity": "sha512-kWIMkNzLYxSvnjy0hL8w1NOaWNr2rn39RTAVyIwcw8juu60bZDWiF1/loOYANzjtJmy6qPgNmn38ro5Pygagdw==",
+ "dev": true
+ },
+ "chalk": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
+ "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
+ "dev": true,
+ "requires": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ }
+ },
+ "chokidar": {
+ "version": "3.5.3",
+ "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz",
+ "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==",
+ "dev": true,
+ "requires": {
+ "anymatch": "~3.1.2",
+ "braces": "~3.0.2",
+ "fsevents": "~2.3.2",
+ "glob-parent": "~5.1.2",
+ "is-binary-path": "~2.1.0",
+ "is-glob": "~4.0.1",
+ "normalize-path": "~3.0.0",
+ "readdirp": "~3.6.0"
+ },
+ "dependencies": {
+ "glob-parent": {
+ "version": "5.1.2",
+ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
+ "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
+ "dev": true,
+ "requires": {
+ "is-glob": "^4.0.1"
+ }
+ }
+ }
+ },
+ "color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "requires": {
+ "color-name": "~1.1.4"
+ }
+ },
+ "color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "combined-stream": {
+ "version": "1.0.8",
+ "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz",
+ "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==",
+ "requires": {
+ "delayed-stream": "~1.0.0"
+ }
+ },
+ "concat-map": {
+ "version": "0.0.1",
+ "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
+ "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==",
+ "dev": true
+ },
+ "cross-spawn": {
+ "version": "7.0.3",
+ "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
+ "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==",
+ "dev": true,
+ "requires": {
+ "path-key": "^3.1.0",
+ "shebang-command": "^2.0.0",
+ "which": "^2.0.1"
+ }
+ },
+ "cssesc": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz",
+ "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==",
+ "dev": true
+ },
+ "csstype": {
+ "version": "2.6.20",
+ "resolved": "https://registry.npmjs.org/csstype/-/csstype-2.6.20.tgz",
+ "integrity": "sha512-/WwNkdXfckNgw6S5R125rrW8ez139lBHWouiBvX8dfMFtcn6V81REDqnH7+CRpRipfYlyU1CmOnOxrmGcFOjeA=="
+ },
+ "dayjs": {
+ "version": "1.11.5",
+ "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.5.tgz",
+ "integrity": "sha512-CAdX5Q3YW3Gclyo5Vpqkgpj8fSdLQcRuzfX6mC6Phy0nfJ0eGYOeS7m4mt2plDWLAtA4TqTakvbboHvUxfe4iA=="
+ },
+ "debug": {
+ "version": "4.3.4",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
+ "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
+ "dev": true,
+ "requires": {
+ "ms": "2.1.2"
+ }
+ },
+ "deep-is": {
+ "version": "0.1.4",
+ "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz",
+ "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==",
+ "dev": true
+ },
+ "defined": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.0.tgz",
+ "integrity": "sha512-Y2caI5+ZwS5c3RiNDJ6u53VhQHv+hHKwhkI1iHvceKUHw9Df6EK2zRLfjejRgMuCuxK7PfSWIMwWecceVvThjQ==",
+ "dev": true
+ },
+ "delayed-stream": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
+ "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ=="
+ },
+ "detective": {
+ "version": "5.2.1",
+ "resolved": "https://registry.npmjs.org/detective/-/detective-5.2.1.tgz",
+ "integrity": "sha512-v9XE1zRnz1wRtgurGu0Bs8uHKFSTdteYZNbIPFVhUZ39L/S79ppMpdmVOZAnoz1jfEFodc48n6MX483Xo3t1yw==",
+ "dev": true,
+ "requires": {
+ "acorn-node": "^1.8.2",
+ "defined": "^1.0.0",
+ "minimist": "^1.2.6"
+ }
+ },
+ "didyoumean": {
+ "version": "1.2.2",
+ "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz",
+ "integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==",
+ "dev": true
+ },
+ "dir-glob": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz",
+ "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==",
+ "dev": true,
+ "requires": {
+ "path-type": "^4.0.0"
+ }
+ },
+ "dlv": {
+ "version": "1.1.3",
+ "resolved": "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz",
+ "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==",
+ "dev": true
+ },
+ "doctrine": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz",
+ "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==",
+ "dev": true,
+ "requires": {
+ "esutils": "^2.0.2"
+ }
+ },
+ "electron-to-chromium": {
+ "version": "1.4.217",
+ "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.217.tgz",
+ "integrity": "sha512-iX8GbAMij7cOtJPZo02CClpaPMWjvN5meqXiJXkBgwvraNWTNH0Z7F9tkznI34JRPtWASoPM/xWamq3oNb49GA==",
+ "dev": true
+ },
+ "esbuild": {
+ "version": "0.14.54",
+ "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.14.54.tgz",
+ "integrity": "sha512-Cy9llcy8DvET5uznocPyqL3BFRrFXSVqbgpMJ9Wz8oVjZlh/zUSNbPRbov0VX7VxN2JH1Oa0uNxZ7eLRb62pJA==",
+ "dev": true,
+ "requires": {
+ "@esbuild/linux-loong64": "0.14.54",
+ "esbuild-android-64": "0.14.54",
+ "esbuild-android-arm64": "0.14.54",
+ "esbuild-darwin-64": "0.14.54",
+ "esbuild-darwin-arm64": "0.14.54",
+ "esbuild-freebsd-64": "0.14.54",
+ "esbuild-freebsd-arm64": "0.14.54",
+ "esbuild-linux-32": "0.14.54",
+ "esbuild-linux-64": "0.14.54",
+ "esbuild-linux-arm": "0.14.54",
+ "esbuild-linux-arm64": "0.14.54",
+ "esbuild-linux-mips64le": "0.14.54",
+ "esbuild-linux-ppc64le": "0.14.54",
+ "esbuild-linux-riscv64": "0.14.54",
+ "esbuild-linux-s390x": "0.14.54",
+ "esbuild-netbsd-64": "0.14.54",
+ "esbuild-openbsd-64": "0.14.54",
+ "esbuild-sunos-64": "0.14.54",
+ "esbuild-windows-32": "0.14.54",
+ "esbuild-windows-64": "0.14.54",
+ "esbuild-windows-arm64": "0.14.54"
+ }
+ },
+ "esbuild-android-64": {
+ "version": "0.14.54",
+ "resolved": "https://registry.npmjs.org/esbuild-android-64/-/esbuild-android-64-0.14.54.tgz",
+ "integrity": "sha512-Tz2++Aqqz0rJ7kYBfz+iqyE3QMycD4vk7LBRyWaAVFgFtQ/O8EJOnVmTOiDWYZ/uYzB4kvP+bqejYdVKzE5lAQ==",
+ "dev": true,
+ "optional": true
+ },
+ "esbuild-android-arm64": {
+ "version": "0.14.54",
+ "resolved": "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.14.54.tgz",
+ "integrity": "sha512-F9E+/QDi9sSkLaClO8SOV6etqPd+5DgJje1F9lOWoNncDdOBL2YF59IhsWATSt0TLZbYCf3pNlTHvVV5VfHdvg==",
+ "dev": true,
+ "optional": true
+ },
+ "esbuild-darwin-64": {
+ "version": "0.14.54",
+ "resolved": "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.14.54.tgz",
+ "integrity": "sha512-jtdKWV3nBviOd5v4hOpkVmpxsBy90CGzebpbO9beiqUYVMBtSc0AL9zGftFuBon7PNDcdvNCEuQqw2x0wP9yug==",
+ "dev": true,
+ "optional": true
+ },
+ "esbuild-darwin-arm64": {
+ "version": "0.14.54",
+ "resolved": "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.14.54.tgz",
+ "integrity": "sha512-OPafJHD2oUPyvJMrsCvDGkRrVCar5aVyHfWGQzY1dWnzErjrDuSETxwA2HSsyg2jORLY8yBfzc1MIpUkXlctmw==",
+ "dev": true,
+ "optional": true
+ },
+ "esbuild-freebsd-64": {
+ "version": "0.14.54",
+ "resolved": "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.14.54.tgz",
+ "integrity": "sha512-OKwd4gmwHqOTp4mOGZKe/XUlbDJ4Q9TjX0hMPIDBUWWu/kwhBAudJdBoxnjNf9ocIB6GN6CPowYpR/hRCbSYAg==",
+ "dev": true,
+ "optional": true
+ },
+ "esbuild-freebsd-arm64": {
+ "version": "0.14.54",
+ "resolved": "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.14.54.tgz",
+ "integrity": "sha512-sFwueGr7OvIFiQT6WeG0jRLjkjdqWWSrfbVwZp8iMP+8UHEHRBvlaxL6IuKNDwAozNUmbb8nIMXa7oAOARGs1Q==",
+ "dev": true,
+ "optional": true
+ },
+ "esbuild-linux-32": {
+ "version": "0.14.54",
+ "resolved": "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.14.54.tgz",
+ "integrity": "sha512-1ZuY+JDI//WmklKlBgJnglpUL1owm2OX+8E1syCD6UAxcMM/XoWd76OHSjl/0MR0LisSAXDqgjT3uJqT67O3qw==",
+ "dev": true,
+ "optional": true
+ },
+ "esbuild-linux-64": {
+ "version": "0.14.54",
+ "resolved": "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.14.54.tgz",
+ "integrity": "sha512-EgjAgH5HwTbtNsTqQOXWApBaPVdDn7XcK+/PtJwZLT1UmpLoznPd8c5CxqsH2dQK3j05YsB3L17T8vE7cp4cCg==",
+ "dev": true,
+ "optional": true
+ },
+ "esbuild-linux-arm": {
+ "version": "0.14.54",
+ "resolved": "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.14.54.tgz",
+ "integrity": "sha512-qqz/SjemQhVMTnvcLGoLOdFpCYbz4v4fUo+TfsWG+1aOu70/80RV6bgNpR2JCrppV2moUQkww+6bWxXRL9YMGw==",
+ "dev": true,
+ "optional": true
+ },
+ "esbuild-linux-arm64": {
+ "version": "0.14.54",
+ "resolved": "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.14.54.tgz",
+ "integrity": "sha512-WL71L+0Rwv+Gv/HTmxTEmpv0UgmxYa5ftZILVi2QmZBgX3q7+tDeOQNqGtdXSdsL8TQi1vIaVFHUPDe0O0kdig==",
+ "dev": true,
+ "optional": true
+ },
+ "esbuild-linux-mips64le": {
+ "version": "0.14.54",
+ "resolved": "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.14.54.tgz",
+ "integrity": "sha512-qTHGQB8D1etd0u1+sB6p0ikLKRVuCWhYQhAHRPkO+OF3I/iSlTKNNS0Lh2Oc0g0UFGguaFZZiPJdJey3AGpAlw==",
+ "dev": true,
+ "optional": true
+ },
+ "esbuild-linux-ppc64le": {
+ "version": "0.14.54",
+ "resolved": "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.14.54.tgz",
+ "integrity": "sha512-j3OMlzHiqwZBDPRCDFKcx595XVfOfOnv68Ax3U4UKZ3MTYQB5Yz3X1mn5GnodEVYzhtZgxEBidLWeIs8FDSfrQ==",
+ "dev": true,
+ "optional": true
+ },
+ "esbuild-linux-riscv64": {
+ "version": "0.14.54",
+ "resolved": "https://registry.npmjs.org/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.14.54.tgz",
+ "integrity": "sha512-y7Vt7Wl9dkOGZjxQZnDAqqn+XOqFD7IMWiewY5SPlNlzMX39ocPQlOaoxvT4FllA5viyV26/QzHtvTjVNOxHZg==",
+ "dev": true,
+ "optional": true
+ },
+ "esbuild-linux-s390x": {
+ "version": "0.14.54",
+ "resolved": "https://registry.npmjs.org/esbuild-linux-s390x/-/esbuild-linux-s390x-0.14.54.tgz",
+ "integrity": "sha512-zaHpW9dziAsi7lRcyV4r8dhfG1qBidQWUXweUjnw+lliChJqQr+6XD71K41oEIC3Mx1KStovEmlzm+MkGZHnHA==",
+ "dev": true,
+ "optional": true
+ },
+ "esbuild-netbsd-64": {
+ "version": "0.14.54",
+ "resolved": "https://registry.npmjs.org/esbuild-netbsd-64/-/esbuild-netbsd-64-0.14.54.tgz",
+ "integrity": "sha512-PR01lmIMnfJTgeU9VJTDY9ZerDWVFIUzAtJuDHwwceppW7cQWjBBqP48NdeRtoP04/AtO9a7w3viI+PIDr6d+w==",
+ "dev": true,
+ "optional": true
+ },
+ "esbuild-openbsd-64": {
+ "version": "0.14.54",
+ "resolved": "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.14.54.tgz",
+ "integrity": "sha512-Qyk7ikT2o7Wu76UsvvDS5q0amJvmRzDyVlL0qf5VLsLchjCa1+IAvd8kTBgUxD7VBUUVgItLkk609ZHUc1oCaw==",
+ "dev": true,
+ "optional": true
+ },
+ "esbuild-sunos-64": {
+ "version": "0.14.54",
+ "resolved": "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.14.54.tgz",
+ "integrity": "sha512-28GZ24KmMSeKi5ueWzMcco6EBHStL3B6ubM7M51RmPwXQGLe0teBGJocmWhgwccA1GeFXqxzILIxXpHbl9Q/Kw==",
+ "dev": true,
+ "optional": true
+ },
+ "esbuild-windows-32": {
+ "version": "0.14.54",
+ "resolved": "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.14.54.tgz",
+ "integrity": "sha512-T+rdZW19ql9MjS7pixmZYVObd9G7kcaZo+sETqNH4RCkuuYSuv9AGHUVnPoP9hhuE1WM1ZimHz1CIBHBboLU7w==",
+ "dev": true,
+ "optional": true
+ },
+ "esbuild-windows-64": {
+ "version": "0.14.54",
+ "resolved": "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.14.54.tgz",
+ "integrity": "sha512-AoHTRBUuYwXtZhjXZbA1pGfTo8cJo3vZIcWGLiUcTNgHpJJMC1rVA44ZereBHMJtotyN71S8Qw0npiCIkW96cQ==",
+ "dev": true,
+ "optional": true
+ },
+ "esbuild-windows-arm64": {
+ "version": "0.14.54",
+ "resolved": "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.14.54.tgz",
+ "integrity": "sha512-M0kuUvXhot1zOISQGXwWn6YtS+Y/1RT9WrVIOywZnJHo3jCDyewAc79aKNQWFCQm+xNHVTq9h8dZKvygoXQQRg==",
+ "dev": true,
+ "optional": true
+ },
+ "escalade": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz",
+ "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==",
+ "dev": true
+ },
+ "escape-string-regexp": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
+ "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==",
+ "dev": true
+ },
+ "eslint": {
+ "version": "8.21.0",
+ "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.21.0.tgz",
+ "integrity": "sha512-/XJ1+Qurf1T9G2M5IHrsjp+xrGT73RZf23xA1z5wB1ZzzEAWSZKvRwhWxTFp1rvkvCfwcvAUNAP31bhKTTGfDA==",
+ "dev": true,
+ "requires": {
+ "@eslint/eslintrc": "^1.3.0",
+ "@humanwhocodes/config-array": "^0.10.4",
+ "@humanwhocodes/gitignore-to-minimatch": "^1.0.2",
+ "ajv": "^6.10.0",
+ "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.1.1",
+ "eslint-utils": "^3.0.0",
+ "eslint-visitor-keys": "^3.3.0",
+ "espree": "^9.3.3",
+ "esquery": "^1.4.0",
+ "esutils": "^2.0.2",
+ "fast-deep-equal": "^3.1.3",
+ "file-entry-cache": "^6.0.1",
+ "find-up": "^5.0.0",
+ "functional-red-black-tree": "^1.0.1",
+ "glob-parent": "^6.0.1",
+ "globals": "^13.15.0",
+ "globby": "^11.1.0",
+ "grapheme-splitter": "^1.0.4",
+ "ignore": "^5.2.0",
+ "import-fresh": "^3.0.0",
+ "imurmurhash": "^0.1.4",
+ "is-glob": "^4.0.0",
+ "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.1",
+ "regexpp": "^3.2.0",
+ "strip-ansi": "^6.0.1",
+ "strip-json-comments": "^3.1.0",
+ "text-table": "^0.2.0",
+ "v8-compile-cache": "^2.0.3"
+ }
+ },
+ "eslint-config-prettier": {
+ "version": "8.5.0",
+ "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.5.0.tgz",
+ "integrity": "sha512-obmWKLUNCnhtQRKc+tmnYuQl0pFU1ibYJQ5BGhTVB08bHe9wC8qUeG7c08dj9XX+AuPj1YSGSQIHl1pnDHZR0Q==",
+ "dev": true,
+ "requires": {}
+ },
+ "eslint-plugin-vue": {
+ "version": "9.3.0",
+ "resolved": "https://registry.npmjs.org/eslint-plugin-vue/-/eslint-plugin-vue-9.3.0.tgz",
+ "integrity": "sha512-iscKKkBZgm6fGZwFt6poRoWC0Wy2dQOlwUPW++CiPoQiw1enctV2Hj5DBzzjJZfyqs+FAXhgzL4q0Ww03AgSmQ==",
+ "dev": true,
+ "requires": {
+ "eslint-utils": "^3.0.0",
+ "natural-compare": "^1.4.0",
+ "nth-check": "^2.0.1",
+ "postcss-selector-parser": "^6.0.9",
+ "semver": "^7.3.5",
+ "vue-eslint-parser": "^9.0.1",
+ "xml-name-validator": "^4.0.0"
+ }
+ },
+ "eslint-scope": {
+ "version": "7.1.1",
+ "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz",
+ "integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==",
+ "dev": true,
+ "requires": {
+ "esrecurse": "^4.3.0",
+ "estraverse": "^5.2.0"
+ }
+ },
+ "eslint-utils": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz",
+ "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==",
+ "dev": true,
+ "requires": {
+ "eslint-visitor-keys": "^2.0.0"
+ },
+ "dependencies": {
+ "eslint-visitor-keys": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz",
+ "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==",
+ "dev": true
+ }
+ }
+ },
+ "eslint-visitor-keys": {
+ "version": "3.3.0",
+ "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz",
+ "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==",
+ "dev": true
+ },
+ "espree": {
+ "version": "9.3.3",
+ "resolved": "https://registry.npmjs.org/espree/-/espree-9.3.3.tgz",
+ "integrity": "sha512-ORs1Rt/uQTqUKjDdGCyrtYxbazf5umATSf/K4qxjmZHORR6HJk+2s/2Pqe+Kk49HHINC/xNIrGfgh8sZcll0ng==",
+ "dev": true,
+ "requires": {
+ "acorn": "^8.8.0",
+ "acorn-jsx": "^5.3.2",
+ "eslint-visitor-keys": "^3.3.0"
+ },
+ "dependencies": {
+ "acorn": {
+ "version": "8.8.0",
+ "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.0.tgz",
+ "integrity": "sha512-QOxyigPVrpZ2GXT+PFyZTl6TtOFc5egxHIP9IlQ+RbupQuX4RkT/Bee4/kQuC02Xkzg84JcT7oLYtDIQxp+v7w==",
+ "dev": true
+ }
+ }
+ },
+ "esquery": {
+ "version": "1.4.0",
+ "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz",
+ "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==",
+ "dev": true,
+ "requires": {
+ "estraverse": "^5.1.0"
+ }
+ },
+ "esrecurse": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz",
+ "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==",
+ "dev": true,
+ "requires": {
+ "estraverse": "^5.2.0"
+ }
+ },
+ "estraverse": {
+ "version": "5.3.0",
+ "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz",
+ "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==",
+ "dev": true
+ },
+ "estree-walker": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz",
+ "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w=="
+ },
+ "esutils": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz",
+ "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==",
+ "dev": true
+ },
+ "fast-deep-equal": {
+ "version": "3.1.3",
+ "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
+ "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==",
+ "dev": true
+ },
+ "fast-glob": {
+ "version": "3.2.11",
+ "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.11.tgz",
+ "integrity": "sha512-xrO3+1bxSo3ZVHAnqzyuewYT6aMFHRAd4Kcs92MAonjwQZLsK9d0SF1IyQ3k5PoirxTW0Oe/RqFgMQ6TcNE5Ew==",
+ "dev": true,
+ "requires": {
+ "@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"
+ },
+ "dependencies": {
+ "glob-parent": {
+ "version": "5.1.2",
+ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
+ "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
+ "dev": true,
+ "requires": {
+ "is-glob": "^4.0.1"
+ }
+ }
+ }
+ },
+ "fast-json-stable-stringify": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz",
+ "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==",
+ "dev": true
+ },
+ "fast-levenshtein": {
+ "version": "2.0.6",
+ "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz",
+ "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==",
+ "dev": true
+ },
+ "fastq": {
+ "version": "1.13.0",
+ "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.13.0.tgz",
+ "integrity": "sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==",
+ "dev": true,
+ "requires": {
+ "reusify": "^1.0.4"
+ }
+ },
+ "file-entry-cache": {
+ "version": "6.0.1",
+ "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz",
+ "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==",
+ "dev": true,
+ "requires": {
+ "flat-cache": "^3.0.4"
+ }
+ },
+ "fill-range": {
+ "version": "7.0.1",
+ "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
+ "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
+ "dev": true,
+ "requires": {
+ "to-regex-range": "^5.0.1"
+ }
+ },
+ "find-up": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz",
+ "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==",
+ "dev": true,
+ "requires": {
+ "locate-path": "^6.0.0",
+ "path-exists": "^4.0.0"
+ }
+ },
+ "flat-cache": {
+ "version": "3.0.4",
+ "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz",
+ "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==",
+ "dev": true,
+ "requires": {
+ "flatted": "^3.1.0",
+ "rimraf": "^3.0.2"
+ }
+ },
+ "flatted": {
+ "version": "3.2.6",
+ "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.6.tgz",
+ "integrity": "sha512-0sQoMh9s0BYsm+12Huy/rkKxVu4R1+r96YX5cG44rHV0pQ6iC3Q+mkoMFaGWObMFYQxCVT+ssG1ksneA2MI9KQ==",
+ "dev": true
+ },
+ "follow-redirects": {
+ "version": "1.15.1",
+ "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.1.tgz",
+ "integrity": "sha512-yLAMQs+k0b2m7cVxpS1VKJVvoz7SS9Td1zss3XRwXj+ZDH00RJgnuLx7E44wx02kQLrdM3aOOy+FpzS7+8OizA=="
+ },
+ "form-data": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz",
+ "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==",
+ "requires": {
+ "asynckit": "^0.4.0",
+ "combined-stream": "^1.0.8",
+ "mime-types": "^2.1.12"
+ }
+ },
+ "fraction.js": {
+ "version": "4.2.0",
+ "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz",
+ "integrity": "sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==",
+ "dev": true
+ },
+ "fs.realpath": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
+ "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==",
+ "dev": true
+ },
+ "fsevents": {
+ "version": "2.3.2",
+ "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz",
+ "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==",
+ "dev": true,
+ "optional": true
+ },
+ "function-bind": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
+ "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==",
+ "dev": true
+ },
+ "functional-red-black-tree": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz",
+ "integrity": "sha512-dsKNQNdj6xA3T+QlADDA7mOSlX0qiMINjn0cgr+eGHGsbSHzTabcIogz2+p/iqP1Xs6EP/sS2SbqH+brGTbq0g==",
+ "dev": true
+ },
+ "glob": {
+ "version": "7.2.3",
+ "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz",
+ "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==",
+ "dev": true,
+ "requires": {
+ "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"
+ }
+ },
+ "glob-parent": {
+ "version": "6.0.2",
+ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz",
+ "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==",
+ "dev": true,
+ "requires": {
+ "is-glob": "^4.0.3"
+ }
+ },
+ "globals": {
+ "version": "13.17.0",
+ "resolved": "https://registry.npmjs.org/globals/-/globals-13.17.0.tgz",
+ "integrity": "sha512-1C+6nQRb1GwGMKm2dH/E7enFAMxGTmGI7/dEdhy/DNelv85w9B72t3uc5frtMNXIbzrarJJ/lTCjcaZwbLJmyw==",
+ "dev": true,
+ "requires": {
+ "type-fest": "^0.20.2"
+ }
+ },
+ "globby": {
+ "version": "11.1.0",
+ "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz",
+ "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==",
+ "dev": true,
+ "requires": {
+ "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"
+ }
+ },
+ "grapheme-splitter": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz",
+ "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==",
+ "dev": true
+ },
+ "has": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
+ "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==",
+ "dev": true,
+ "requires": {
+ "function-bind": "^1.1.1"
+ }
+ },
+ "has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "dev": true
+ },
+ "ignore": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.0.tgz",
+ "integrity": "sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==",
+ "dev": true
+ },
+ "import-fresh": {
+ "version": "3.3.0",
+ "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz",
+ "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==",
+ "dev": true,
+ "requires": {
+ "parent-module": "^1.0.0",
+ "resolve-from": "^4.0.0"
+ }
+ },
+ "imurmurhash": {
+ "version": "0.1.4",
+ "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
+ "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==",
+ "dev": true
+ },
+ "inflight": {
+ "version": "1.0.6",
+ "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
+ "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==",
+ "dev": true,
+ "requires": {
+ "once": "^1.3.0",
+ "wrappy": "1"
+ }
+ },
+ "inherits": {
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
+ "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
+ "dev": true
+ },
+ "is-binary-path": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz",
+ "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==",
+ "dev": true,
+ "requires": {
+ "binary-extensions": "^2.0.0"
+ }
+ },
+ "is-core-module": {
+ "version": "2.10.0",
+ "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.10.0.tgz",
+ "integrity": "sha512-Erxj2n/LDAZ7H8WNJXd9tw38GYM3dv8rk8Zcs+jJuxYTW7sozH+SS8NtrSjVL1/vpLvWi1hxy96IzjJ3EHTJJg==",
+ "dev": true,
+ "requires": {
+ "has": "^1.0.3"
+ }
+ },
+ "is-extglob": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
+ "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==",
+ "dev": true
+ },
+ "is-glob": {
+ "version": "4.0.3",
+ "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz",
+ "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==",
+ "dev": true,
+ "requires": {
+ "is-extglob": "^2.1.1"
+ }
+ },
+ "is-number": {
+ "version": "7.0.0",
+ "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
+ "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
+ "dev": true
+ },
+ "isexe": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
+ "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==",
+ "dev": true
+ },
+ "js-yaml": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz",
+ "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==",
+ "dev": true,
+ "requires": {
+ "argparse": "^2.0.1"
+ }
+ },
+ "json-schema-traverse": {
+ "version": "0.4.1",
+ "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
+ "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==",
+ "dev": true
+ },
+ "json-stable-stringify-without-jsonify": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz",
+ "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==",
+ "dev": true
+ },
+ "levn": {
+ "version": "0.4.1",
+ "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz",
+ "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==",
+ "dev": true,
+ "requires": {
+ "prelude-ls": "^1.2.1",
+ "type-check": "~0.4.0"
+ }
+ },
+ "lilconfig": {
+ "version": "2.0.6",
+ "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.0.6.tgz",
+ "integrity": "sha512-9JROoBW7pobfsx+Sq2JsASvCo6Pfo6WWoUW79HuB1BCoBXD4PLWJPqDF6fNj67pqBYTbAHkE57M1kS/+L1neOg==",
+ "dev": true
+ },
+ "locate-path": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz",
+ "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==",
+ "dev": true,
+ "requires": {
+ "p-locate": "^5.0.0"
+ }
+ },
+ "lodash": {
+ "version": "4.17.21",
+ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz",
+ "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==",
+ "dev": true
+ },
+ "lodash.castarray": {
+ "version": "4.4.0",
+ "resolved": "https://registry.npmjs.org/lodash.castarray/-/lodash.castarray-4.4.0.tgz",
+ "integrity": "sha512-aVx8ztPv7/2ULbArGJ2Y42bG1mEQ5mGjpdvrbJcJFU3TbYybe+QlLS4pst9zV52ymy2in1KpFPiZnAOATxD4+Q==",
+ "dev": true
+ },
+ "lodash.isplainobject": {
+ "version": "4.0.6",
+ "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz",
+ "integrity": "sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==",
+ "dev": true
+ },
+ "lodash.merge": {
+ "version": "4.6.2",
+ "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz",
+ "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==",
+ "dev": true
+ },
+ "lru-cache": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
+ "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
+ "dev": true,
+ "requires": {
+ "yallist": "^4.0.0"
+ }
+ },
+ "magic-string": {
+ "version": "0.25.9",
+ "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.9.tgz",
+ "integrity": "sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==",
+ "requires": {
+ "sourcemap-codec": "^1.4.8"
+ }
+ },
+ "merge2": {
+ "version": "1.4.1",
+ "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz",
+ "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==",
+ "dev": true
+ },
+ "micromatch": {
+ "version": "4.0.5",
+ "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz",
+ "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==",
+ "dev": true,
+ "requires": {
+ "braces": "^3.0.2",
+ "picomatch": "^2.3.1"
+ }
+ },
+ "mime-db": {
+ "version": "1.52.0",
+ "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz",
+ "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg=="
+ },
+ "mime-types": {
+ "version": "2.1.35",
+ "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz",
+ "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==",
+ "requires": {
+ "mime-db": "1.52.0"
+ }
+ },
+ "mini-svg-data-uri": {
+ "version": "1.4.4",
+ "resolved": "https://registry.npmjs.org/mini-svg-data-uri/-/mini-svg-data-uri-1.4.4.tgz",
+ "integrity": "sha512-r9deDe9p5FJUPZAk3A59wGH7Ii9YrjjWw0jmw/liSbHl2CHiyXj6FcDXDu2K3TjVAXqiJdaw3xxwlZZr9E6nHg==",
+ "dev": true
+ },
+ "minimatch": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
+ "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
+ "dev": true,
+ "requires": {
+ "brace-expansion": "^1.1.7"
+ }
+ },
+ "minimist": {
+ "version": "1.2.6",
+ "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz",
+ "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==",
+ "dev": true
+ },
+ "ms": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
+ "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
+ "dev": true
+ },
+ "nanoid": {
+ "version": "3.3.4",
+ "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz",
+ "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw=="
+ },
+ "natural-compare": {
+ "version": "1.4.0",
+ "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz",
+ "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==",
+ "dev": true
+ },
+ "node-releases": {
+ "version": "2.0.6",
+ "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.6.tgz",
+ "integrity": "sha512-PiVXnNuFm5+iYkLBNeq5211hvO38y63T0i2KKh2KnUs3RpzJ+JtODFjkD8yjLwnDkTYF1eKXheUwdssR+NRZdg==",
+ "dev": true
+ },
+ "normalize-path": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz",
+ "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==",
+ "dev": true
+ },
+ "normalize-range": {
+ "version": "0.1.2",
+ "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz",
+ "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==",
+ "dev": true
+ },
+ "nth-check": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz",
+ "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==",
+ "dev": true,
+ "requires": {
+ "boolbase": "^1.0.0"
+ }
+ },
+ "object-hash": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-3.0.0.tgz",
+ "integrity": "sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==",
+ "dev": true
+ },
+ "once": {
+ "version": "1.4.0",
+ "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
+ "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==",
+ "dev": true,
+ "requires": {
+ "wrappy": "1"
+ }
+ },
+ "optionator": {
+ "version": "0.9.1",
+ "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz",
+ "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==",
+ "dev": true,
+ "requires": {
+ "deep-is": "^0.1.3",
+ "fast-levenshtein": "^2.0.6",
+ "levn": "^0.4.1",
+ "prelude-ls": "^1.2.1",
+ "type-check": "^0.4.0",
+ "word-wrap": "^1.2.3"
+ }
+ },
+ "p-limit": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz",
+ "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==",
+ "dev": true,
+ "requires": {
+ "yocto-queue": "^0.1.0"
+ }
+ },
+ "p-locate": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz",
+ "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==",
+ "dev": true,
+ "requires": {
+ "p-limit": "^3.0.2"
+ }
+ },
+ "parent-module": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
+ "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
+ "dev": true,
+ "requires": {
+ "callsites": "^3.0.0"
+ }
+ },
+ "path-exists": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
+ "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==",
+ "dev": true
+ },
+ "path-is-absolute": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
+ "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==",
+ "dev": true
+ },
+ "path-key": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
+ "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==",
+ "dev": true
+ },
+ "path-parse": {
+ "version": "1.0.7",
+ "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz",
+ "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==",
+ "dev": true
+ },
+ "path-type": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz",
+ "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==",
+ "dev": true
+ },
+ "picocolors": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz",
+ "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ=="
+ },
+ "picomatch": {
+ "version": "2.3.1",
+ "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz",
+ "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==",
+ "dev": true
+ },
+ "pify": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
+ "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==",
+ "dev": true
+ },
+ "postcss": {
+ "version": "8.4.16",
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.16.tgz",
+ "integrity": "sha512-ipHE1XBvKzm5xI7hiHCZJCSugxvsdq2mPnsq5+UF+VHCjiBvtDrlxJfMBToWaP9D5XlgNmcFGqoHmUn0EYEaRQ==",
+ "requires": {
+ "nanoid": "^3.3.4",
+ "picocolors": "^1.0.0",
+ "source-map-js": "^1.0.2"
+ }
+ },
+ "postcss-import": {
+ "version": "14.1.0",
+ "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-14.1.0.tgz",
+ "integrity": "sha512-flwI+Vgm4SElObFVPpTIT7SU7R3qk2L7PyduMcokiaVKuWv9d/U+Gm/QAd8NDLuykTWTkcrjOeD2Pp1rMeBTGw==",
+ "dev": true,
+ "requires": {
+ "postcss-value-parser": "^4.0.0",
+ "read-cache": "^1.0.0",
+ "resolve": "^1.1.7"
+ }
+ },
+ "postcss-js": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/postcss-js/-/postcss-js-4.0.0.tgz",
+ "integrity": "sha512-77QESFBwgX4irogGVPgQ5s07vLvFqWr228qZY+w6lW599cRlK/HmnlivnnVUxkjHnCu4J16PDMHcH+e+2HbvTQ==",
+ "dev": true,
+ "requires": {
+ "camelcase-css": "^2.0.1"
+ }
+ },
+ "postcss-load-config": {
+ "version": "3.1.4",
+ "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-3.1.4.tgz",
+ "integrity": "sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==",
+ "dev": true,
+ "requires": {
+ "lilconfig": "^2.0.5",
+ "yaml": "^1.10.2"
+ }
+ },
+ "postcss-nested": {
+ "version": "5.0.6",
+ "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-5.0.6.tgz",
+ "integrity": "sha512-rKqm2Fk0KbA8Vt3AdGN0FB9OBOMDVajMG6ZCf/GoHgdxUJ4sBFp0A/uMIRm+MJUdo33YXEtjqIz8u7DAp8B7DA==",
+ "dev": true,
+ "requires": {
+ "postcss-selector-parser": "^6.0.6"
+ }
+ },
+ "postcss-selector-parser": {
+ "version": "6.0.10",
+ "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.10.tgz",
+ "integrity": "sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w==",
+ "dev": true,
+ "requires": {
+ "cssesc": "^3.0.0",
+ "util-deprecate": "^1.0.2"
+ }
+ },
+ "postcss-value-parser": {
+ "version": "4.2.0",
+ "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz",
+ "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==",
+ "dev": true
+ },
+ "prelude-ls": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz",
+ "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==",
+ "dev": true
+ },
+ "prettier": {
+ "version": "2.7.1",
+ "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.7.1.tgz",
+ "integrity": "sha512-ujppO+MkdPqoVINuDFDRLClm7D78qbDt0/NR+wp5FqEZOoTNAjPHWj17QRhu7geIHJfcNhRk1XVQmF8Bp3ye+g==",
+ "dev": true
+ },
+ "punycode": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz",
+ "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==",
+ "dev": true
+ },
+ "queue-microtask": {
+ "version": "1.2.3",
+ "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz",
+ "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==",
+ "dev": true
+ },
+ "quick-lru": {
+ "version": "5.1.1",
+ "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz",
+ "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==",
+ "dev": true
+ },
+ "read-cache": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz",
+ "integrity": "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==",
+ "dev": true,
+ "requires": {
+ "pify": "^2.3.0"
+ }
+ },
+ "readdirp": {
+ "version": "3.6.0",
+ "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz",
+ "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==",
+ "dev": true,
+ "requires": {
+ "picomatch": "^2.2.1"
+ }
+ },
+ "regexpp": {
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz",
+ "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==",
+ "dev": true
+ },
+ "resolve": {
+ "version": "1.22.1",
+ "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz",
+ "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==",
+ "dev": true,
+ "requires": {
+ "is-core-module": "^2.9.0",
+ "path-parse": "^1.0.7",
+ "supports-preserve-symlinks-flag": "^1.0.0"
+ }
+ },
+ "resolve-from": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
+ "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",
+ "dev": true
+ },
+ "reusify": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz",
+ "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==",
+ "dev": true
+ },
+ "rimraf": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
+ "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
+ "dev": true,
+ "requires": {
+ "glob": "^7.1.3"
+ }
+ },
+ "rollup": {
+ "version": "2.77.3",
+ "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.77.3.tgz",
+ "integrity": "sha512-/qxNTG7FbmefJWoeeYJFbHehJ2HNWnjkAFRKzWN/45eNBBF/r8lo992CwcJXEzyVxs5FmfId+vTSTQDb+bxA+g==",
+ "dev": true,
+ "requires": {
+ "fsevents": "~2.3.2"
+ }
+ },
+ "run-parallel": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz",
+ "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==",
+ "dev": true,
+ "requires": {
+ "queue-microtask": "^1.2.2"
+ }
+ },
+ "semver": {
+ "version": "7.3.7",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz",
+ "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==",
+ "dev": true,
+ "requires": {
+ "lru-cache": "^6.0.0"
+ }
+ },
+ "shebang-command": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
+ "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==",
+ "dev": true,
+ "requires": {
+ "shebang-regex": "^3.0.0"
+ }
+ },
+ "shebang-regex": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz",
+ "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==",
+ "dev": true
+ },
+ "slash": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz",
+ "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==",
+ "dev": true
+ },
+ "source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g=="
+ },
+ "source-map-js": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz",
+ "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw=="
+ },
+ "sourcemap-codec": {
+ "version": "1.4.8",
+ "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz",
+ "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA=="
+ },
+ "strip-ansi": {
+ "version": "6.0.1",
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
+ "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
+ "dev": true,
+ "requires": {
+ "ansi-regex": "^5.0.1"
+ }
+ },
+ "strip-json-comments": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz",
+ "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==",
+ "dev": true
+ },
+ "supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "requires": {
+ "has-flag": "^4.0.0"
+ }
+ },
+ "supports-preserve-symlinks-flag": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz",
+ "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==",
+ "dev": true
+ },
+ "tailwindcss": {
+ "version": "3.1.8",
+ "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.1.8.tgz",
+ "integrity": "sha512-YSneUCZSFDYMwk+TGq8qYFdCA3yfBRdBlS7txSq0LUmzyeqRe3a8fBQzbz9M3WS/iFT4BNf/nmw9mEzrnSaC0g==",
+ "dev": true,
+ "requires": {
+ "arg": "^5.0.2",
+ "chokidar": "^3.5.3",
+ "color-name": "^1.1.4",
+ "detective": "^5.2.1",
+ "didyoumean": "^1.2.2",
+ "dlv": "^1.1.3",
+ "fast-glob": "^3.2.11",
+ "glob-parent": "^6.0.2",
+ "is-glob": "^4.0.3",
+ "lilconfig": "^2.0.6",
+ "normalize-path": "^3.0.0",
+ "object-hash": "^3.0.0",
+ "picocolors": "^1.0.0",
+ "postcss": "^8.4.14",
+ "postcss-import": "^14.1.0",
+ "postcss-js": "^4.0.0",
+ "postcss-load-config": "^3.1.4",
+ "postcss-nested": "5.0.6",
+ "postcss-selector-parser": "^6.0.10",
+ "postcss-value-parser": "^4.2.0",
+ "quick-lru": "^5.1.1",
+ "resolve": "^1.22.1"
+ }
+ },
+ "text-table": {
+ "version": "0.2.0",
+ "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
+ "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==",
+ "dev": true
+ },
+ "to-regex-range": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
+ "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
+ "dev": true,
+ "requires": {
+ "is-number": "^7.0.0"
+ }
+ },
+ "tslib": {
+ "version": "1.14.1",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
+ "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
+ "dev": true
+ },
+ "tsutils": {
+ "version": "3.21.0",
+ "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz",
+ "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==",
+ "dev": true,
+ "requires": {
+ "tslib": "^1.8.1"
+ }
+ },
+ "type-check": {
+ "version": "0.4.0",
+ "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz",
+ "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==",
+ "dev": true,
+ "requires": {
+ "prelude-ls": "^1.2.1"
+ }
+ },
+ "type-fest": {
+ "version": "0.20.2",
+ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz",
+ "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==",
+ "dev": true
+ },
+ "typescript": {
+ "version": "4.7.4",
+ "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.7.4.tgz",
+ "integrity": "sha512-C0WQT0gezHuw6AdY1M2jxUO83Rjf0HP7Sk1DtXj6j1EwkQNZrHAg2XPWlq62oqEhYvONq5pkC2Y9oPljWToLmQ==",
+ "dev": true
+ },
+ "update-browserslist-db": {
+ "version": "1.0.5",
+ "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.5.tgz",
+ "integrity": "sha512-dteFFpCyvuDdr9S/ff1ISkKt/9YZxKjI9WlRR99c180GaztJtRa/fn18FdxGVKVsnPY7/a/FDN68mcvUmP4U7Q==",
+ "dev": true,
+ "requires": {
+ "escalade": "^3.1.1",
+ "picocolors": "^1.0.0"
+ }
+ },
+ "uri-js": {
+ "version": "4.4.1",
+ "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz",
+ "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==",
+ "dev": true,
+ "requires": {
+ "punycode": "^2.1.0"
+ }
+ },
+ "util-deprecate": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
+ "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==",
+ "dev": true
+ },
+ "v8-compile-cache": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz",
+ "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==",
+ "dev": true
+ },
+ "vite": {
+ "version": "3.0.6",
+ "resolved": "https://registry.npmjs.org/vite/-/vite-3.0.6.tgz",
+ "integrity": "sha512-pjfsWIzfUlQME/VAmU6SsjdHkTt6WAHysuqPkHDcjzNu6IGtxDSZ/VfRYOwHaCqX4M3Ivz0kxuSfAPM6gAIX+w==",
+ "dev": true,
+ "requires": {
+ "esbuild": "^0.14.47",
+ "fsevents": "~2.3.2",
+ "postcss": "^8.4.16",
+ "resolve": "^1.22.1",
+ "rollup": ">=2.75.6 <2.77.0 || ~2.77.0"
+ }
+ },
+ "vue": {
+ "version": "3.2.37",
+ "resolved": "https://registry.npmjs.org/vue/-/vue-3.2.37.tgz",
+ "integrity": "sha512-bOKEZxrm8Eh+fveCqS1/NkG/n6aMidsI6hahas7pa0w/l7jkbssJVsRhVDs07IdDq7h9KHswZOgItnwJAgtVtQ==",
+ "requires": {
+ "@vue/compiler-dom": "3.2.37",
+ "@vue/compiler-sfc": "3.2.37",
+ "@vue/runtime-dom": "3.2.37",
+ "@vue/server-renderer": "3.2.37",
+ "@vue/shared": "3.2.37"
+ }
+ },
+ "vue-eslint-parser": {
+ "version": "9.0.3",
+ "resolved": "https://registry.npmjs.org/vue-eslint-parser/-/vue-eslint-parser-9.0.3.tgz",
+ "integrity": "sha512-yL+ZDb+9T0ELG4VIFo/2anAOz8SvBdlqEnQnvJ3M7Scq56DvtjY0VY88bByRZB0D4J0u8olBcfrXTVONXsh4og==",
+ "dev": true,
+ "requires": {
+ "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-i18n": {
+ "version": "9.2.2",
+ "resolved": "https://registry.npmjs.org/vue-i18n/-/vue-i18n-9.2.2.tgz",
+ "integrity": "sha512-yswpwtj89rTBhegUAv9Mu37LNznyu3NpyLQmozF3i1hYOhwpG8RjcjIFIIfnu+2MDZJGSZPXaKWvnQA71Yv9TQ==",
+ "requires": {
+ "@intlify/core-base": "9.2.2",
+ "@intlify/shared": "9.2.2",
+ "@intlify/vue-devtools": "9.2.2",
+ "@vue/devtools-api": "^6.2.1"
+ }
+ },
+ "vue-router": {
+ "version": "4.1.3",
+ "resolved": "https://registry.npmjs.org/vue-router/-/vue-router-4.1.3.tgz",
+ "integrity": "sha512-XvK81bcYglKiayT7/vYAg/f36ExPC4t90R/HIpzrZ5x+17BOWptXLCrEPufGgZeuq68ww4ekSIMBZY1qdUdfjA==",
+ "requires": {
+ "@vue/devtools-api": "^6.1.4"
+ }
+ },
+ "vue-tsc": {
+ "version": "0.39.5",
+ "resolved": "https://registry.npmjs.org/vue-tsc/-/vue-tsc-0.39.5.tgz",
+ "integrity": "sha512-jhTsrKhZkafpIeN4Cbhr1K53hNfa/oesSrlh7hUaeHyCk55VhZT6oJkwJbtqN4MYkWZIwPrm3/xTwsELuf2ocg==",
+ "dev": true,
+ "requires": {
+ "@volar/vue-language-core": "0.39.5",
+ "@volar/vue-typescript": "0.39.5"
+ }
+ },
+ "which": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
+ "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
+ "dev": true,
+ "requires": {
+ "isexe": "^2.0.0"
+ }
+ },
+ "word-wrap": {
+ "version": "1.2.3",
+ "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz",
+ "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==",
+ "dev": true
+ },
+ "wrappy": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
+ "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==",
+ "dev": true
+ },
+ "xml-name-validator": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-4.0.0.tgz",
+ "integrity": "sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw==",
+ "dev": true
+ },
+ "xtend": {
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz",
+ "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==",
+ "dev": true
+ },
+ "yallist": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
+ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
+ "dev": true
+ },
+ "yaml": {
+ "version": "1.10.2",
+ "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz",
+ "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==",
+ "dev": true
+ },
+ "yocto-queue": {
+ "version": "0.1.0",
+ "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz",
+ "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==",
+ "dev": true
+ }
+ }
+}
diff --git a/package.json b/package.json
index ca33a59..1e5b44b 100644
--- a/package.json
+++ b/package.json
@@ -1,38 +1,35 @@
{
- "name": "ryujinx_website",
- "version": "2.0.0",
- "description": "Ryujinx Website",
- "private": true,
+ "name": "ryujinx-website",
+ "version": "3.0.0",
"scripts": {
- "build": "npx gridsome build",
- "develop": "npx gridsome develop",
- "explore": "npx gridsome explore",
- "deploy": "npm run build && npx purgecss --config purgecss.config.js --output dist/assets/css/ && npx babel -d dist dist"
+ "dev": "vite",
+ "build": "vue-tsc --noEmit && vite build",
+ "preview": "vite preview"
},
"dependencies": {
- "@babel/polyfill": "^7.12.1",
- "@gridsome/plugin-google-analytics": "^0.1.2",
- "core-js": "^3.8.3",
- "gridsome": "^0.7.23",
- "vuetify": "2.3.3"
+ "vue": "^3.2.37",
+ "vue-router": "^4.1.3",
+ "vue-i18n": "^9.2.2",
+ "@heroicons/vue": "^1.0.6",
+ "axios": "^0.27.2",
+ "dayjs": "^1.11.5"
},
"devDependencies": {
- "@babel/cli": "^7.12.10",
- "@babel/core": "^7.12.10",
- "@babel/preset-env": "^7.12.11",
- "@gridsome/cli": "^0.3.4",
- "@gridsome/plugin-sitemap": "^0.4.0",
- "babel-preset-minify": "^0.5.1",
- "deepmerge": "^4.2.2",
- "eslint": "^7.18.0",
- "eslint-plugin-vue": "^7.5.0",
- "eslint-plugin-vuetify": "^1.0.0-beta.7",
- "fibers": "^5.0.0",
- "gridsome-plugin-robots-txt": "^1.0.2",
- "purgecss": "^4.0.0",
- "sass": "^1.32.5",
- "sass-loader": "7.3.1",
- "vuetify-loader": "^1.6.0",
- "webpack-node-externals": "^2.5.2"
+ "@vitejs/plugin-vue": "^3.0.2",
+ "autoprefixer": "^10.4.8",
+ "postcss": "^8.4.16",
+ "tailwindcss": "^3.1.8",
+ "typescript": "^4.6.4",
+ "vite": "^3.0.6",
+ "vue-tsc": "^0.39.5",
+ "prettier": "^2.7.1",
+ "eslint": "^8.21.0",
+ "eslint-config-prettier": "^8.5.0",
+ "eslint-plugin-vue": "^9.3.0",
+ "@vue/eslint-config-typescript": "^11.0.0",
+ "@tailwindcss/aspect-ratio": "^0.4.0",
+ "@tailwindcss/forms": "^0.5.2",
+ "@tailwindcss/typography": "^0.5.4",
+ "@types/node": "16.11.48"
}
}
diff --git a/postcss.config.js b/postcss.config.js
new file mode 100644
index 0000000..33ad091
--- /dev/null
+++ b/postcss.config.js
@@ -0,0 +1,6 @@
+module.exports = {
+ plugins: {
+ tailwindcss: {},
+ autoprefixer: {},
+ },
+}
diff --git a/src/favicon.png b/public/assets/images/favicon.png
similarity index 100%
rename from src/favicon.png
rename to public/assets/images/favicon.png
diff --git a/public/assets/images/icons/linux.png b/public/assets/images/icons/linux.png
new file mode 100644
index 0000000..c85b71d
Binary files /dev/null and b/public/assets/images/icons/linux.png differ
diff --git a/public/assets/images/icons/macos.png b/public/assets/images/icons/macos.png
new file mode 100644
index 0000000..651ab53
Binary files /dev/null and b/public/assets/images/icons/macos.png differ
diff --git a/public/assets/images/icons/windows.png b/public/assets/images/icons/windows.png
new file mode 100644
index 0000000..e472ef5
Binary files /dev/null and b/public/assets/images/icons/windows.png differ
diff --git a/src/assets/logo.png b/public/assets/images/logo.png
similarity index 100%
rename from src/assets/logo.png
rename to public/assets/images/logo.png
diff --git a/static/public/shell.png b/public/assets/images/shell.png
similarity index 100%
rename from static/public/shell.png
rename to public/assets/images/shell.png
diff --git a/src/assets/wallp.png b/public/assets/images/wallp.png
similarity index 100%
rename from src/assets/wallp.png
rename to public/assets/images/wallp.png
diff --git a/src/assets/wallp2.png b/public/assets/images/wallp2.png
similarity index 100%
rename from src/assets/wallp2.png
rename to public/assets/images/wallp2.png
diff --git a/public/sitemap.xml b/public/sitemap.xml
new file mode 100644
index 0000000..5407e85
--- /dev/null
+++ b/public/sitemap.xml
@@ -0,0 +1,13 @@
+
+
+
+
+ https://ryujinx.org/download/
+
+
+ https://ryujinx.org/contribute/
+
+
+ https://ryujinx.org/
+
+
diff --git a/purgecss.config.js b/purgecss.config.js
deleted file mode 100644
index b36b9b7..0000000
--- a/purgecss.config.js
+++ /dev/null
@@ -1,4 +0,0 @@
-module.exports = {
- content: ['dist/**/*.html', 'dist/assets/js/*.js'],
- css: ['dist/assets/css/*.css']
-}
\ No newline at end of file
diff --git a/src/App.vue b/src/App.vue
new file mode 100644
index 0000000..ab91ce8
--- /dev/null
+++ b/src/App.vue
@@ -0,0 +1,11 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/assets/tailkit.css b/src/assets/tailkit.css
new file mode 100644
index 0000000..b5c61c9
--- /dev/null
+++ b/src/assets/tailkit.css
@@ -0,0 +1,3 @@
+@tailwind base;
+@tailwind components;
+@tailwind utilities;
diff --git a/src/assets/wallp3.png b/src/assets/wallp3.png
deleted file mode 100644
index 7171fe3..0000000
Binary files a/src/assets/wallp3.png and /dev/null differ
diff --git a/src/common/components/BaseFooter.vue b/src/common/components/BaseFooter.vue
new file mode 100644
index 0000000..a19e60b
--- /dev/null
+++ b/src/common/components/BaseFooter.vue
@@ -0,0 +1,44 @@
+
+
+
+
+
diff --git a/src/common/components/BaseHeader.vue b/src/common/components/BaseHeader.vue
new file mode 100644
index 0000000..43cfd64
--- /dev/null
+++ b/src/common/components/BaseHeader.vue
@@ -0,0 +1,30 @@
+
+
+
+
+
diff --git a/src/common/components/BaseHomeHeader.vue b/src/common/components/BaseHomeHeader.vue
new file mode 100644
index 0000000..bd37119
--- /dev/null
+++ b/src/common/components/BaseHomeHeader.vue
@@ -0,0 +1,81 @@
+
+
+
+
+
+
+
+
+
+
+
+ {{ t("header.author") }}
+
+
+
+ {{ t("header.getStarted") }}
+
+ {{ t("header.contribute") }}
+
+
+
+
+
diff --git a/src/common/components/generic/GButton.vue b/src/common/components/generic/GButton.vue
new file mode 100644
index 0000000..e88af58
--- /dev/null
+++ b/src/common/components/generic/GButton.vue
@@ -0,0 +1,207 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/common/components/navigations/BaseNavigation.vue b/src/common/components/navigations/BaseNavigation.vue
new file mode 100644
index 0000000..22ac9b0
--- /dev/null
+++ b/src/common/components/navigations/BaseNavigation.vue
@@ -0,0 +1,41 @@
+
+
+
+
+
+
+ {{ node.name }}
+
+
+
+ {{ node.name }}
+
+
+
+
diff --git a/src/common/constants/buttonColors.ts b/src/common/constants/buttonColors.ts
new file mode 100644
index 0000000..7906432
--- /dev/null
+++ b/src/common/constants/buttonColors.ts
@@ -0,0 +1,24 @@
+export const buttonClassic =
+ "border-gray-300 bg-white text-gray-800 shadow-sm hover:text-gray-800 hover:bg-gray-100 hover:border-gray-300 hover:shadow focus:ring focus:ring-gray-500 focus:ring-opacity-25 active:bg-white active:border-white active:shadow-none";
+export const buttonEmerald =
+ "border-emerald-700 bg-emerald-700 text-white hover:text-white hover:bg-emerald-800 hover:border-emerald-800 focus:ring focus:ring-emerald-500 focus:ring-opacity-50 active:bg-emerald-700 active:border-emerald-700";
+export const buttonOrange =
+ "border-orange-700 bg-orange-700 text-white hover:text-white hover:bg-orange-800 hover:border-orange-800 focus:ring focus:ring-orange-500 focus:ring-opacity-50 active:bg-orange-700 active:border-orange-700";
+export const buttonRed =
+ "border-red-500 bg-red-500 text-white hover:text-white hover:bg-red-700 hover:border-red-700 focus:ring focus:ring-red-500 focus:ring-opacity-50 active:bg-red-700 active:border-red-700";
+export const buttonBlue =
+ "border-blue-700 bg-blue-700 text-white hover:text-white hover:bg-blue-800 hover:border-blue-800 focus:ring focus:ring-blue-500 focus:ring-opacity-50 active:bg-blue-700 active:border-blue-700";
+export const buttonSky =
+ "border-sky-500 bg-sky-500 text-white hover:text-white hover:bg-sky-700 hover:border-sky-700 focus:ring focus:ring-sky-700 focus:ring-opacity-50 active:bg-sky-700 active:border-sky-700";
+export const buttonPink =
+ "border-pink-700 bg-pink-700 text-white hover:text-white hover:bg-pink-800 hover:border-pink-800 focus:ring focus:ring-pink-500 focus:ring-opacity-50 active:bg-pink-700 active:border-pink-700";
+export const buttonGrey =
+ "border-gray-700 bg-gray-700 text-white hover:text-white hover:bg-gray-800 hover:border-gray-800 focus:ring focus:ring-gray-500 focus:ring-opacity-25 active:bg-gray-700 active:border-gray-700";
+export const buttonLightBlue =
+ "border-blue-200 bg-blue-200 text-blue-700 hover:text-blue-700 hover:bg-blue-300 hover:border-blue-300 focus:ring focus:ring-blue-500 focus:ring-opacity-50 active:bg-blue-200 active:border-blue-200";
+export const buttonLightRed =
+ "border-red-200 bg-red-200 text-red-700 hover:text-red-700 hover:bg-red-300 hover:border-red-300 focus:ring focus:ring-red-500 focus:ring-opacity-50 active:bg-red-200 active:border-red-200";
+export const buttonLightOrange =
+ "border-orange-200 bg-orange-200 text-orange-700 hover:text-orange-700 hover:bg-orange-300 hover:border-orange-300 focus:ring focus:ring-orange-500 focus:ring-opacity-50 active:bg-orange-200 active:border-orange-200";
+export const buttonLightGray =
+ "border-gray-200 bg-gray-200 text-gray-700 hover:text-gray-700 hover:bg-gray-300 hover:border-gray-300 focus:ring focus:ring-gray-500 focus:ring-opacity-50 active:bg-gray-200 active:border-gray-200";
diff --git a/src/common/constants/navigation.ts b/src/common/constants/navigation.ts
new file mode 100644
index 0000000..e915293
--- /dev/null
+++ b/src/common/constants/navigation.ts
@@ -0,0 +1,27 @@
+import { NavigationNode } from "@/types";
+import { i18n } from "@/i18n";
+
+console.log()
+
+export const navigations: NavigationNode[] = [
+ {
+ name : i18n.global.t("navigations.blog"),
+ href: import.meta.env.VITE_BLOG_URL as string
+ },
+ {
+ name : i18n.global.t("navigations.download"),
+ to: "download"
+ },
+ {
+ name : i18n.global.t("navigations.guide"),
+ href: import.meta.env.VITE_GUIDE_URL
+ },
+ {
+ name : i18n.global.t("navigations.faq"),
+ href: import.meta.env.VITE_FAQ_URL
+ },
+ {
+ name : i18n.global.t("navigations.compatibility"),
+ href: import.meta.env.VITE_COMPATIBILITY_URL
+ }
+];
diff --git a/src/common/constants/teams.ts b/src/common/constants/teams.ts
new file mode 100644
index 0000000..69640cd
--- /dev/null
+++ b/src/common/constants/teams.ts
@@ -0,0 +1,58 @@
+import { Member } from "@/types";
+
+export const teamMembers: Member[] = [
+ {
+ name: "gdkchan",
+ githubName: "gdkchan",
+ avatar: "https://avatars2.githubusercontent.com/u/5624669?s=144&v=4",
+ title: "Lead Developer",
+ },
+ {
+ name: "Ac_K",
+ githubName: "AcK77",
+ avatar: "https://avatars3.githubusercontent.com/u/4905390?s=144&v=4",
+ title: "Developer",
+ },
+ {
+ name: "Thog",
+ githubName: "Thog",
+ avatar: "https://avatars3.githubusercontent.com/u/1760003?s=144&v=4",
+ title: "Developer",
+ },
+ {
+ name: "riperiperi",
+ githubName: "riperiperi",
+ avatar: "https://avatars3.githubusercontent.com/u/6294155?s=144&v=4",
+ title: "Developer",
+ },
+ {
+ name: "LDj3SNuD",
+ githubName: "LDj3SNuD",
+ avatar: "https://avatars3.githubusercontent.com/u/35856442?s=144&v=4",
+ title: "Developer",
+ },
+ {
+ name: "emmauss",
+ githubName: "emmauss",
+ avatar: "https://avatars3.githubusercontent.com/u/5307160?s=144&v=4",
+ title: "Developer",
+ },
+ {
+ name: "Moosehunter",
+ githubName: "Thealexbarney",
+ avatar: "https://avatars0.githubusercontent.com/u/601603?s=144&v=4",
+ title: "Developer",
+ },
+ {
+ name: "Lordmau5",
+ githubName: "Lordmau5",
+ avatar: "https://avatars0.githubusercontent.com/u/1345036?s=144&v=4\"",
+ title: "Web Designer",
+ },
+ {
+ name: "Yoshiyes",
+ githubName: "Yoshiyes",
+ avatar: "https://avatars.githubusercontent.com/u/20050570?s=144&v=4\"",
+ title: "Web Designer / Developer",
+ },
+];
diff --git a/src/components/.gitkeep b/src/components/.gitkeep
deleted file mode 100644
index e69de29..0000000
diff --git a/src/components/DownloadButton.vue b/src/components/DownloadButton.vue
deleted file mode 100644
index 39bbd7f..0000000
--- a/src/components/DownloadButton.vue
+++ /dev/null
@@ -1,36 +0,0 @@
-
-
-
-
-
- fab fa-{{ platform }}
-
-
-
- {{ version }}
-
-
-
-
\ No newline at end of file
diff --git a/src/components/SEO.vue b/src/components/SEO.vue
deleted file mode 100644
index 80400e9..0000000
--- a/src/components/SEO.vue
+++ /dev/null
@@ -1,61 +0,0 @@
-
-
-
-
-query {
- metadata {
- siteAuthor
- siteCopyright
- siteName
- siteUrl
- siteDescription
- siteKeywords
- siteTwitter
- coverImage
- }
-}
-
-
-
\ No newline at end of file
diff --git a/src/external/fontawesome/css/fontawesome-all.css b/src/external/fontawesome/css/fontawesome-all.css
deleted file mode 100644
index bc9a3bf..0000000
--- a/src/external/fontawesome/css/fontawesome-all.css
+++ /dev/null
@@ -1,3215 +0,0 @@
-/*!
- * Font Awesome Free 5.0.13 by @fontawesome - https://fontawesome.com
- * License - https://fontawesome.com/license (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
- */
-.fa,
-.fas,
-.far,
-.fal,
-.fab {
- -moz-osx-font-smoothing: grayscale;
- -webkit-font-smoothing: antialiased;
- display: inline-block;
- font-style: normal;
- font-variant: normal;
- text-rendering: auto;
- line-height: 1; }
-
-.fa-lg {
- font-size: 1.33333em;
- line-height: 0.75em;
- vertical-align: -.0667em; }
-
-.fa-xs {
- font-size: .75em; }
-
-.fa-sm {
- font-size: .875em; }
-
-.fa-1x {
- font-size: 1em; }
-
-.fa-2x {
- font-size: 2em; }
-
-.fa-3x {
- font-size: 3em; }
-
-.fa-4x {
- font-size: 4em; }
-
-.fa-5x {
- font-size: 5em; }
-
-.fa-6x {
- font-size: 6em; }
-
-.fa-7x {
- font-size: 7em; }
-
-.fa-8x {
- font-size: 8em; }
-
-.fa-9x {
- font-size: 9em; }
-
-.fa-10x {
- font-size: 10em; }
-
-.fa-fw {
- text-align: center;
- width: 1.25em; }
-
-.fa-ul {
- list-style-type: none;
- margin-left: 2.5em;
- padding-left: 0; }
- .fa-ul > li {
- position: relative; }
-
-.fa-li {
- left: -2em;
- position: absolute;
- text-align: center;
- width: 2em;
- line-height: inherit; }
-
-.fa-border {
- border: solid 0.08em #eee;
- border-radius: .1em;
- padding: .2em .25em .15em; }
-
-.fa-pull-left {
- float: left; }
-
-.fa-pull-right {
- float: right; }
-
-.fa.fa-pull-left,
-.fas.fa-pull-left,
-.far.fa-pull-left,
-.fal.fa-pull-left,
-.fab.fa-pull-left {
- margin-right: .3em; }
-
-.fa.fa-pull-right,
-.fas.fa-pull-right,
-.far.fa-pull-right,
-.fal.fa-pull-right,
-.fab.fa-pull-right {
- margin-left: .3em; }
-
-.fa-spin {
- -webkit-animation: fa-spin 2s infinite linear;
- animation: fa-spin 2s infinite linear; }
-
-.fa-pulse {
- -webkit-animation: fa-spin 1s infinite steps(8);
- animation: fa-spin 1s infinite steps(8); }
-
-@-webkit-keyframes fa-spin {
- 0% {
- -webkit-transform: rotate(0deg);
- transform: rotate(0deg); }
- 100% {
- -webkit-transform: rotate(360deg);
- transform: rotate(360deg); } }
-
-@keyframes fa-spin {
- 0% {
- -webkit-transform: rotate(0deg);
- transform: rotate(0deg); }
- 100% {
- -webkit-transform: rotate(360deg);
- transform: rotate(360deg); } }
-
-.fa-rotate-90 {
- -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";
- -webkit-transform: rotate(90deg);
- transform: rotate(90deg); }
-
-.fa-rotate-180 {
- -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";
- -webkit-transform: rotate(180deg);
- transform: rotate(180deg); }
-
-.fa-rotate-270 {
- -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";
- -webkit-transform: rotate(270deg);
- transform: rotate(270deg); }
-
-.fa-flip-horizontal {
- -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";
- -webkit-transform: scale(-1, 1);
- transform: scale(-1, 1); }
-
-.fa-flip-vertical {
- -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";
- -webkit-transform: scale(1, -1);
- transform: scale(1, -1); }
-
-.fa-flip-horizontal.fa-flip-vertical {
- -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";
- -webkit-transform: scale(-1, -1);
- transform: scale(-1, -1); }
-
-:root .fa-rotate-90,
-:root .fa-rotate-180,
-:root .fa-rotate-270,
-:root .fa-flip-horizontal,
-:root .fa-flip-vertical {
- -webkit-filter: none;
- filter: none; }
-
-.fa-stack {
- display: inline-block;
- height: 2em;
- line-height: 2em;
- position: relative;
- vertical-align: middle;
- width: 2em; }
-
-.fa-stack-1x,
-.fa-stack-2x {
- left: 0;
- position: absolute;
- text-align: center;
- width: 100%; }
-
-.fa-stack-1x {
- line-height: inherit; }
-
-.fa-stack-2x {
- font-size: 2em; }
-
-.fa-inverse {
- color: #fff; }
-
-/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
-readers do not read off random characters that represent icons */
-.fa-500px:before {
- content: "\f26e"; }
-
-.fa-accessible-icon:before {
- content: "\f368"; }
-
-.fa-accusoft:before {
- content: "\f369"; }
-
-.fa-address-book:before {
- content: "\f2b9"; }
-
-.fa-address-card:before {
- content: "\f2bb"; }
-
-.fa-adjust:before {
- content: "\f042"; }
-
-.fa-adn:before {
- content: "\f170"; }
-
-.fa-adversal:before {
- content: "\f36a"; }
-
-.fa-affiliatetheme:before {
- content: "\f36b"; }
-
-.fa-algolia:before {
- content: "\f36c"; }
-
-.fa-align-center:before {
- content: "\f037"; }
-
-.fa-align-justify:before {
- content: "\f039"; }
-
-.fa-align-left:before {
- content: "\f036"; }
-
-.fa-align-right:before {
- content: "\f038"; }
-
-.fa-allergies:before {
- content: "\f461"; }
-
-.fa-amazon:before {
- content: "\f270"; }
-
-.fa-amazon-pay:before {
- content: "\f42c"; }
-
-.fa-ambulance:before {
- content: "\f0f9"; }
-
-.fa-american-sign-language-interpreting:before {
- content: "\f2a3"; }
-
-.fa-amilia:before {
- content: "\f36d"; }
-
-.fa-anchor:before {
- content: "\f13d"; }
-
-.fa-android:before {
- content: "\f17b"; }
-
-.fa-angellist:before {
- content: "\f209"; }
-
-.fa-angle-double-down:before {
- content: "\f103"; }
-
-.fa-angle-double-left:before {
- content: "\f100"; }
-
-.fa-angle-double-right:before {
- content: "\f101"; }
-
-.fa-angle-double-up:before {
- content: "\f102"; }
-
-.fa-angle-down:before {
- content: "\f107"; }
-
-.fa-angle-left:before {
- content: "\f104"; }
-
-.fa-angle-right:before {
- content: "\f105"; }
-
-.fa-angle-up:before {
- content: "\f106"; }
-
-.fa-angrycreative:before {
- content: "\f36e"; }
-
-.fa-angular:before {
- content: "\f420"; }
-
-.fa-app-store:before {
- content: "\f36f"; }
-
-.fa-app-store-ios:before {
- content: "\f370"; }
-
-.fa-apper:before {
- content: "\f371"; }
-
-.fa-apple:before {
- content: "\f179"; }
-
-.fa-apple-pay:before {
- content: "\f415"; }
-
-.fa-archive:before {
- content: "\f187"; }
-
-.fa-arrow-alt-circle-down:before {
- content: "\f358"; }
-
-.fa-arrow-alt-circle-left:before {
- content: "\f359"; }
-
-.fa-arrow-alt-circle-right:before {
- content: "\f35a"; }
-
-.fa-arrow-alt-circle-up:before {
- content: "\f35b"; }
-
-.fa-arrow-circle-down:before {
- content: "\f0ab"; }
-
-.fa-arrow-circle-left:before {
- content: "\f0a8"; }
-
-.fa-arrow-circle-right:before {
- content: "\f0a9"; }
-
-.fa-arrow-circle-up:before {
- content: "\f0aa"; }
-
-.fa-arrow-down:before {
- content: "\f063"; }
-
-.fa-arrow-left:before {
- content: "\f060"; }
-
-.fa-arrow-right:before {
- content: "\f061"; }
-
-.fa-arrow-up:before {
- content: "\f062"; }
-
-.fa-arrows-alt:before {
- content: "\f0b2"; }
-
-.fa-arrows-alt-h:before {
- content: "\f337"; }
-
-.fa-arrows-alt-v:before {
- content: "\f338"; }
-
-.fa-assistive-listening-systems:before {
- content: "\f2a2"; }
-
-.fa-asterisk:before {
- content: "\f069"; }
-
-.fa-asymmetrik:before {
- content: "\f372"; }
-
-.fa-at:before {
- content: "\f1fa"; }
-
-.fa-audible:before {
- content: "\f373"; }
-
-.fa-audio-description:before {
- content: "\f29e"; }
-
-.fa-autoprefixer:before {
- content: "\f41c"; }
-
-.fa-avianex:before {
- content: "\f374"; }
-
-.fa-aviato:before {
- content: "\f421"; }
-
-.fa-aws:before {
- content: "\f375"; }
-
-.fa-backward:before {
- content: "\f04a"; }
-
-.fa-balance-scale:before {
- content: "\f24e"; }
-
-.fa-ban:before {
- content: "\f05e"; }
-
-.fa-band-aid:before {
- content: "\f462"; }
-
-.fa-bandcamp:before {
- content: "\f2d5"; }
-
-.fa-barcode:before {
- content: "\f02a"; }
-
-.fa-bars:before {
- content: "\f0c9"; }
-
-.fa-baseball-ball:before {
- content: "\f433"; }
-
-.fa-basketball-ball:before {
- content: "\f434"; }
-
-.fa-bath:before {
- content: "\f2cd"; }
-
-.fa-battery-empty:before {
- content: "\f244"; }
-
-.fa-battery-full:before {
- content: "\f240"; }
-
-.fa-battery-half:before {
- content: "\f242"; }
-
-.fa-battery-quarter:before {
- content: "\f243"; }
-
-.fa-battery-three-quarters:before {
- content: "\f241"; }
-
-.fa-bed:before {
- content: "\f236"; }
-
-.fa-beer:before {
- content: "\f0fc"; }
-
-.fa-behance:before {
- content: "\f1b4"; }
-
-.fa-behance-square:before {
- content: "\f1b5"; }
-
-.fa-bell:before {
- content: "\f0f3"; }
-
-.fa-bell-slash:before {
- content: "\f1f6"; }
-
-.fa-bicycle:before {
- content: "\f206"; }
-
-.fa-bimobject:before {
- content: "\f378"; }
-
-.fa-binoculars:before {
- content: "\f1e5"; }
-
-.fa-birthday-cake:before {
- content: "\f1fd"; }
-
-.fa-bitbucket:before {
- content: "\f171"; }
-
-.fa-bitcoin:before {
- content: "\f379"; }
-
-.fa-bity:before {
- content: "\f37a"; }
-
-.fa-black-tie:before {
- content: "\f27e"; }
-
-.fa-blackberry:before {
- content: "\f37b"; }
-
-.fa-blender:before {
- content: "\f517"; }
-
-.fa-blind:before {
- content: "\f29d"; }
-
-.fa-blogger:before {
- content: "\f37c"; }
-
-.fa-blogger-b:before {
- content: "\f37d"; }
-
-.fa-bluetooth:before {
- content: "\f293"; }
-
-.fa-bluetooth-b:before {
- content: "\f294"; }
-
-.fa-bold:before {
- content: "\f032"; }
-
-.fa-bolt:before {
- content: "\f0e7"; }
-
-.fa-bomb:before {
- content: "\f1e2"; }
-
-.fa-book:before {
- content: "\f02d"; }
-
-.fa-book-open:before {
- content: "\f518"; }
-
-.fa-bookmark:before {
- content: "\f02e"; }
-
-.fa-bowling-ball:before {
- content: "\f436"; }
-
-.fa-box:before {
- content: "\f466"; }
-
-.fa-box-open:before {
- content: "\f49e"; }
-
-.fa-boxes:before {
- content: "\f468"; }
-
-.fa-braille:before {
- content: "\f2a1"; }
-
-.fa-briefcase:before {
- content: "\f0b1"; }
-
-.fa-briefcase-medical:before {
- content: "\f469"; }
-
-.fa-broadcast-tower:before {
- content: "\f519"; }
-
-.fa-broom:before {
- content: "\f51a"; }
-
-.fa-btc:before {
- content: "\f15a"; }
-
-.fa-bug:before {
- content: "\f188"; }
-
-.fa-building:before {
- content: "\f1ad"; }
-
-.fa-bullhorn:before {
- content: "\f0a1"; }
-
-.fa-bullseye:before {
- content: "\f140"; }
-
-.fa-burn:before {
- content: "\f46a"; }
-
-.fa-buromobelexperte:before {
- content: "\f37f"; }
-
-.fa-bus:before {
- content: "\f207"; }
-
-.fa-buysellads:before {
- content: "\f20d"; }
-
-.fa-calculator:before {
- content: "\f1ec"; }
-
-.fa-calendar:before {
- content: "\f133"; }
-
-.fa-calendar-alt:before {
- content: "\f073"; }
-
-.fa-calendar-check:before {
- content: "\f274"; }
-
-.fa-calendar-minus:before {
- content: "\f272"; }
-
-.fa-calendar-plus:before {
- content: "\f271"; }
-
-.fa-calendar-times:before {
- content: "\f273"; }
-
-.fa-camera:before {
- content: "\f030"; }
-
-.fa-camera-retro:before {
- content: "\f083"; }
-
-.fa-capsules:before {
- content: "\f46b"; }
-
-.fa-car:before {
- content: "\f1b9"; }
-
-.fa-caret-down:before {
- content: "\f0d7"; }
-
-.fa-caret-left:before {
- content: "\f0d9"; }
-
-.fa-caret-right:before {
- content: "\f0da"; }
-
-.fa-caret-square-down:before {
- content: "\f150"; }
-
-.fa-caret-square-left:before {
- content: "\f191"; }
-
-.fa-caret-square-right:before {
- content: "\f152"; }
-
-.fa-caret-square-up:before {
- content: "\f151"; }
-
-.fa-caret-up:before {
- content: "\f0d8"; }
-
-.fa-cart-arrow-down:before {
- content: "\f218"; }
-
-.fa-cart-plus:before {
- content: "\f217"; }
-
-.fa-cc-amazon-pay:before {
- content: "\f42d"; }
-
-.fa-cc-amex:before {
- content: "\f1f3"; }
-
-.fa-cc-apple-pay:before {
- content: "\f416"; }
-
-.fa-cc-diners-club:before {
- content: "\f24c"; }
-
-.fa-cc-discover:before {
- content: "\f1f2"; }
-
-.fa-cc-jcb:before {
- content: "\f24b"; }
-
-.fa-cc-mastercard:before {
- content: "\f1f1"; }
-
-.fa-cc-paypal:before {
- content: "\f1f4"; }
-
-.fa-cc-stripe:before {
- content: "\f1f5"; }
-
-.fa-cc-visa:before {
- content: "\f1f0"; }
-
-.fa-centercode:before {
- content: "\f380"; }
-
-.fa-certificate:before {
- content: "\f0a3"; }
-
-.fa-chalkboard:before {
- content: "\f51b"; }
-
-.fa-chalkboard-teacher:before {
- content: "\f51c"; }
-
-.fa-chart-area:before {
- content: "\f1fe"; }
-
-.fa-chart-bar:before {
- content: "\f080"; }
-
-.fa-chart-line:before {
- content: "\f201"; }
-
-.fa-chart-pie:before {
- content: "\f200"; }
-
-.fa-check:before {
- content: "\f00c"; }
-
-.fa-check-circle:before {
- content: "\f058"; }
-
-.fa-check-square:before {
- content: "\f14a"; }
-
-.fa-chess:before {
- content: "\f439"; }
-
-.fa-chess-bishop:before {
- content: "\f43a"; }
-
-.fa-chess-board:before {
- content: "\f43c"; }
-
-.fa-chess-king:before {
- content: "\f43f"; }
-
-.fa-chess-knight:before {
- content: "\f441"; }
-
-.fa-chess-pawn:before {
- content: "\f443"; }
-
-.fa-chess-queen:before {
- content: "\f445"; }
-
-.fa-chess-rook:before {
- content: "\f447"; }
-
-.fa-chevron-circle-down:before {
- content: "\f13a"; }
-
-.fa-chevron-circle-left:before {
- content: "\f137"; }
-
-.fa-chevron-circle-right:before {
- content: "\f138"; }
-
-.fa-chevron-circle-up:before {
- content: "\f139"; }
-
-.fa-chevron-down:before {
- content: "\f078"; }
-
-.fa-chevron-left:before {
- content: "\f053"; }
-
-.fa-chevron-right:before {
- content: "\f054"; }
-
-.fa-chevron-up:before {
- content: "\f077"; }
-
-.fa-child:before {
- content: "\f1ae"; }
-
-.fa-chrome:before {
- content: "\f268"; }
-
-.fa-church:before {
- content: "\f51d"; }
-
-.fa-circle:before {
- content: "\f111"; }
-
-.fa-circle-notch:before {
- content: "\f1ce"; }
-
-.fa-clipboard:before {
- content: "\f328"; }
-
-.fa-clipboard-check:before {
- content: "\f46c"; }
-
-.fa-clipboard-list:before {
- content: "\f46d"; }
-
-.fa-clock:before {
- content: "\f017"; }
-
-.fa-clone:before {
- content: "\f24d"; }
-
-.fa-closed-captioning:before {
- content: "\f20a"; }
-
-.fa-cloud:before {
- content: "\f0c2"; }
-
-.fa-cloud-download-alt:before {
- content: "\f381"; }
-
-.fa-cloud-upload-alt:before {
- content: "\f382"; }
-
-.fa-cloudscale:before {
- content: "\f383"; }
-
-.fa-cloudsmith:before {
- content: "\f384"; }
-
-.fa-cloudversify:before {
- content: "\f385"; }
-
-.fa-code:before {
- content: "\f121"; }
-
-.fa-code-branch:before {
- content: "\f126"; }
-
-.fa-codepen:before {
- content: "\f1cb"; }
-
-.fa-codiepie:before {
- content: "\f284"; }
-
-.fa-coffee:before {
- content: "\f0f4"; }
-
-.fa-cog:before {
- content: "\f013"; }
-
-.fa-cogs:before {
- content: "\f085"; }
-
-.fa-coins:before {
- content: "\f51e"; }
-
-.fa-columns:before {
- content: "\f0db"; }
-
-.fa-comment:before {
- content: "\f075"; }
-
-.fa-comment-alt:before {
- content: "\f27a"; }
-
-.fa-comment-dots:before {
- content: "\f4ad"; }
-
-.fa-comment-slash:before {
- content: "\f4b3"; }
-
-.fa-comments:before {
- content: "\f086"; }
-
-.fa-compact-disc:before {
- content: "\f51f"; }
-
-.fa-compass:before {
- content: "\f14e"; }
-
-.fa-compress:before {
- content: "\f066"; }
-
-.fa-connectdevelop:before {
- content: "\f20e"; }
-
-.fa-contao:before {
- content: "\f26d"; }
-
-.fa-copy:before {
- content: "\f0c5"; }
-
-.fa-copyright:before {
- content: "\f1f9"; }
-
-.fa-couch:before {
- content: "\f4b8"; }
-
-.fa-cpanel:before {
- content: "\f388"; }
-
-.fa-creative-commons:before {
- content: "\f25e"; }
-
-.fa-creative-commons-by:before {
- content: "\f4e7"; }
-
-.fa-creative-commons-nc:before {
- content: "\f4e8"; }
-
-.fa-creative-commons-nc-eu:before {
- content: "\f4e9"; }
-
-.fa-creative-commons-nc-jp:before {
- content: "\f4ea"; }
-
-.fa-creative-commons-nd:before {
- content: "\f4eb"; }
-
-.fa-creative-commons-pd:before {
- content: "\f4ec"; }
-
-.fa-creative-commons-pd-alt:before {
- content: "\f4ed"; }
-
-.fa-creative-commons-remix:before {
- content: "\f4ee"; }
-
-.fa-creative-commons-sa:before {
- content: "\f4ef"; }
-
-.fa-creative-commons-sampling:before {
- content: "\f4f0"; }
-
-.fa-creative-commons-sampling-plus:before {
- content: "\f4f1"; }
-
-.fa-creative-commons-share:before {
- content: "\f4f2"; }
-
-.fa-credit-card:before {
- content: "\f09d"; }
-
-.fa-crop:before {
- content: "\f125"; }
-
-.fa-crosshairs:before {
- content: "\f05b"; }
-
-.fa-crow:before {
- content: "\f520"; }
-
-.fa-crown:before {
- content: "\f521"; }
-
-.fa-css3:before {
- content: "\f13c"; }
-
-.fa-css3-alt:before {
- content: "\f38b"; }
-
-.fa-cube:before {
- content: "\f1b2"; }
-
-.fa-cubes:before {
- content: "\f1b3"; }
-
-.fa-cut:before {
- content: "\f0c4"; }
-
-.fa-cuttlefish:before {
- content: "\f38c"; }
-
-.fa-d-and-d:before {
- content: "\f38d"; }
-
-.fa-dashcube:before {
- content: "\f210"; }
-
-.fa-database:before {
- content: "\f1c0"; }
-
-.fa-deaf:before {
- content: "\f2a4"; }
-
-.fa-delicious:before {
- content: "\f1a5"; }
-
-.fa-deploydog:before {
- content: "\f38e"; }
-
-.fa-deskpro:before {
- content: "\f38f"; }
-
-.fa-desktop:before {
- content: "\f108"; }
-
-.fa-deviantart:before {
- content: "\f1bd"; }
-
-.fa-diagnoses:before {
- content: "\f470"; }
-
-.fa-dice:before {
- content: "\f522"; }
-
-.fa-dice-five:before {
- content: "\f523"; }
-
-.fa-dice-four:before {
- content: "\f524"; }
-
-.fa-dice-one:before {
- content: "\f525"; }
-
-.fa-dice-six:before {
- content: "\f526"; }
-
-.fa-dice-three:before {
- content: "\f527"; }
-
-.fa-dice-two:before {
- content: "\f528"; }
-
-.fa-digg:before {
- content: "\f1a6"; }
-
-.fa-digital-ocean:before {
- content: "\f391"; }
-
-.fa-discord:before {
- content: "\f392"; }
-
-.fa-discourse:before {
- content: "\f393"; }
-
-.fa-divide:before {
- content: "\f529"; }
-
-.fa-dna:before {
- content: "\f471"; }
-
-.fa-dochub:before {
- content: "\f394"; }
-
-.fa-docker:before {
- content: "\f395"; }
-
-.fa-dollar-sign:before {
- content: "\f155"; }
-
-.fa-dolly:before {
- content: "\f472"; }
-
-.fa-dolly-flatbed:before {
- content: "\f474"; }
-
-.fa-donate:before {
- content: "\f4b9"; }
-
-.fa-door-closed:before {
- content: "\f52a"; }
-
-.fa-door-open:before {
- content: "\f52b"; }
-
-.fa-dot-circle:before {
- content: "\f192"; }
-
-.fa-dove:before {
- content: "\f4ba"; }
-
-.fa-download:before {
- content: "\f019"; }
-
-.fa-draft2digital:before {
- content: "\f396"; }
-
-.fa-dribbble:before {
- content: "\f17d"; }
-
-.fa-dribbble-square:before {
- content: "\f397"; }
-
-.fa-dropbox:before {
- content: "\f16b"; }
-
-.fa-drupal:before {
- content: "\f1a9"; }
-
-.fa-dumbbell:before {
- content: "\f44b"; }
-
-.fa-dyalog:before {
- content: "\f399"; }
-
-.fa-earlybirds:before {
- content: "\f39a"; }
-
-.fa-ebay:before {
- content: "\f4f4"; }
-
-.fa-edge:before {
- content: "\f282"; }
-
-.fa-edit:before {
- content: "\f044"; }
-
-.fa-eject:before {
- content: "\f052"; }
-
-.fa-elementor:before {
- content: "\f430"; }
-
-.fa-ellipsis-h:before {
- content: "\f141"; }
-
-.fa-ellipsis-v:before {
- content: "\f142"; }
-
-.fa-ember:before {
- content: "\f423"; }
-
-.fa-empire:before {
- content: "\f1d1"; }
-
-.fa-envelope:before {
- content: "\f0e0"; }
-
-.fa-envelope-open:before {
- content: "\f2b6"; }
-
-.fa-envelope-square:before {
- content: "\f199"; }
-
-.fa-envira:before {
- content: "\f299"; }
-
-.fa-equals:before {
- content: "\f52c"; }
-
-.fa-eraser:before {
- content: "\f12d"; }
-
-.fa-erlang:before {
- content: "\f39d"; }
-
-.fa-ethereum:before {
- content: "\f42e"; }
-
-.fa-etsy:before {
- content: "\f2d7"; }
-
-.fa-euro-sign:before {
- content: "\f153"; }
-
-.fa-exchange-alt:before {
- content: "\f362"; }
-
-.fa-exclamation:before {
- content: "\f12a"; }
-
-.fa-exclamation-circle:before {
- content: "\f06a"; }
-
-.fa-exclamation-triangle:before {
- content: "\f071"; }
-
-.fa-expand:before {
- content: "\f065"; }
-
-.fa-expand-arrows-alt:before {
- content: "\f31e"; }
-
-.fa-expeditedssl:before {
- content: "\f23e"; }
-
-.fa-external-link-alt:before {
- content: "\f35d"; }
-
-.fa-external-link-square-alt:before {
- content: "\f360"; }
-
-.fa-eye:before {
- content: "\f06e"; }
-
-.fa-eye-dropper:before {
- content: "\f1fb"; }
-
-.fa-eye-slash:before {
- content: "\f070"; }
-
-.fa-facebook:before {
- content: "\f09a"; }
-
-.fa-facebook-f:before {
- content: "\f39e"; }
-
-.fa-facebook-messenger:before {
- content: "\f39f"; }
-
-.fa-facebook-square:before {
- content: "\f082"; }
-
-.fa-fast-backward:before {
- content: "\f049"; }
-
-.fa-fast-forward:before {
- content: "\f050"; }
-
-.fa-fax:before {
- content: "\f1ac"; }
-
-.fa-feather:before {
- content: "\f52d"; }
-
-.fa-female:before {
- content: "\f182"; }
-
-.fa-fighter-jet:before {
- content: "\f0fb"; }
-
-.fa-file:before {
- content: "\f15b"; }
-
-.fa-file-alt:before {
- content: "\f15c"; }
-
-.fa-file-archive:before {
- content: "\f1c6"; }
-
-.fa-file-audio:before {
- content: "\f1c7"; }
-
-.fa-file-code:before {
- content: "\f1c9"; }
-
-.fa-file-excel:before {
- content: "\f1c3"; }
-
-.fa-file-image:before {
- content: "\f1c5"; }
-
-.fa-file-medical:before {
- content: "\f477"; }
-
-.fa-file-medical-alt:before {
- content: "\f478"; }
-
-.fa-file-pdf:before {
- content: "\f1c1"; }
-
-.fa-file-powerpoint:before {
- content: "\f1c4"; }
-
-.fa-file-video:before {
- content: "\f1c8"; }
-
-.fa-file-word:before {
- content: "\f1c2"; }
-
-.fa-film:before {
- content: "\f008"; }
-
-.fa-filter:before {
- content: "\f0b0"; }
-
-.fa-fire:before {
- content: "\f06d"; }
-
-.fa-fire-extinguisher:before {
- content: "\f134"; }
-
-.fa-firefox:before {
- content: "\f269"; }
-
-.fa-first-aid:before {
- content: "\f479"; }
-
-.fa-first-order:before {
- content: "\f2b0"; }
-
-.fa-first-order-alt:before {
- content: "\f50a"; }
-
-.fa-firstdraft:before {
- content: "\f3a1"; }
-
-.fa-flag:before {
- content: "\f024"; }
-
-.fa-flag-checkered:before {
- content: "\f11e"; }
-
-.fa-flask:before {
- content: "\f0c3"; }
-
-.fa-flickr:before {
- content: "\f16e"; }
-
-.fa-flipboard:before {
- content: "\f44d"; }
-
-.fa-fly:before {
- content: "\f417"; }
-
-.fa-folder:before {
- content: "\f07b"; }
-
-.fa-folder-open:before {
- content: "\f07c"; }
-
-.fa-font:before {
- content: "\f031"; }
-
-.fa-font-awesome:before {
- content: "\f2b4"; }
-
-.fa-font-awesome-alt:before {
- content: "\f35c"; }
-
-.fa-font-awesome-flag:before {
- content: "\f425"; }
-
-.fa-font-awesome-logo-full:before {
- content: "\f4e6"; }
-
-.fa-fonticons:before {
- content: "\f280"; }
-
-.fa-fonticons-fi:before {
- content: "\f3a2"; }
-
-.fa-football-ball:before {
- content: "\f44e"; }
-
-.fa-fort-awesome:before {
- content: "\f286"; }
-
-.fa-fort-awesome-alt:before {
- content: "\f3a3"; }
-
-.fa-forumbee:before {
- content: "\f211"; }
-
-.fa-forward:before {
- content: "\f04e"; }
-
-.fa-foursquare:before {
- content: "\f180"; }
-
-.fa-free-code-camp:before {
- content: "\f2c5"; }
-
-.fa-freebsd:before {
- content: "\f3a4"; }
-
-.fa-frog:before {
- content: "\f52e"; }
-
-.fa-frown:before {
- content: "\f119"; }
-
-.fa-fulcrum:before {
- content: "\f50b"; }
-
-.fa-futbol:before {
- content: "\f1e3"; }
-
-.fa-galactic-republic:before {
- content: "\f50c"; }
-
-.fa-galactic-senate:before {
- content: "\f50d"; }
-
-.fa-gamepad:before {
- content: "\f11b"; }
-
-.fa-gas-pump:before {
- content: "\f52f"; }
-
-.fa-gavel:before {
- content: "\f0e3"; }
-
-.fa-gem:before {
- content: "\f3a5"; }
-
-.fa-genderless:before {
- content: "\f22d"; }
-
-.fa-get-pocket:before {
- content: "\f265"; }
-
-.fa-gg:before {
- content: "\f260"; }
-
-.fa-gg-circle:before {
- content: "\f261"; }
-
-.fa-gift:before {
- content: "\f06b"; }
-
-.fa-git:before {
- content: "\f1d3"; }
-
-.fa-git-square:before {
- content: "\f1d2"; }
-
-.fa-github:before {
- content: "\f09b"; }
-
-.fa-github-alt:before {
- content: "\f113"; }
-
-.fa-github-square:before {
- content: "\f092"; }
-
-.fa-gitkraken:before {
- content: "\f3a6"; }
-
-.fa-gitlab:before {
- content: "\f296"; }
-
-.fa-gitter:before {
- content: "\f426"; }
-
-.fa-glass-martini:before {
- content: "\f000"; }
-
-.fa-glasses:before {
- content: "\f530"; }
-
-.fa-glide:before {
- content: "\f2a5"; }
-
-.fa-glide-g:before {
- content: "\f2a6"; }
-
-.fa-globe:before {
- content: "\f0ac"; }
-
-.fa-gofore:before {
- content: "\f3a7"; }
-
-.fa-golf-ball:before {
- content: "\f450"; }
-
-.fa-goodreads:before {
- content: "\f3a8"; }
-
-.fa-goodreads-g:before {
- content: "\f3a9"; }
-
-.fa-google:before {
- content: "\f1a0"; }
-
-.fa-google-drive:before {
- content: "\f3aa"; }
-
-.fa-google-play:before {
- content: "\f3ab"; }
-
-.fa-google-plus:before {
- content: "\f2b3"; }
-
-.fa-google-plus-g:before {
- content: "\f0d5"; }
-
-.fa-google-plus-square:before {
- content: "\f0d4"; }
-
-.fa-google-wallet:before {
- content: "\f1ee"; }
-
-.fa-graduation-cap:before {
- content: "\f19d"; }
-
-.fa-gratipay:before {
- content: "\f184"; }
-
-.fa-grav:before {
- content: "\f2d6"; }
-
-.fa-greater-than:before {
- content: "\f531"; }
-
-.fa-greater-than-equal:before {
- content: "\f532"; }
-
-.fa-gripfire:before {
- content: "\f3ac"; }
-
-.fa-grunt:before {
- content: "\f3ad"; }
-
-.fa-gulp:before {
- content: "\f3ae"; }
-
-.fa-h-square:before {
- content: "\f0fd"; }
-
-.fa-hacker-news:before {
- content: "\f1d4"; }
-
-.fa-hacker-news-square:before {
- content: "\f3af"; }
-
-.fa-hand-holding:before {
- content: "\f4bd"; }
-
-.fa-hand-holding-heart:before {
- content: "\f4be"; }
-
-.fa-hand-holding-usd:before {
- content: "\f4c0"; }
-
-.fa-hand-lizard:before {
- content: "\f258"; }
-
-.fa-hand-paper:before {
- content: "\f256"; }
-
-.fa-hand-peace:before {
- content: "\f25b"; }
-
-.fa-hand-point-down:before {
- content: "\f0a7"; }
-
-.fa-hand-point-left:before {
- content: "\f0a5"; }
-
-.fa-hand-point-right:before {
- content: "\f0a4"; }
-
-.fa-hand-point-up:before {
- content: "\f0a6"; }
-
-.fa-hand-pointer:before {
- content: "\f25a"; }
-
-.fa-hand-rock:before {
- content: "\f255"; }
-
-.fa-hand-scissors:before {
- content: "\f257"; }
-
-.fa-hand-spock:before {
- content: "\f259"; }
-
-.fa-hands:before {
- content: "\f4c2"; }
-
-.fa-hands-helping:before {
- content: "\f4c4"; }
-
-.fa-handshake:before {
- content: "\f2b5"; }
-
-.fa-hashtag:before {
- content: "\f292"; }
-
-.fa-hdd:before {
- content: "\f0a0"; }
-
-.fa-heading:before {
- content: "\f1dc"; }
-
-.fa-headphones:before {
- content: "\f025"; }
-
-.fa-heart:before {
- content: "\f004"; }
-
-.fa-heartbeat:before {
- content: "\f21e"; }
-
-.fa-helicopter:before {
- content: "\f533"; }
-
-.fa-hips:before {
- content: "\f452"; }
-
-.fa-hire-a-helper:before {
- content: "\f3b0"; }
-
-.fa-history:before {
- content: "\f1da"; }
-
-.fa-hockey-puck:before {
- content: "\f453"; }
-
-.fa-home:before {
- content: "\f015"; }
-
-.fa-hooli:before {
- content: "\f427"; }
-
-.fa-hospital:before {
- content: "\f0f8"; }
-
-.fa-hospital-alt:before {
- content: "\f47d"; }
-
-.fa-hospital-symbol:before {
- content: "\f47e"; }
-
-.fa-hotjar:before {
- content: "\f3b1"; }
-
-.fa-hourglass:before {
- content: "\f254"; }
-
-.fa-hourglass-end:before {
- content: "\f253"; }
-
-.fa-hourglass-half:before {
- content: "\f252"; }
-
-.fa-hourglass-start:before {
- content: "\f251"; }
-
-.fa-houzz:before {
- content: "\f27c"; }
-
-.fa-html5:before {
- content: "\f13b"; }
-
-.fa-hubspot:before {
- content: "\f3b2"; }
-
-.fa-i-cursor:before {
- content: "\f246"; }
-
-.fa-id-badge:before {
- content: "\f2c1"; }
-
-.fa-id-card:before {
- content: "\f2c2"; }
-
-.fa-id-card-alt:before {
- content: "\f47f"; }
-
-.fa-image:before {
- content: "\f03e"; }
-
-.fa-images:before {
- content: "\f302"; }
-
-.fa-imdb:before {
- content: "\f2d8"; }
-
-.fa-inbox:before {
- content: "\f01c"; }
-
-.fa-indent:before {
- content: "\f03c"; }
-
-.fa-industry:before {
- content: "\f275"; }
-
-.fa-infinity:before {
- content: "\f534"; }
-
-.fa-info:before {
- content: "\f129"; }
-
-.fa-info-circle:before {
- content: "\f05a"; }
-
-.fa-instagram:before {
- content: "\f16d"; }
-
-.fa-internet-explorer:before {
- content: "\f26b"; }
-
-.fa-ioxhost:before {
- content: "\f208"; }
-
-.fa-italic:before {
- content: "\f033"; }
-
-.fa-itunes:before {
- content: "\f3b4"; }
-
-.fa-itunes-note:before {
- content: "\f3b5"; }
-
-.fa-java:before {
- content: "\f4e4"; }
-
-.fa-jedi-order:before {
- content: "\f50e"; }
-
-.fa-jenkins:before {
- content: "\f3b6"; }
-
-.fa-joget:before {
- content: "\f3b7"; }
-
-.fa-joomla:before {
- content: "\f1aa"; }
-
-.fa-js:before {
- content: "\f3b8"; }
-
-.fa-js-square:before {
- content: "\f3b9"; }
-
-.fa-jsfiddle:before {
- content: "\f1cc"; }
-
-.fa-key:before {
- content: "\f084"; }
-
-.fa-keybase:before {
- content: "\f4f5"; }
-
-.fa-keyboard:before {
- content: "\f11c"; }
-
-.fa-keycdn:before {
- content: "\f3ba"; }
-
-.fa-kickstarter:before {
- content: "\f3bb"; }
-
-.fa-kickstarter-k:before {
- content: "\f3bc"; }
-
-.fa-kiwi-bird:before {
- content: "\f535"; }
-
-.fa-korvue:before {
- content: "\f42f"; }
-
-.fa-language:before {
- content: "\f1ab"; }
-
-.fa-laptop:before {
- content: "\f109"; }
-
-.fa-laravel:before {
- content: "\f3bd"; }
-
-.fa-lastfm:before {
- content: "\f202"; }
-
-.fa-lastfm-square:before {
- content: "\f203"; }
-
-.fa-leaf:before {
- content: "\f06c"; }
-
-.fa-leanpub:before {
- content: "\f212"; }
-
-.fa-lemon:before {
- content: "\f094"; }
-
-.fa-less:before {
- content: "\f41d"; }
-
-.fa-less-than:before {
- content: "\f536"; }
-
-.fa-less-than-equal:before {
- content: "\f537"; }
-
-.fa-level-down-alt:before {
- content: "\f3be"; }
-
-.fa-level-up-alt:before {
- content: "\f3bf"; }
-
-.fa-life-ring:before {
- content: "\f1cd"; }
-
-.fa-lightbulb:before {
- content: "\f0eb"; }
-
-.fa-line:before {
- content: "\f3c0"; }
-
-.fa-link:before {
- content: "\f0c1"; }
-
-.fa-linkedin:before {
- content: "\f08c"; }
-
-.fa-linkedin-in:before {
- content: "\f0e1"; }
-
-.fa-linode:before {
- content: "\f2b8"; }
-
-.fa-linux:before {
- content: "\f17c"; }
-
-.fa-lira-sign:before {
- content: "\f195"; }
-
-.fa-list:before {
- content: "\f03a"; }
-
-.fa-list-alt:before {
- content: "\f022"; }
-
-.fa-list-ol:before {
- content: "\f0cb"; }
-
-.fa-list-ul:before {
- content: "\f0ca"; }
-
-.fa-location-arrow:before {
- content: "\f124"; }
-
-.fa-lock:before {
- content: "\f023"; }
-
-.fa-lock-open:before {
- content: "\f3c1"; }
-
-.fa-long-arrow-alt-down:before {
- content: "\f309"; }
-
-.fa-long-arrow-alt-left:before {
- content: "\f30a"; }
-
-.fa-long-arrow-alt-right:before {
- content: "\f30b"; }
-
-.fa-long-arrow-alt-up:before {
- content: "\f30c"; }
-
-.fa-low-vision:before {
- content: "\f2a8"; }
-
-.fa-lyft:before {
- content: "\f3c3"; }
-
-.fa-magento:before {
- content: "\f3c4"; }
-
-.fa-magic:before {
- content: "\f0d0"; }
-
-.fa-magnet:before {
- content: "\f076"; }
-
-.fa-male:before {
- content: "\f183"; }
-
-.fa-mandalorian:before {
- content: "\f50f"; }
-
-.fa-map:before {
- content: "\f279"; }
-
-.fa-map-marker:before {
- content: "\f041"; }
-
-.fa-map-marker-alt:before {
- content: "\f3c5"; }
-
-.fa-map-pin:before {
- content: "\f276"; }
-
-.fa-map-signs:before {
- content: "\f277"; }
-
-.fa-mars:before {
- content: "\f222"; }
-
-.fa-mars-double:before {
- content: "\f227"; }
-
-.fa-mars-stroke:before {
- content: "\f229"; }
-
-.fa-mars-stroke-h:before {
- content: "\f22b"; }
-
-.fa-mars-stroke-v:before {
- content: "\f22a"; }
-
-.fa-mastodon:before {
- content: "\f4f6"; }
-
-.fa-maxcdn:before {
- content: "\f136"; }
-
-.fa-medapps:before {
- content: "\f3c6"; }
-
-.fa-medium:before {
- content: "\f23a"; }
-
-.fa-medium-m:before {
- content: "\f3c7"; }
-
-.fa-medkit:before {
- content: "\f0fa"; }
-
-.fa-medrt:before {
- content: "\f3c8"; }
-
-.fa-meetup:before {
- content: "\f2e0"; }
-
-.fa-meh:before {
- content: "\f11a"; }
-
-.fa-memory:before {
- content: "\f538"; }
-
-.fa-mercury:before {
- content: "\f223"; }
-
-.fa-microchip:before {
- content: "\f2db"; }
-
-.fa-microphone:before {
- content: "\f130"; }
-
-.fa-microphone-alt:before {
- content: "\f3c9"; }
-
-.fa-microphone-alt-slash:before {
- content: "\f539"; }
-
-.fa-microphone-slash:before {
- content: "\f131"; }
-
-.fa-microsoft:before {
- content: "\f3ca"; }
-
-.fa-minus:before {
- content: "\f068"; }
-
-.fa-minus-circle:before {
- content: "\f056"; }
-
-.fa-minus-square:before {
- content: "\f146"; }
-
-.fa-mix:before {
- content: "\f3cb"; }
-
-.fa-mixcloud:before {
- content: "\f289"; }
-
-.fa-mizuni:before {
- content: "\f3cc"; }
-
-.fa-mobile:before {
- content: "\f10b"; }
-
-.fa-mobile-alt:before {
- content: "\f3cd"; }
-
-.fa-modx:before {
- content: "\f285"; }
-
-.fa-monero:before {
- content: "\f3d0"; }
-
-.fa-money-bill:before {
- content: "\f0d6"; }
-
-.fa-money-bill-alt:before {
- content: "\f3d1"; }
-
-.fa-money-bill-wave:before {
- content: "\f53a"; }
-
-.fa-money-bill-wave-alt:before {
- content: "\f53b"; }
-
-.fa-money-check:before {
- content: "\f53c"; }
-
-.fa-money-check-alt:before {
- content: "\f53d"; }
-
-.fa-moon:before {
- content: "\f186"; }
-
-.fa-motorcycle:before {
- content: "\f21c"; }
-
-.fa-mouse-pointer:before {
- content: "\f245"; }
-
-.fa-music:before {
- content: "\f001"; }
-
-.fa-napster:before {
- content: "\f3d2"; }
-
-.fa-neuter:before {
- content: "\f22c"; }
-
-.fa-newspaper:before {
- content: "\f1ea"; }
-
-.fa-nintendo-switch:before {
- content: "\f418"; }
-
-.fa-node:before {
- content: "\f419"; }
-
-.fa-node-js:before {
- content: "\f3d3"; }
-
-.fa-not-equal:before {
- content: "\f53e"; }
-
-.fa-notes-medical:before {
- content: "\f481"; }
-
-.fa-npm:before {
- content: "\f3d4"; }
-
-.fa-ns8:before {
- content: "\f3d5"; }
-
-.fa-nutritionix:before {
- content: "\f3d6"; }
-
-.fa-object-group:before {
- content: "\f247"; }
-
-.fa-object-ungroup:before {
- content: "\f248"; }
-
-.fa-odnoklassniki:before {
- content: "\f263"; }
-
-.fa-odnoklassniki-square:before {
- content: "\f264"; }
-
-.fa-old-republic:before {
- content: "\f510"; }
-
-.fa-opencart:before {
- content: "\f23d"; }
-
-.fa-openid:before {
- content: "\f19b"; }
-
-.fa-opera:before {
- content: "\f26a"; }
-
-.fa-optin-monster:before {
- content: "\f23c"; }
-
-.fa-osi:before {
- content: "\f41a"; }
-
-.fa-outdent:before {
- content: "\f03b"; }
-
-.fa-page4:before {
- content: "\f3d7"; }
-
-.fa-pagelines:before {
- content: "\f18c"; }
-
-.fa-paint-brush:before {
- content: "\f1fc"; }
-
-.fa-palette:before {
- content: "\f53f"; }
-
-.fa-palfed:before {
- content: "\f3d8"; }
-
-.fa-pallet:before {
- content: "\f482"; }
-
-.fa-paper-plane:before {
- content: "\f1d8"; }
-
-.fa-paperclip:before {
- content: "\f0c6"; }
-
-.fa-parachute-box:before {
- content: "\f4cd"; }
-
-.fa-paragraph:before {
- content: "\f1dd"; }
-
-.fa-parking:before {
- content: "\f540"; }
-
-.fa-paste:before {
- content: "\f0ea"; }
-
-.fa-patreon:before {
- content: "\f3d9"; }
-
-.fa-pause:before {
- content: "\f04c"; }
-
-.fa-pause-circle:before {
- content: "\f28b"; }
-
-.fa-paw:before {
- content: "\f1b0"; }
-
-.fa-paypal:before {
- content: "\f1ed"; }
-
-.fa-pen-square:before {
- content: "\f14b"; }
-
-.fa-pencil-alt:before {
- content: "\f303"; }
-
-.fa-people-carry:before {
- content: "\f4ce"; }
-
-.fa-percent:before {
- content: "\f295"; }
-
-.fa-percentage:before {
- content: "\f541"; }
-
-.fa-periscope:before {
- content: "\f3da"; }
-
-.fa-phabricator:before {
- content: "\f3db"; }
-
-.fa-phoenix-framework:before {
- content: "\f3dc"; }
-
-.fa-phoenix-squadron:before {
- content: "\f511"; }
-
-.fa-phone:before {
- content: "\f095"; }
-
-.fa-phone-slash:before {
- content: "\f3dd"; }
-
-.fa-phone-square:before {
- content: "\f098"; }
-
-.fa-phone-volume:before {
- content: "\f2a0"; }
-
-.fa-php:before {
- content: "\f457"; }
-
-.fa-pied-piper:before {
- content: "\f2ae"; }
-
-.fa-pied-piper-alt:before {
- content: "\f1a8"; }
-
-.fa-pied-piper-hat:before {
- content: "\f4e5"; }
-
-.fa-pied-piper-pp:before {
- content: "\f1a7"; }
-
-.fa-piggy-bank:before {
- content: "\f4d3"; }
-
-.fa-pills:before {
- content: "\f484"; }
-
-.fa-pinterest:before {
- content: "\f0d2"; }
-
-.fa-pinterest-p:before {
- content: "\f231"; }
-
-.fa-pinterest-square:before {
- content: "\f0d3"; }
-
-.fa-plane:before {
- content: "\f072"; }
-
-.fa-play:before {
- content: "\f04b"; }
-
-.fa-play-circle:before {
- content: "\f144"; }
-
-.fa-playstation:before {
- content: "\f3df"; }
-
-.fa-plug:before {
- content: "\f1e6"; }
-
-.fa-plus:before {
- content: "\f067"; }
-
-.fa-plus-circle:before {
- content: "\f055"; }
-
-.fa-plus-square:before {
- content: "\f0fe"; }
-
-.fa-podcast:before {
- content: "\f2ce"; }
-
-.fa-poo:before {
- content: "\f2fe"; }
-
-.fa-portrait:before {
- content: "\f3e0"; }
-
-.fa-pound-sign:before {
- content: "\f154"; }
-
-.fa-power-off:before {
- content: "\f011"; }
-
-.fa-prescription-bottle:before {
- content: "\f485"; }
-
-.fa-prescription-bottle-alt:before {
- content: "\f486"; }
-
-.fa-print:before {
- content: "\f02f"; }
-
-.fa-procedures:before {
- content: "\f487"; }
-
-.fa-product-hunt:before {
- content: "\f288"; }
-
-.fa-project-diagram:before {
- content: "\f542"; }
-
-.fa-pushed:before {
- content: "\f3e1"; }
-
-.fa-puzzle-piece:before {
- content: "\f12e"; }
-
-.fa-python:before {
- content: "\f3e2"; }
-
-.fa-qq:before {
- content: "\f1d6"; }
-
-.fa-qrcode:before {
- content: "\f029"; }
-
-.fa-question:before {
- content: "\f128"; }
-
-.fa-question-circle:before {
- content: "\f059"; }
-
-.fa-quidditch:before {
- content: "\f458"; }
-
-.fa-quinscape:before {
- content: "\f459"; }
-
-.fa-quora:before {
- content: "\f2c4"; }
-
-.fa-quote-left:before {
- content: "\f10d"; }
-
-.fa-quote-right:before {
- content: "\f10e"; }
-
-.fa-r-project:before {
- content: "\f4f7"; }
-
-.fa-random:before {
- content: "\f074"; }
-
-.fa-ravelry:before {
- content: "\f2d9"; }
-
-.fa-react:before {
- content: "\f41b"; }
-
-.fa-readme:before {
- content: "\f4d5"; }
-
-.fa-rebel:before {
- content: "\f1d0"; }
-
-.fa-receipt:before {
- content: "\f543"; }
-
-.fa-recycle:before {
- content: "\f1b8"; }
-
-.fa-red-river:before {
- content: "\f3e3"; }
-
-.fa-reddit:before {
- content: "\f1a1"; }
-
-.fa-reddit-alien:before {
- content: "\f281"; }
-
-.fa-reddit-square:before {
- content: "\f1a2"; }
-
-.fa-redo:before {
- content: "\f01e"; }
-
-.fa-redo-alt:before {
- content: "\f2f9"; }
-
-.fa-registered:before {
- content: "\f25d"; }
-
-.fa-rendact:before {
- content: "\f3e4"; }
-
-.fa-renren:before {
- content: "\f18b"; }
-
-.fa-reply:before {
- content: "\f3e5"; }
-
-.fa-reply-all:before {
- content: "\f122"; }
-
-.fa-replyd:before {
- content: "\f3e6"; }
-
-.fa-researchgate:before {
- content: "\f4f8"; }
-
-.fa-resolving:before {
- content: "\f3e7"; }
-
-.fa-retweet:before {
- content: "\f079"; }
-
-.fa-ribbon:before {
- content: "\f4d6"; }
-
-.fa-road:before {
- content: "\f018"; }
-
-.fa-robot:before {
- content: "\f544"; }
-
-.fa-rocket:before {
- content: "\f135"; }
-
-.fa-rocketchat:before {
- content: "\f3e8"; }
-
-.fa-rockrms:before {
- content: "\f3e9"; }
-
-.fa-rss:before {
- content: "\f09e"; }
-
-.fa-rss-square:before {
- content: "\f143"; }
-
-.fa-ruble-sign:before {
- content: "\f158"; }
-
-.fa-ruler:before {
- content: "\f545"; }
-
-.fa-ruler-combined:before {
- content: "\f546"; }
-
-.fa-ruler-horizontal:before {
- content: "\f547"; }
-
-.fa-ruler-vertical:before {
- content: "\f548"; }
-
-.fa-rupee-sign:before {
- content: "\f156"; }
-
-.fa-safari:before {
- content: "\f267"; }
-
-.fa-sass:before {
- content: "\f41e"; }
-
-.fa-save:before {
- content: "\f0c7"; }
-
-.fa-schlix:before {
- content: "\f3ea"; }
-
-.fa-school:before {
- content: "\f549"; }
-
-.fa-screwdriver:before {
- content: "\f54a"; }
-
-.fa-scribd:before {
- content: "\f28a"; }
-
-.fa-search:before {
- content: "\f002"; }
-
-.fa-search-minus:before {
- content: "\f010"; }
-
-.fa-search-plus:before {
- content: "\f00e"; }
-
-.fa-searchengin:before {
- content: "\f3eb"; }
-
-.fa-seedling:before {
- content: "\f4d8"; }
-
-.fa-sellcast:before {
- content: "\f2da"; }
-
-.fa-sellsy:before {
- content: "\f213"; }
-
-.fa-server:before {
- content: "\f233"; }
-
-.fa-servicestack:before {
- content: "\f3ec"; }
-
-.fa-share:before {
- content: "\f064"; }
-
-.fa-share-alt:before {
- content: "\f1e0"; }
-
-.fa-share-alt-square:before {
- content: "\f1e1"; }
-
-.fa-share-square:before {
- content: "\f14d"; }
-
-.fa-shekel-sign:before {
- content: "\f20b"; }
-
-.fa-shield-alt:before {
- content: "\f3ed"; }
-
-.fa-ship:before {
- content: "\f21a"; }
-
-.fa-shipping-fast:before {
- content: "\f48b"; }
-
-.fa-shirtsinbulk:before {
- content: "\f214"; }
-
-.fa-shoe-prints:before {
- content: "\f54b"; }
-
-.fa-shopping-bag:before {
- content: "\f290"; }
-
-.fa-shopping-basket:before {
- content: "\f291"; }
-
-.fa-shopping-cart:before {
- content: "\f07a"; }
-
-.fa-shower:before {
- content: "\f2cc"; }
-
-.fa-sign:before {
- content: "\f4d9"; }
-
-.fa-sign-in-alt:before {
- content: "\f2f6"; }
-
-.fa-sign-language:before {
- content: "\f2a7"; }
-
-.fa-sign-out-alt:before {
- content: "\f2f5"; }
-
-.fa-signal:before {
- content: "\f012"; }
-
-.fa-simplybuilt:before {
- content: "\f215"; }
-
-.fa-sistrix:before {
- content: "\f3ee"; }
-
-.fa-sitemap:before {
- content: "\f0e8"; }
-
-.fa-sith:before {
- content: "\f512"; }
-
-.fa-skull:before {
- content: "\f54c"; }
-
-.fa-skyatlas:before {
- content: "\f216"; }
-
-.fa-skype:before {
- content: "\f17e"; }
-
-.fa-slack:before {
- content: "\f198"; }
-
-.fa-slack-hash:before {
- content: "\f3ef"; }
-
-.fa-sliders-h:before {
- content: "\f1de"; }
-
-.fa-slideshare:before {
- content: "\f1e7"; }
-
-.fa-smile:before {
- content: "\f118"; }
-
-.fa-smoking:before {
- content: "\f48d"; }
-
-.fa-smoking-ban:before {
- content: "\f54d"; }
-
-.fa-snapchat:before {
- content: "\f2ab"; }
-
-.fa-snapchat-ghost:before {
- content: "\f2ac"; }
-
-.fa-snapchat-square:before {
- content: "\f2ad"; }
-
-.fa-snowflake:before {
- content: "\f2dc"; }
-
-.fa-sort:before {
- content: "\f0dc"; }
-
-.fa-sort-alpha-down:before {
- content: "\f15d"; }
-
-.fa-sort-alpha-up:before {
- content: "\f15e"; }
-
-.fa-sort-amount-down:before {
- content: "\f160"; }
-
-.fa-sort-amount-up:before {
- content: "\f161"; }
-
-.fa-sort-down:before {
- content: "\f0dd"; }
-
-.fa-sort-numeric-down:before {
- content: "\f162"; }
-
-.fa-sort-numeric-up:before {
- content: "\f163"; }
-
-.fa-sort-up:before {
- content: "\f0de"; }
-
-.fa-soundcloud:before {
- content: "\f1be"; }
-
-.fa-space-shuttle:before {
- content: "\f197"; }
-
-.fa-speakap:before {
- content: "\f3f3"; }
-
-.fa-spinner:before {
- content: "\f110"; }
-
-.fa-spotify:before {
- content: "\f1bc"; }
-
-.fa-square:before {
- content: "\f0c8"; }
-
-.fa-square-full:before {
- content: "\f45c"; }
-
-.fa-stack-exchange:before {
- content: "\f18d"; }
-
-.fa-stack-overflow:before {
- content: "\f16c"; }
-
-.fa-star:before {
- content: "\f005"; }
-
-.fa-star-half:before {
- content: "\f089"; }
-
-.fa-staylinked:before {
- content: "\f3f5"; }
-
-.fa-steam:before {
- content: "\f1b6"; }
-
-.fa-steam-square:before {
- content: "\f1b7"; }
-
-.fa-steam-symbol:before {
- content: "\f3f6"; }
-
-.fa-step-backward:before {
- content: "\f048"; }
-
-.fa-step-forward:before {
- content: "\f051"; }
-
-.fa-stethoscope:before {
- content: "\f0f1"; }
-
-.fa-sticker-mule:before {
- content: "\f3f7"; }
-
-.fa-sticky-note:before {
- content: "\f249"; }
-
-.fa-stop:before {
- content: "\f04d"; }
-
-.fa-stop-circle:before {
- content: "\f28d"; }
-
-.fa-stopwatch:before {
- content: "\f2f2"; }
-
-.fa-store:before {
- content: "\f54e"; }
-
-.fa-store-alt:before {
- content: "\f54f"; }
-
-.fa-strava:before {
- content: "\f428"; }
-
-.fa-stream:before {
- content: "\f550"; }
-
-.fa-street-view:before {
- content: "\f21d"; }
-
-.fa-strikethrough:before {
- content: "\f0cc"; }
-
-.fa-stripe:before {
- content: "\f429"; }
-
-.fa-stripe-s:before {
- content: "\f42a"; }
-
-.fa-stroopwafel:before {
- content: "\f551"; }
-
-.fa-studiovinari:before {
- content: "\f3f8"; }
-
-.fa-stumbleupon:before {
- content: "\f1a4"; }
-
-.fa-stumbleupon-circle:before {
- content: "\f1a3"; }
-
-.fa-subscript:before {
- content: "\f12c"; }
-
-.fa-subway:before {
- content: "\f239"; }
-
-.fa-suitcase:before {
- content: "\f0f2"; }
-
-.fa-sun:before {
- content: "\f185"; }
-
-.fa-superpowers:before {
- content: "\f2dd"; }
-
-.fa-superscript:before {
- content: "\f12b"; }
-
-.fa-supple:before {
- content: "\f3f9"; }
-
-.fa-sync:before {
- content: "\f021"; }
-
-.fa-sync-alt:before {
- content: "\f2f1"; }
-
-.fa-syringe:before {
- content: "\f48e"; }
-
-.fa-table:before {
- content: "\f0ce"; }
-
-.fa-table-tennis:before {
- content: "\f45d"; }
-
-.fa-tablet:before {
- content: "\f10a"; }
-
-.fa-tablet-alt:before {
- content: "\f3fa"; }
-
-.fa-tablets:before {
- content: "\f490"; }
-
-.fa-tachometer-alt:before {
- content: "\f3fd"; }
-
-.fa-tag:before {
- content: "\f02b"; }
-
-.fa-tags:before {
- content: "\f02c"; }
-
-.fa-tape:before {
- content: "\f4db"; }
-
-.fa-tasks:before {
- content: "\f0ae"; }
-
-.fa-taxi:before {
- content: "\f1ba"; }
-
-.fa-teamspeak:before {
- content: "\f4f9"; }
-
-.fa-telegram:before {
- content: "\f2c6"; }
-
-.fa-telegram-plane:before {
- content: "\f3fe"; }
-
-.fa-tencent-weibo:before {
- content: "\f1d5"; }
-
-.fa-terminal:before {
- content: "\f120"; }
-
-.fa-text-height:before {
- content: "\f034"; }
-
-.fa-text-width:before {
- content: "\f035"; }
-
-.fa-th:before {
- content: "\f00a"; }
-
-.fa-th-large:before {
- content: "\f009"; }
-
-.fa-th-list:before {
- content: "\f00b"; }
-
-.fa-themeisle:before {
- content: "\f2b2"; }
-
-.fa-thermometer:before {
- content: "\f491"; }
-
-.fa-thermometer-empty:before {
- content: "\f2cb"; }
-
-.fa-thermometer-full:before {
- content: "\f2c7"; }
-
-.fa-thermometer-half:before {
- content: "\f2c9"; }
-
-.fa-thermometer-quarter:before {
- content: "\f2ca"; }
-
-.fa-thermometer-three-quarters:before {
- content: "\f2c8"; }
-
-.fa-thumbs-down:before {
- content: "\f165"; }
-
-.fa-thumbs-up:before {
- content: "\f164"; }
-
-.fa-thumbtack:before {
- content: "\f08d"; }
-
-.fa-ticket-alt:before {
- content: "\f3ff"; }
-
-.fa-times:before {
- content: "\f00d"; }
-
-.fa-times-circle:before {
- content: "\f057"; }
-
-.fa-tint:before {
- content: "\f043"; }
-
-.fa-toggle-off:before {
- content: "\f204"; }
-
-.fa-toggle-on:before {
- content: "\f205"; }
-
-.fa-toolbox:before {
- content: "\f552"; }
-
-.fa-trade-federation:before {
- content: "\f513"; }
-
-.fa-trademark:before {
- content: "\f25c"; }
-
-.fa-train:before {
- content: "\f238"; }
-
-.fa-transgender:before {
- content: "\f224"; }
-
-.fa-transgender-alt:before {
- content: "\f225"; }
-
-.fa-trash:before {
- content: "\f1f8"; }
-
-.fa-trash-alt:before {
- content: "\f2ed"; }
-
-.fa-tree:before {
- content: "\f1bb"; }
-
-.fa-trello:before {
- content: "\f181"; }
-
-.fa-tripadvisor:before {
- content: "\f262"; }
-
-.fa-trophy:before {
- content: "\f091"; }
-
-.fa-truck:before {
- content: "\f0d1"; }
-
-.fa-truck-loading:before {
- content: "\f4de"; }
-
-.fa-truck-moving:before {
- content: "\f4df"; }
-
-.fa-tshirt:before {
- content: "\f553"; }
-
-.fa-tty:before {
- content: "\f1e4"; }
-
-.fa-tumblr:before {
- content: "\f173"; }
-
-.fa-tumblr-square:before {
- content: "\f174"; }
-
-.fa-tv:before {
- content: "\f26c"; }
-
-.fa-twitch:before {
- content: "\f1e8"; }
-
-.fa-twitter:before {
- content: "\f099"; }
-
-.fa-twitter-square:before {
- content: "\f081"; }
-
-.fa-typo3:before {
- content: "\f42b"; }
-
-.fa-uber:before {
- content: "\f402"; }
-
-.fa-uikit:before {
- content: "\f403"; }
-
-.fa-umbrella:before {
- content: "\f0e9"; }
-
-.fa-underline:before {
- content: "\f0cd"; }
-
-.fa-undo:before {
- content: "\f0e2"; }
-
-.fa-undo-alt:before {
- content: "\f2ea"; }
-
-.fa-uniregistry:before {
- content: "\f404"; }
-
-.fa-universal-access:before {
- content: "\f29a"; }
-
-.fa-university:before {
- content: "\f19c"; }
-
-.fa-unlink:before {
- content: "\f127"; }
-
-.fa-unlock:before {
- content: "\f09c"; }
-
-.fa-unlock-alt:before {
- content: "\f13e"; }
-
-.fa-untappd:before {
- content: "\f405"; }
-
-.fa-upload:before {
- content: "\f093"; }
-
-.fa-usb:before {
- content: "\f287"; }
-
-.fa-user:before {
- content: "\f007"; }
-
-.fa-user-alt:before {
- content: "\f406"; }
-
-.fa-user-alt-slash:before {
- content: "\f4fa"; }
-
-.fa-user-astronaut:before {
- content: "\f4fb"; }
-
-.fa-user-check:before {
- content: "\f4fc"; }
-
-.fa-user-circle:before {
- content: "\f2bd"; }
-
-.fa-user-clock:before {
- content: "\f4fd"; }
-
-.fa-user-cog:before {
- content: "\f4fe"; }
-
-.fa-user-edit:before {
- content: "\f4ff"; }
-
-.fa-user-friends:before {
- content: "\f500"; }
-
-.fa-user-graduate:before {
- content: "\f501"; }
-
-.fa-user-lock:before {
- content: "\f502"; }
-
-.fa-user-md:before {
- content: "\f0f0"; }
-
-.fa-user-minus:before {
- content: "\f503"; }
-
-.fa-user-ninja:before {
- content: "\f504"; }
-
-.fa-user-plus:before {
- content: "\f234"; }
-
-.fa-user-secret:before {
- content: "\f21b"; }
-
-.fa-user-shield:before {
- content: "\f505"; }
-
-.fa-user-slash:before {
- content: "\f506"; }
-
-.fa-user-tag:before {
- content: "\f507"; }
-
-.fa-user-tie:before {
- content: "\f508"; }
-
-.fa-user-times:before {
- content: "\f235"; }
-
-.fa-users:before {
- content: "\f0c0"; }
-
-.fa-users-cog:before {
- content: "\f509"; }
-
-.fa-ussunnah:before {
- content: "\f407"; }
-
-.fa-utensil-spoon:before {
- content: "\f2e5"; }
-
-.fa-utensils:before {
- content: "\f2e7"; }
-
-.fa-vaadin:before {
- content: "\f408"; }
-
-.fa-venus:before {
- content: "\f221"; }
-
-.fa-venus-double:before {
- content: "\f226"; }
-
-.fa-venus-mars:before {
- content: "\f228"; }
-
-.fa-viacoin:before {
- content: "\f237"; }
-
-.fa-viadeo:before {
- content: "\f2a9"; }
-
-.fa-viadeo-square:before {
- content: "\f2aa"; }
-
-.fa-vial:before {
- content: "\f492"; }
-
-.fa-vials:before {
- content: "\f493"; }
-
-.fa-viber:before {
- content: "\f409"; }
-
-.fa-video:before {
- content: "\f03d"; }
-
-.fa-video-slash:before {
- content: "\f4e2"; }
-
-.fa-vimeo:before {
- content: "\f40a"; }
-
-.fa-vimeo-square:before {
- content: "\f194"; }
-
-.fa-vimeo-v:before {
- content: "\f27d"; }
-
-.fa-vine:before {
- content: "\f1ca"; }
-
-.fa-vk:before {
- content: "\f189"; }
-
-.fa-vnv:before {
- content: "\f40b"; }
-
-.fa-volleyball-ball:before {
- content: "\f45f"; }
-
-.fa-volume-down:before {
- content: "\f027"; }
-
-.fa-volume-off:before {
- content: "\f026"; }
-
-.fa-volume-up:before {
- content: "\f028"; }
-
-.fa-vuejs:before {
- content: "\f41f"; }
-
-.fa-walking:before {
- content: "\f554"; }
-
-.fa-wallet:before {
- content: "\f555"; }
-
-.fa-warehouse:before {
- content: "\f494"; }
-
-.fa-weibo:before {
- content: "\f18a"; }
-
-.fa-weight:before {
- content: "\f496"; }
-
-.fa-weixin:before {
- content: "\f1d7"; }
-
-.fa-whatsapp:before {
- content: "\f232"; }
-
-.fa-whatsapp-square:before {
- content: "\f40c"; }
-
-.fa-wheelchair:before {
- content: "\f193"; }
-
-.fa-whmcs:before {
- content: "\f40d"; }
-
-.fa-wifi:before {
- content: "\f1eb"; }
-
-.fa-wikipedia-w:before {
- content: "\f266"; }
-
-.fa-window-close:before {
- content: "\f410"; }
-
-.fa-window-maximize:before {
- content: "\f2d0"; }
-
-.fa-window-minimize:before {
- content: "\f2d1"; }
-
-.fa-window-restore:before {
- content: "\f2d2"; }
-
-.fa-windows:before {
- content: "\f17a"; }
-
-.fa-wine-glass:before {
- content: "\f4e3"; }
-
-.fa-wolf-pack-battalion:before {
- content: "\f514"; }
-
-.fa-won-sign:before {
- content: "\f159"; }
-
-.fa-wordpress:before {
- content: "\f19a"; }
-
-.fa-wordpress-simple:before {
- content: "\f411"; }
-
-.fa-wpbeginner:before {
- content: "\f297"; }
-
-.fa-wpexplorer:before {
- content: "\f2de"; }
-
-.fa-wpforms:before {
- content: "\f298"; }
-
-.fa-wrench:before {
- content: "\f0ad"; }
-
-.fa-x-ray:before {
- content: "\f497"; }
-
-.fa-xbox:before {
- content: "\f412"; }
-
-.fa-xing:before {
- content: "\f168"; }
-
-.fa-xing-square:before {
- content: "\f169"; }
-
-.fa-y-combinator:before {
- content: "\f23b"; }
-
-.fa-yahoo:before {
- content: "\f19e"; }
-
-.fa-yandex:before {
- content: "\f413"; }
-
-.fa-yandex-international:before {
- content: "\f414"; }
-
-.fa-yelp:before {
- content: "\f1e9"; }
-
-.fa-yen-sign:before {
- content: "\f157"; }
-
-.fa-yoast:before {
- content: "\f2b1"; }
-
-.fa-youtube:before {
- content: "\f167"; }
-
-.fa-youtube-square:before {
- content: "\f431"; }
-
-.sr-only {
- border: 0;
- clip: rect(0, 0, 0, 0);
- height: 1px;
- margin: -1px;
- overflow: hidden;
- padding: 0;
- position: absolute;
- width: 1px; }
-
-.sr-only-focusable:active, .sr-only-focusable:focus {
- clip: auto;
- height: auto;
- margin: 0;
- overflow: visible;
- position: static;
- width: auto; }
-@font-face {
- font-family: 'Font Awesome 5 Brands';
- font-style: normal;
- font-weight: normal;
- /*
- Add this to improve loading of the page
- */
- font-display: swap;
- src: url("../webfonts/fa-brands-400.eot");
- src: url("../webfonts/fa-brands-400.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-brands-400.woff2") format("woff2"), url("../webfonts/fa-brands-400.woff") format("woff"), url("../webfonts/fa-brands-400.ttf") format("truetype"), url("../webfonts/fa-brands-400.svg#fontawesome") format("svg"); }
-
-.fab {
- font-family: 'Font Awesome 5 Brands'; }
-@font-face {
- font-family: 'Font Awesome 5 Free';
- font-style: normal;
- font-weight: 400;
- /*
- Add this to improve loading of the page
- */
- font-display: swap;
- src: url("../webfonts/fa-regular-400.eot");
- src: url("../webfonts/fa-regular-400.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-regular-400.woff2") format("woff2"), url("../webfonts/fa-regular-400.woff") format("woff"), url("../webfonts/fa-regular-400.ttf") format("truetype"), url("../webfonts/fa-regular-400.svg#fontawesome") format("svg"); }
-
-.far {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400; }
-@font-face {
- font-family: 'Font Awesome 5 Free';
- font-style: normal;
- font-weight: 900;
- /*
- Add this to improve loading of the page
- */
- font-display: swap;
- src: url("../webfonts/fa-solid-900.eot");
- src: url("../webfonts/fa-solid-900.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-solid-900.woff2") format("woff2"), url("../webfonts/fa-solid-900.woff") format("woff"), url("../webfonts/fa-solid-900.ttf") format("truetype"), url("../webfonts/fa-solid-900.svg#fontawesome") format("svg"); }
-
-.fa,
-.fas {
- font-family: 'Font Awesome 5 Free';
- font-weight: 900; }
diff --git a/src/external/fontawesome/webfonts/fa-brands-400.eot b/src/external/fontawesome/webfonts/fa-brands-400.eot
deleted file mode 100644
index 41b4e1d..0000000
Binary files a/src/external/fontawesome/webfonts/fa-brands-400.eot and /dev/null differ
diff --git a/src/external/fontawesome/webfonts/fa-brands-400.svg b/src/external/fontawesome/webfonts/fa-brands-400.svg
deleted file mode 100644
index 039c2b8..0000000
--- a/src/external/fontawesome/webfonts/fa-brands-400.svg
+++ /dev/null
@@ -1,1104 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/external/fontawesome/webfonts/fa-brands-400.ttf b/src/external/fontawesome/webfonts/fa-brands-400.ttf
deleted file mode 100644
index 357b16b..0000000
Binary files a/src/external/fontawesome/webfonts/fa-brands-400.ttf and /dev/null differ
diff --git a/src/external/fontawesome/webfonts/fa-brands-400.woff b/src/external/fontawesome/webfonts/fa-brands-400.woff
deleted file mode 100644
index d6b2570..0000000
Binary files a/src/external/fontawesome/webfonts/fa-brands-400.woff and /dev/null differ
diff --git a/src/external/fontawesome/webfonts/fa-brands-400.woff2 b/src/external/fontawesome/webfonts/fa-brands-400.woff2
deleted file mode 100644
index 4661a5e..0000000
Binary files a/src/external/fontawesome/webfonts/fa-brands-400.woff2 and /dev/null differ
diff --git a/src/external/fontawesome/webfonts/fa-regular-400.eot b/src/external/fontawesome/webfonts/fa-regular-400.eot
deleted file mode 100644
index 91f5899..0000000
Binary files a/src/external/fontawesome/webfonts/fa-regular-400.eot and /dev/null differ
diff --git a/src/external/fontawesome/webfonts/fa-regular-400.svg b/src/external/fontawesome/webfonts/fa-regular-400.svg
deleted file mode 100644
index 1bde348..0000000
--- a/src/external/fontawesome/webfonts/fa-regular-400.svg
+++ /dev/null
@@ -1,372 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/external/fontawesome/webfonts/fa-regular-400.ttf b/src/external/fontawesome/webfonts/fa-regular-400.ttf
deleted file mode 100644
index b219a1f..0000000
Binary files a/src/external/fontawesome/webfonts/fa-regular-400.ttf and /dev/null differ
diff --git a/src/external/fontawesome/webfonts/fa-regular-400.woff b/src/external/fontawesome/webfonts/fa-regular-400.woff
deleted file mode 100644
index f6a3968..0000000
Binary files a/src/external/fontawesome/webfonts/fa-regular-400.woff and /dev/null differ
diff --git a/src/external/fontawesome/webfonts/fa-regular-400.woff2 b/src/external/fontawesome/webfonts/fa-regular-400.woff2
deleted file mode 100644
index 1fb1c38..0000000
Binary files a/src/external/fontawesome/webfonts/fa-regular-400.woff2 and /dev/null differ
diff --git a/src/external/fontawesome/webfonts/fa-solid-900.eot b/src/external/fontawesome/webfonts/fa-solid-900.eot
deleted file mode 100644
index a32dc8a..0000000
Binary files a/src/external/fontawesome/webfonts/fa-solid-900.eot and /dev/null differ
diff --git a/src/external/fontawesome/webfonts/fa-solid-900.svg b/src/external/fontawesome/webfonts/fa-solid-900.svg
deleted file mode 100644
index 94bb8f2..0000000
--- a/src/external/fontawesome/webfonts/fa-solid-900.svg
+++ /dev/null
@@ -1,1896 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/external/fontawesome/webfonts/fa-solid-900.ttf b/src/external/fontawesome/webfonts/fa-solid-900.ttf
deleted file mode 100644
index 4e518ad..0000000
Binary files a/src/external/fontawesome/webfonts/fa-solid-900.ttf and /dev/null differ
diff --git a/src/external/fontawesome/webfonts/fa-solid-900.woff b/src/external/fontawesome/webfonts/fa-solid-900.woff
deleted file mode 100644
index 277d8ce..0000000
Binary files a/src/external/fontawesome/webfonts/fa-solid-900.woff and /dev/null differ
diff --git a/src/external/fontawesome/webfonts/fa-solid-900.woff2 b/src/external/fontawesome/webfonts/fa-solid-900.woff2
deleted file mode 100644
index 69bd429..0000000
Binary files a/src/external/fontawesome/webfonts/fa-solid-900.woff2 and /dev/null differ
diff --git a/src/global.d.ts b/src/global.d.ts
new file mode 100644
index 0000000..9cfa925
--- /dev/null
+++ b/src/global.d.ts
@@ -0,0 +1,11 @@
+interface ImportMetaEnv {
+ VITE_BLOG_URL: string;
+ VITE_FAQ_URL: string;
+ VITE_COMPATIBILITY_URL: string;
+ VITE_GUIDE_URL: string;
+ VITE_DISCORD_URL: string;
+ VITE_RELEASE_URL: string;
+ VITE_OLDER_BUILDS_URL: string;
+ VITE_LDN_BUILD_URL: string;
+ VITE_PATREON_URL: string;
+}
diff --git a/src/i18n/index.ts b/src/i18n/index.ts
new file mode 100644
index 0000000..551fe16
--- /dev/null
+++ b/src/i18n/index.ts
@@ -0,0 +1,12 @@
+import { createI18n } from "vue-i18n";
+
+import { en } from "@/i18n/locales/en";
+
+export const i18n = createI18n({
+ legacy: false,
+ locale: "en",
+ fallbackLocale: "en",
+ messages: {
+ en,
+ },
+});
diff --git a/src/i18n/locales/en/footer.json b/src/i18n/locales/en/footer.json
new file mode 100644
index 0000000..d77370c
--- /dev/null
+++ b/src/i18n/locales/en/footer.json
@@ -0,0 +1,4 @@
+{
+ "getStarted": "Get Started",
+ "contribute": "Contribute"
+}
diff --git a/src/i18n/locales/en/header.json b/src/i18n/locales/en/header.json
new file mode 100644
index 0000000..8db3c6d
--- /dev/null
+++ b/src/i18n/locales/en/header.json
@@ -0,0 +1,8 @@
+{
+ "title1": "A simple, experimental {0} emulator",
+ "title2": "Nintendo Switch",
+ "description": "Ryujinx is an open-source Nintendo Switch emulator created by {0} and written in C#. This emulator aims at providing excellent accuracy and performance, a user-friendly interface, and consistent builds.",
+ "author": "gdkchan",
+ "getStarted": "Get Started",
+ "contribute": "Contribute"
+}
diff --git a/src/i18n/locales/en/index.ts b/src/i18n/locales/en/index.ts
new file mode 100644
index 0000000..0c21936
--- /dev/null
+++ b/src/i18n/locales/en/index.ts
@@ -0,0 +1,17 @@
+import navigations from "./navigations.json";
+import footer from "./footer.json";
+import header from "./header.json";
+import homepage from "./views/homepage.json";
+import download from "./views/download.json";
+import contribute from "./views/contribute.json";
+
+export const en = {
+ navigations: navigations,
+ header: header,
+ footer: footer,
+ views: {
+ homepage: homepage,
+ download: download,
+ contribute: contribute
+ },
+};
diff --git a/src/i18n/locales/en/navigations.json b/src/i18n/locales/en/navigations.json
new file mode 100644
index 0000000..10c8e34
--- /dev/null
+++ b/src/i18n/locales/en/navigations.json
@@ -0,0 +1,7 @@
+{
+ "blog": "Blog",
+ "download": "Download",
+ "guide": "Guide",
+ "faq": "FAQ",
+ "compatibility": "Compatibility"
+}
diff --git a/src/i18n/locales/en/views/contribute.json b/src/i18n/locales/en/views/contribute.json
new file mode 100644
index 0000000..6d68be0
--- /dev/null
+++ b/src/i18n/locales/en/views/contribute.json
@@ -0,0 +1,12 @@
+{
+ "title1": "Help us to build the {0}",
+ "title2": "best switch emulator",
+ "subTitle": "Created by a passionate team. Ryujinx is in active development and any help is appreciated to keep it going.",
+ "titleContribute": " How may I contribute?",
+ "areaDevTitle": "Helping With Development",
+ "areaDevDescription": "If you have experience in C#, Switch Homebrew, graphic/website design, software quality assurance or beta testing, Discord management, or any other skills you think may be useful in helping the Ryujinx project, please contact us at our Discord server.",
+ "joinDiscord": "Join our Discord",
+ "becomePatron": "Become a Patron",
+ "areaDonationTitle": "Helping With Donations",
+ "areaDonationDescription": "If you can't help out with development experience, there are other ways to support us. Whilst monetary donations are by no means required, we do appreciate them. They'll go towards necessary equipment and the likes. In return, there are some rewards that you will receive as a supporter (for example access to a patreon-only text channel on our Discord)."
+}
diff --git a/src/i18n/locales/en/views/download.json b/src/i18n/locales/en/views/download.json
new file mode 100644
index 0000000..a1b0707
--- /dev/null
+++ b/src/i18n/locales/en/views/download.json
@@ -0,0 +1,22 @@
+{
+ "title1": "Latest {0}",
+ "title2": "Download",
+ "subTitle": "Don't forget to consult {0} after installation",
+ "startupGuide": "the start-up guide",
+ "download": "Download",
+ "notSupported": "Currently not supported",
+ "supportPlanned": "Support planned",
+ "supportWindows": "For Windows 10 & 11",
+ "supportLinux": "For the most common Linux distros",
+ "buildInformation": "Build information",
+ "buildRelease": "This build was released on {0}",
+ "assets": "assets",
+ "downloads": "downloads",
+ "tag": "Tag",
+ "manualDownload": "Manual download",
+ "olderBuilds": "Older builds",
+ "ldnBuildTitle": "Looking for the {0}?",
+ "ldnBuild": "LDN build",
+ "ldnBuildDescription": "Head over to our Patreon for more info & FREE download",
+ "learnMore": "Learn More"
+}
diff --git a/src/i18n/locales/en/views/homepage.json b/src/i18n/locales/en/views/homepage.json
new file mode 100644
index 0000000..6c0becf
--- /dev/null
+++ b/src/i18n/locales/en/views/homepage.json
@@ -0,0 +1,26 @@
+{
+ "ourTeam": "Our team",
+ "ourTeamDescription": "These developers are working non-stop to build a better Switch emulator.",
+ "aboutProject": "About the Project",
+ "featureDescription": " Written from scratch, the development started in 2017 and is still going strong.",
+ "openSource": "Open source",
+ "openSourceDescription": "Developed by a passionate team, the source code of the emulator is available on {0}.",
+ "github": "GitHub",
+ "crossPlatform": "Cross-platform",
+ "crossPlatformDescription": "Ryujinx is currently available for Windows 10/11 and Linux-based systems (macOS support is planned).",
+ "compatibility": "Compatibility",
+ "compatibilityDescription": "Ryujinx has been tested over 3,600 titles, approximately 2,700 of those being considered playable.",
+ "support": "Support",
+ "supportDescription": "Need help? Join the {0} to get support as well as converse with fellow switch emulation enthusiasts and team developers.",
+ "discord": "Ryujinx Discord server",
+ "supportUs": "Support US",
+ "trustedCommunities": "Trusted by the community",
+ "trustedCommunitiesDescription": "If you have contributions, suggestions, need emulator support or just want to get in touch with the team. Contact us on Twitter or Discord ;)",
+ "githubStar": "GitHub Stars",
+ "playableGames": "Playable games",
+ "patreonContributors": "Patreon Contributors",
+ "nameQuestion": "Why the {0} ?",
+ "name": "name",
+ "nameDescription": "Pronounced {0}. Based on the name \"Ryujin\", a mythical sea-god/dragon. The NX part of the name is from the Codename of the Switch itself.",
+ "spelled": "Ree-You-Jinx"
+}
diff --git a/src/layouts/BaseHomeLayout.vue b/src/layouts/BaseHomeLayout.vue
new file mode 100644
index 0000000..3a16766
--- /dev/null
+++ b/src/layouts/BaseHomeLayout.vue
@@ -0,0 +1,31 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layouts/BaseLayout.vue b/src/layouts/BaseLayout.vue
new file mode 100644
index 0000000..9accd9c
--- /dev/null
+++ b/src/layouts/BaseLayout.vue
@@ -0,0 +1,31 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/layouts/Default.vue b/src/layouts/Default.vue
deleted file mode 100644
index b2b16be..0000000
--- a/src/layouts/Default.vue
+++ /dev/null
@@ -1,232 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
- fas fa-home
-
-
- fas fa-newspaper
-
-
- fas fa-download
-
-
- fas fa-code
-
-
- fas fa-info-circle
-
-
- fas fa-question-circle
-
-
- fas fa-gamepad
-
-
-
- fab {{ element.node.icon }}
-
-
-
- Home
- Blog
- Download
- Contribute
- Guide
- FAQ
- Compatibility
-
-
- fab {{ element.node.icon }}
-
-
-
-
- fas fa-sun
- fas fa-moon
-
-
-
-
-
-
-
-
-
-
-
- fas fa-home
-
- Home
-
-
-
-
-
- fas fa-newspaper
-
- Blog
-
-
-
-
-
- fas fa-download
-
- Download
-
-
-
-
-
- fas fa-code
-
- Contribute
-
-
-
-
-
- fas fa-info-circle
-
- Guide
-
-
-
-
-
- fas fa-question-circle
-
- FAQ
-
-
-
-
-
- fas fa-gamepad
-
- Game Compatibility
-
-
-
-
-
-
- fab {{ element.node.icon }}
-
- {{element.node.title}}
-
-
-
-
-
-
- Website designed by
- Lordmau5
-
-
-
-
- {{this.$static.metadata.siteAuthor}} © {{ new Date().getFullYear() }}
-
-
-
-
-
-
-
-query {
- metadata {
- siteAuthor
- }
- socialNavbarElements: allSocialNavbarElements(order: ASC) {
- edges {
- node {
- title
- color
- href
- icon
- }
- }
- }
-}
-
-
-
-
-
-
-
diff --git a/src/main.js b/src/main.js
deleted file mode 100644
index 7986798..0000000
--- a/src/main.js
+++ /dev/null
@@ -1,62 +0,0 @@
-import Vuetify from 'vuetify/lib'
-import 'vuetify/dist/vuetify.min.css'
-import '~/external/fontawesome/css/fontawesome-all.css'
-import DefaultLayout from '~/layouts/Default.vue'
-import SEO from '~/components/SEO.vue'
-import DownloadButton from '~/components/DownloadButton.vue'
-
-export default function (Vue, { appOptions, head }) {
- // First inject custom CSS needed
- head.link.push({
- rel: 'stylesheet',
- href: 'https://fonts.googleapis.com/css?family=Roboto:300,400,500&display=swap'
- })
-
- // Remove the generator tag
- const gIndex = head.meta.findIndex(e => e.name === 'generator')
- if (gIndex !== -1) head.meta.splice(gIndex, 1)
-
- // Remove the description tag as we generate a custom one in SEO
- const dIndex = head.meta.findIndex(e => e.name === 'description')
- if (dIndex !== -1) head.meta.splice(dIndex, 1)
-
- // For Google Search Console
- head.meta.push({
- name: "google-site-verification",
- content: "6-jOQTZMaaKrCTbkRoghe5Pd1kbYhyGpOTAgUhoT9HA"
- })
-
- const opts = {
- theme: {
- themes: {
- light: {
- ryu_blue: '#02C5E5',
- ryu_orange: '#FF5F55',
- },
- dark: {
- ryu_blue: '#02C5E5',
- ryu_orange: '#FF5F55',
- }
- }
- },
- icons: {
- iconfont: 'fa',
- },
- } //opts includes, vuetify themes, icons, etc.
-
- Vue.use(Vuetify)
-
- appOptions.vuetify = new Vuetify(opts);
-
- // Disable production tip
- //Vue.config.productionTip = false;
-
- // Set default layout as a global component
- Vue.component('Layout', DefaultLayout)
-
- // Set the SEO component
- Vue.component('SEO', SEO)
-
- // Generic Components
- Vue.component('DownloadButton', DownloadButton)
-}
diff --git a/src/main.ts b/src/main.ts
new file mode 100644
index 0000000..64a4224
--- /dev/null
+++ b/src/main.ts
@@ -0,0 +1,14 @@
+import { createApp } from "vue";
+
+import { router } from "./routes";
+import { i18n } from "@/i18n";
+
+import App from "./App.vue";
+import GButton from "@/common/components/generic/GButton.vue";
+
+const app = createApp(App);
+
+app.use(router).use(i18n);
+app.component("GButton", GButton);
+
+app.mount("#app");
diff --git a/src/modules/SocialIconList.vue b/src/modules/SocialIconList.vue
new file mode 100644
index 0000000..0eb468e
--- /dev/null
+++ b/src/modules/SocialIconList.vue
@@ -0,0 +1,62 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/modules/TeamList.vue b/src/modules/TeamList.vue
new file mode 100644
index 0000000..0b009ff
--- /dev/null
+++ b/src/modules/TeamList.vue
@@ -0,0 +1,47 @@
+
+
+
+
+
+
+
+
+
+ {{t("views.homepage.ourTeamDescription")}}
+
+
+
+
+
+
+
+
+
+
+
{{ member.title }}
+
+
+
+
+
diff --git a/src/pages/Build.vue b/src/pages/Build.vue
deleted file mode 100644
index 8a80832..0000000
--- a/src/pages/Build.vue
+++ /dev/null
@@ -1,76 +0,0 @@
-
-
-
-
-
-
-
-
-
-
Building Ryujinx:
-
-
-
- Step one:
-
- Download .NET 6
- here . Then install the SDK.
-
-
-
- Step two (Variant one):
-
- After the installation of the .NET SDK is done; go ahead and copy the Clone link from GitHub from
- here (via Clone or Download --> Copy HTTPS Link. Or you can download the ZIP tarball.)
- You can Git Clone the repo by using the GitBash, or you may use the second variant.
-
-
-
- Step two (Variant two):
- Download the ZIP Tarball. Then extract it to a directory of your choice.
-
-
- Step three:
-
- Build the App using a Command prompt in the ROOT directory. You can quickly access it by Holding shift in explorer (in the Ryujinx directory) then right clicking,
- and typing the following command
- dotnet publish -c Release -r win-x64 --self-contained
.
- The build directory is "root/bin/release/etc/etc."
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-query {
- extraPagesInfo(path: "/build") {
- path
- title
- keywords
- }
-}
-
-
-
diff --git a/src/pages/Contribute.vue b/src/pages/Contribute.vue
deleted file mode 100644
index 745de39..0000000
--- a/src/pages/Contribute.vue
+++ /dev/null
@@ -1,134 +0,0 @@
-
-
-
-
-
-
-
-
-
-
How may I contribute?
-
-
-
- Helping With Development
-
-
- Helping With Donations
-
-
-
-
-
-
- If you have experience in C#, Switch Homebrew, graphic/website design, software quality assurance or beta testing, Discord management, or any other skills you think may be useful in helping the Ryujinx project, please contact us at our Discord server.
-
-
-
-
- If you can't help out with development experience, there's other ways to support.
- Whilst monetary donations are by no means required, we do appreciate them.
- They'll go towards necessary equipment and the likes.
- In return, there's some rewards that you as a supporter will get (for example access to a patreon-only text channel on our Discord).
-
-
-
-
-
-
-
- fab fa-discord Join our Discord!
-
-
-
-
- fab fa-patreon Become a patron!
-
-
-
-
-
-
- Helping With Development
-
- If you have experience in C#, Switch Homebrew, graphic/website design, software quality assurance or beta testing, Discord management, or any other skills you think may be useful in helping the Ryujinx project, please contact us at our Discord server.
-
-
-
- fab fa-discord Join our Discord!
-
-
-
- Helping With Donations
-
- If you can't help out with development experience, there's other ways to support.
- Whilst monetary donations are by no means required, we do appreciate them.
- They'll go towards necessary equipment and the likes.
- In return, there's some rewards that you as a supporter will get (for example access to a patreon-only text channel on our Discord).
-
-
-
- fab fa-patreon Become a patron!
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-query {
- extraPagesInfo(path: "/contribute") {
- path
- title
- keywords
- }
-}
-
diff --git a/src/pages/Download.vue b/src/pages/Download.vue
deleted file mode 100644
index 36d747d..0000000
--- a/src/pages/Download.vue
+++ /dev/null
@@ -1,167 +0,0 @@
-
-
-
-
-
-
-
-
-
-
Building Ryujinx and latest downloads
-
-
-
-
-
-
- Automatically compiled builds
-
-
-
-
-
-
-
-
-
-
-
-
- Changelog
-
-
- Older Builds
-
-
-
-
-
-
- Looking for the LDN build?
- Head over to our Patreon for more info & FREE download
-
-
-
-
- Need help?
-
- Check out the Setup Guide,
- read the FAQ
- or head to our Discord!
-
-
-
-
-
- Building methods
-
- fas fa-code .NET
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-query {
- extraPagesInfo(path: "/download") {
- path
- title
- keywords
- }
-}
-
-
-
diff --git a/src/pages/Index.vue b/src/pages/Index.vue
deleted file mode 100644
index 6c219ea..0000000
--- a/src/pages/Index.vue
+++ /dev/null
@@ -1,221 +0,0 @@
-
-
-
-
-
-
-
-
- A simple, experimental Nintendo Switch emulator.
-
-
-
-
-
-
-
-
-
-
-
What is Ryujinx?
-
-
- (REE-YOU-JINX)
-
-
- Ryujinx is an open-source Nintendo Switch emulator created by gdkchan and written in C#.
- This emulator aims at providing excellent accuracy and performance, a user-friendly interface, and consistent builds.
- Ryujinx is available on GitHub under the MIT license.
-
-
-
-
- fas fa-gamepad Game compatibility list
-
-
- fas fa-download Download the latest build
-
-
-
-
-
-
-
-
-
-
-
-
- fab fa-github
-
-
- Where can I grab it?
-
-
- You can download the latest pre-compiled build here , or you may build directly from the Ryujinx source code repository by following the guide here .
-
-
-
-
-
-
- fas fa-code
-
-
- How can I contribute?
-
- Please visit the contributing tab for more information.
-
-
-
-
-
- fas fa-gamepad
-
-
- How well does it work?
-
- As of January 2022, Ryujinx has been tested on nearly 3,500 titles: ~3,200 boot past menus and into gameplay, with approximately 2,500 of those being considered playable. See the compatibility list here .
-
-
-
-
-
-
-
-
-
-
-
-
- fab fa-windows
- fab fa-apple
- fab fa-linux
-
-
- Platforms
-
- Ryujinx is currently available for Windows 10+ and Linux (macOS support is planned).
-
-
-
-
-
- fab fa-discord
-
-
- Discord
-
-
- Join the Ryujinx Discord server ! You can get help,
- as well as converse with fellow users and developers.
-
-
-
-
-
-
- fab fa-nintendo-switch
-
-
- Why the name?
-
-
- The name Ryujinx is based on the name "Ryujin."
- In other words, a name for a Mythical (Sea-God) Dragon.
- More information can be found here.
- The name stems from Ryu (as already explained), then RyuJIT;
- which is the codename for the JIT compiler for .NET Core.
- The NX part of the name is from the Codename of the Switch itself.
-
-
-
-
-
-
-
-
-
-
-
-
-
- fas fa-users
-
-
- Our Team
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ member.node.name }}
- {{ member.name }}
-
-
- {{ member.node.title }}
- {{ member.node.description }}
-
-
-
-
-
-
-
-
-
-
-
-
-query {
- teams: allTeam(order: ASC) {
- edges {
- node {
- id
- name
- github
- avatar
- title
- }
- }
- }
- extraPagesInfo(path: "/") {
- path
- title
- keywords
- }
-}
-
-
diff --git a/src/routes/children/index.ts b/src/routes/children/index.ts
new file mode 100644
index 0000000..00177b9
--- /dev/null
+++ b/src/routes/children/index.ts
@@ -0,0 +1,16 @@
+const HomePage = () => import("@/views/HomePage.vue");
+const DownloadPage = () => import("@/views/DownloadPage.vue");
+const ContributePage = () => import("@/views/ContributePage.vue");
+
+export default [
+ {
+ path: "download",
+ name: "download",
+ component: DownloadPage,
+ },
+ {
+ path: "contribute",
+ name: "contribute",
+ component: ContributePage,
+ },
+];
diff --git a/src/routes/index.ts b/src/routes/index.ts
new file mode 100644
index 0000000..8ac3ed4
--- /dev/null
+++ b/src/routes/index.ts
@@ -0,0 +1,33 @@
+import { createRouter, createWebHistory } from "vue-router";
+
+import BaseLayout from "@/layouts/BaseLayout.vue";
+import BaseHomeLayout from "@/layouts/BaseHomeLayout.vue";
+import Children from "./children";
+const HomePage = () => import("@/views/HomePage.vue");
+
+export const router = createRouter({
+ history: createWebHistory(),
+ linkActiveClass: "active",
+ linkExactActiveClass: "",
+ scrollBehavior() {
+ window.scrollTo(0, 0);
+ },
+ routes: [
+ {
+ path: "/",
+ component: BaseHomeLayout,
+ children: [
+ {
+ path: "",
+ name: "home",
+ component: HomePage
+ }
+ ]
+ },
+ {
+ path: "/",
+ component: BaseLayout,
+ children: Children,
+ },
+ ],
+});
diff --git a/src/templates/.gitkeep b/src/templates/.gitkeep
deleted file mode 100644
index e69de29..0000000
diff --git a/src/types/generic/navigation.ts b/src/types/generic/navigation.ts
new file mode 100644
index 0000000..abe21f3
--- /dev/null
+++ b/src/types/generic/navigation.ts
@@ -0,0 +1,5 @@
+export type NavigationNode = {
+ name: string;
+ to?: string;
+ href?: string;
+};
diff --git a/src/types/generic/teams.ts b/src/types/generic/teams.ts
new file mode 100644
index 0000000..8cede0f
--- /dev/null
+++ b/src/types/generic/teams.ts
@@ -0,0 +1,6 @@
+export type Member = {
+ name: string;
+ githubName: string;
+ title: string;
+ avatar: string;
+}
diff --git a/src/types/index.ts b/src/types/index.ts
new file mode 100644
index 0000000..0b02b7f
--- /dev/null
+++ b/src/types/index.ts
@@ -0,0 +1,4 @@
+export * from "./generic/navigation";
+export * from "./generic/teams";
+
+export * from "./response/github";
diff --git a/src/types/response/github.ts b/src/types/response/github.ts
new file mode 100644
index 0000000..2ef9e52
--- /dev/null
+++ b/src/types/response/github.ts
@@ -0,0 +1,56 @@
+export type DownloadRelease = {
+ assets: DownloadAsset[];
+ assets_url: string;
+ author: ReleaseAuthor;
+ body: string;
+ created_at: string;
+ draft: boolean;
+ html_url: string;
+ id: number;
+ name: string;
+ node_id: string;
+ prerelease: number;
+ published_at: string;
+ tag_name: string;
+ tarball_url: string;
+ target_commitish: string;
+ upload_url: string;
+ url: string;
+ zipball_url: string;
+}
+
+export type DownloadAsset = {
+ browser_download_url: string;
+ content_type: string;
+ created_at: string;
+ download_count: 8
+ id: number;
+ label: string;
+ name: string;
+ node_id: string;
+ size: number;
+ state: string;
+ updated_at: string;
+ url: string;
+}
+
+export type ReleaseAuthor = {
+ avatar_url: string;
+ events_url: string;
+ followers_url: string;
+ following_url: string;
+ gists_rk: string;
+ gravatar_id: string;
+ html_url: string;
+ id: number;
+ login: string;
+ node_id: string;
+ organizations_url: string;
+ received_events_url: string;
+ repos_url: string;
+ site_admin: string;
+ starred_url: string;
+ subscriptions_url: string;
+ type: string;
+ url: string;
+}
diff --git a/src/views/ContributePage.vue b/src/views/ContributePage.vue
new file mode 100644
index 0000000..045b61e
--- /dev/null
+++ b/src/views/ContributePage.vue
@@ -0,0 +1,135 @@
+
+
+
+
+
+
+
+
+
+
+
+ {{ t("views.contribute.subTitle") }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ t("views.contribute.areaDevTitle") }}
+
+
+ {{ t("views.contribute.areaDevDescription") }}
+
+
+ {{ t("views.contribute.joinDiscord") }}
+
+
+
+
+
+ {{ t("views.contribute.areaDonationTitle") }}
+
+
+ {{ t("views.contribute.areaDonationDescription") }}
+
+
+ {{ t("views.contribute.becomePatron") }}
+
+
+
+
+
+
+
diff --git a/src/views/DownloadPage.vue b/src/views/DownloadPage.vue
new file mode 100644
index 0000000..a6fcd6c
--- /dev/null
+++ b/src/views/DownloadPage.vue
@@ -0,0 +1,343 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ t("views.download.ldnBuildDescription") }}
+
+
+
+
+
+
+
+
+ {{ t("views.download.learnMore") }}
+
+
+
+
+
+
+
+
+
+ {{ t("views.download.buildInformation") }}
+
+
+
+ {{ dayjs(downloadRelease.published_at).format("YYYY-MM-DD") }}
+
+
+
+
+ GitHub
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ downloadRelease.assets.length }}
+
+ {{ t("views.download.assets") }}
+
+
+
+
+
+
+
+ {{ t("views.download.tag") }}:
+ {{ downloadRelease.tag_name }}
+
+
+
+
+
+
+
+
+ {{ totalDownload }}
+ {{ t("views.download.downloads") }}
+
+
+
+
+
+
+
+
+ {{ t("views.download.manualDownload") }}
+
+
+
+
+
+
+
+ {{ t("views.download.olderBuilds") }}
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/HomePage.vue b/src/views/HomePage.vue
new file mode 100644
index 0000000..55161bb
--- /dev/null
+++ b/src/views/HomePage.vue
@@ -0,0 +1,259 @@
+
+
+
+
+
+
+
+
+
+
+ Ryujinx
+
+
+
+ {{ t("views.homepage.featureDescription") }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ t("views.homepage.crossPlatform") }}
+
+
+ {{ t("views.homepage.crossPlatformDescription") }}
+
+
+
+
+
+
+
+ {{ t("views.homepage.compatibility") }}
+
+
+ {{ t("views.homepage.compatibilityDescription") }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{t("views.homepage.spelled")}}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ t("views.homepage.supportUs") }}
+
+
+
+ {{ t("views.homepage.trustedCommunitiesDescription") }}
+
+
+
+
+
+
+
+
+
+
+ {{ t("views.homepage.githubStar") }}
+
+
+
+
+
+ {{ t("views.homepage.playableGames") }}
+
+
+
+
+
+ {{ t("views.homepage.patreonContributors") }}
+
+
+
+
+
+
+
+
diff --git a/src/vite-env.d.ts b/src/vite-env.d.ts
new file mode 100644
index 0000000..11f02fe
--- /dev/null
+++ b/src/vite-env.d.ts
@@ -0,0 +1 @@
+///
diff --git a/static/.gitkeep b/static/.gitkeep
deleted file mode 100644
index e69de29..0000000
diff --git a/static/CNAME b/static/CNAME
deleted file mode 100644
index 7861528..0000000
--- a/static/CNAME
+++ /dev/null
@@ -1 +0,0 @@
-ryujinx.org
diff --git a/static/public/logo.png b/static/public/logo.png
deleted file mode 100644
index 78cd4a3..0000000
Binary files a/static/public/logo.png and /dev/null differ
diff --git a/static/public/shell_fullsize.png b/static/public/shell_fullsize.png
deleted file mode 100644
index a3bdb86..0000000
Binary files a/static/public/shell_fullsize.png and /dev/null differ
diff --git a/static/public/wallp.png b/static/public/wallp.png
deleted file mode 100644
index 7f53bec..0000000
Binary files a/static/public/wallp.png and /dev/null differ
diff --git a/tailwind.config.js b/tailwind.config.js
new file mode 100644
index 0000000..a427989
--- /dev/null
+++ b/tailwind.config.js
@@ -0,0 +1,121 @@
+// eslint-disable-next-line @typescript-eslint/no-var-requires
+const plugin = require("tailwindcss/plugin");
+// eslint-disable-next-line @typescript-eslint/no-var-requires
+const defaultTheme = require("tailwindcss/defaultTheme");
+// eslint-disable-next-line @typescript-eslint/no-var-requires
+const colors = require("tailwindcss/colors");
+
+/** @type {import('tailwindcss').Config} */
+module.exports = {
+ content: ["./src/**/*.{vue,js,ts,jsx,tsx}"],
+ darkMode: "class",
+ theme: {
+ extend: {
+ fontFamily: {
+ sans: ["Inter", ...defaultTheme.fontFamily.sans],
+ },
+ maxWidth: {
+ "8xl": "90rem",
+ "9xl": "105rem",
+ "10xl": "120rem",
+ },
+ zIndex: {
+ 1: 1,
+ 60: 60,
+ 70: 70,
+ 80: 80,
+ 90: 90,
+ 100: 100,
+ },
+ typography: {
+ DEFAULT: {
+ css: {
+ a: {
+ textDecoration: "none",
+ "&:hover": {
+ opacity: ".75",
+ },
+ },
+ img: {
+ borderRadius: defaultTheme.borderRadius.lg,
+ },
+ },
+ },
+ },
+ keyframes: {
+ "fade-in-down": {
+ "0%": {
+ opacity: "0",
+ transform: "translateY(-10px)",
+ },
+ "100%": {
+ opacity: "1",
+ transform: "translateY(0)",
+ },
+ },
+ },
+ animation: {
+ "fade-in-down": "fade-in-down 0.5s ease-out",
+ },
+ },
+ },
+ plugins: [
+ require("@tailwindcss/aspect-ratio"),
+ require("@tailwindcss/forms"),
+ require("@tailwindcss/typography"),
+ require("autoprefixer"),
+ plugin(function ({ addUtilities }) {
+ const utilBgPatterns = {
+ ".pattern-dots-sm": {
+ "background-image":
+ "radial-gradient(currentColor 0.5px, transparent 0.5px)",
+ "background-size": "calc(10 * 0.5px) calc(10 * 0.5px)",
+ },
+ ".pattern-dots-md": {
+ "background-image":
+ "radial-gradient(currentColor 1px, transparent 1px)",
+ "background-size": "calc(10 * 1px) calc(10 * 1px)",
+ },
+ ".pattern-dots-lg": {
+ "background-image":
+ "radial-gradient(currentColor 1.5px, transparent 1.5px)",
+ "background-size": "calc(10 * 1.5px) calc(10 * 1.5px)",
+ },
+ ".pattern-dots-xl": {
+ "background-image":
+ "radial-gradient(currentColor 2px, transparent 2px)",
+ "background-size": "calc(10 * 2px) calc(10 * 2px)",
+ },
+ };
+
+ addUtilities(utilBgPatterns);
+ }),
+ plugin(function ({ addUtilities }) {
+ const utilFormSwitch = {
+ ".form-switch": {
+ border: "transparent",
+ "background-color": colors.gray[300],
+ "background-image":
+ "url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e\")",
+ "background-position": "left center",
+ "background-repeat": "no-repeat",
+ "background-size": "contain !important",
+ "vertical-align": "top",
+ "&:checked": {
+ border: "transparent",
+ "background-color": "currentColor",
+ "background-image":
+ "url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e\")",
+ "background-position": "right center",
+ },
+ "&:disabled, &:disabled + label": {
+ opacity: ".5",
+ cursor: "not-allowed",
+ },
+ },
+ };
+
+ addUtilities(utilFormSwitch);
+ }),
+ ],
+};
diff --git a/tsconfig.json b/tsconfig.json
new file mode 100644
index 0000000..cee33a0
--- /dev/null
+++ b/tsconfig.json
@@ -0,0 +1,22 @@
+{
+ "compilerOptions": {
+ "target": "ESNext",
+ "useDefineForClassFields": true,
+ "module": "ESNext",
+ "moduleResolution": "Node",
+ "strict": true,
+ "jsx": "preserve",
+ "sourceMap": true,
+ "resolveJsonModule": true,
+ "isolatedModules": true,
+ "esModuleInterop": true,
+ "lib": ["ESNext", "DOM"],
+ "skipLibCheck": true,
+ "baseUrl": ".",
+ "paths": {
+ "@/*": ["./src/*"]
+ }
+ },
+ "include": ["src/**/*.ts", "src/**/*.d.ts", "src/**/*.tsx", "src/**/*.vue", "vite.config.js"],
+ "references": [{ "path": "./tsconfig.node.json" }]
+}
diff --git a/tsconfig.node.json b/tsconfig.node.json
new file mode 100644
index 0000000..9d31e2a
--- /dev/null
+++ b/tsconfig.node.json
@@ -0,0 +1,9 @@
+{
+ "compilerOptions": {
+ "composite": true,
+ "module": "ESNext",
+ "moduleResolution": "Node",
+ "allowSyntheticDefaultImports": true
+ },
+ "include": ["vite.config.ts"]
+}
diff --git a/vite.config.ts b/vite.config.ts
new file mode 100644
index 0000000..01cec52
--- /dev/null
+++ b/vite.config.ts
@@ -0,0 +1,16 @@
+import { defineConfig } from 'vite'
+import vue from '@vitejs/plugin-vue'
+import { resolve } from "path";
+
+// https://vitejs.dev/config/
+export default defineConfig({
+ plugins: [vue()],
+ resolve: {
+ alias: {
+ "@": resolve(__dirname, "src"),
+ },
+ },
+ build: {
+ sourcemap: true,
+ },
+})