From c09dc32045a51dac5fd32c1875c53f7357bd39f5 Mon Sep 17 00:00:00 2001 From: Matteo Rigon Date: Sat, 20 Nov 2021 12:49:47 +0100 Subject: [PATCH] initial commit --- .eslintrc.cjs | 20 + .gitignore | 6 + .prettierrc | 6 + README.md | 24 +- adapter.js | 19 + functions/.gitignore | 1 + package.json | 40 + pnpm-lock.yaml | 2677 +++++++++++++++++++++ postcss.config.cjs | 19 + src/app.css | 3 + src/app.html | 15 + src/components/Footer.svelte | 4 + src/components/Search.svelte | 70 + src/components/Status.svelte | 29 + src/components/WorkersLogo.svelte | 1 + src/global.d.ts | 1 + src/lib/countryCodes.json | 248 ++ src/routes/__layout.svelte | 11 + src/routes/countries/[countryCode].svelte | 111 + src/routes/index.svelte | 51 + static/corona.png | Bin 0 -> 7295 bytes static/death.png | Bin 0 -> 4636 bytes static/duration.png | Bin 0 -> 19240 bytes static/edge.png | Bin 0 -> 16497 bytes static/favicon.png | Bin 0 -> 1571 bytes static/refresh.png | Bin 0 -> 18841 bytes static/search.png | Bin 0 -> 13862 bytes svelte.config.js | 20 + tailwind.config.cjs | 30 + tsconfig.json | 31 + 30 files changed, 3435 insertions(+), 2 deletions(-) create mode 100644 .eslintrc.cjs create mode 100644 .gitignore create mode 100644 .prettierrc create mode 100644 adapter.js create mode 100644 functions/.gitignore create mode 100644 package.json create mode 100644 pnpm-lock.yaml create mode 100644 postcss.config.cjs create mode 100644 src/app.css create mode 100644 src/app.html create mode 100644 src/components/Footer.svelte create mode 100644 src/components/Search.svelte create mode 100644 src/components/Status.svelte create mode 100644 src/components/WorkersLogo.svelte create mode 100644 src/global.d.ts create mode 100644 src/lib/countryCodes.json create mode 100644 src/routes/__layout.svelte create mode 100644 src/routes/countries/[countryCode].svelte create mode 100644 src/routes/index.svelte create mode 100644 static/corona.png create mode 100644 static/death.png create mode 100644 static/duration.png create mode 100644 static/edge.png create mode 100644 static/favicon.png create mode 100644 static/refresh.png create mode 100644 static/search.png create mode 100644 svelte.config.js create mode 100644 tailwind.config.cjs create mode 100644 tsconfig.json diff --git a/.eslintrc.cjs b/.eslintrc.cjs new file mode 100644 index 0000000..fba3861 --- /dev/null +++ b/.eslintrc.cjs @@ -0,0 +1,20 @@ +module.exports = { + root: true, + parser: '@typescript-eslint/parser', + extends: ['eslint:recommended', 'plugin:@typescript-eslint/recommended', 'prettier'], + plugins: ['svelte3', '@typescript-eslint'], + ignorePatterns: ['*.cjs'], + overrides: [{ files: ['*.svelte'], processor: 'svelte3/svelte3' }], + settings: { + 'svelte3/typescript': () => require('typescript') + }, + parserOptions: { + sourceType: 'module', + ecmaVersion: 2019 + }, + env: { + browser: true, + es2017: true, + node: true + } +}; diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..75631d2 --- /dev/null +++ b/.gitignore @@ -0,0 +1,6 @@ +.DS_Store +node_modules +/build +/.svelte-kit +/package +.env diff --git a/.prettierrc b/.prettierrc new file mode 100644 index 0000000..ff2677e --- /dev/null +++ b/.prettierrc @@ -0,0 +1,6 @@ +{ + "useTabs": true, + "singleQuote": true, + "trailingComma": "none", + "printWidth": 100 +} diff --git a/README.md b/README.md index 88dc86b..f7d4d99 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,22 @@ -# sveltekit-isr -Incremental static regeneration for SvelteKit on Cloudflare Workers +# Incremental static regeneration (ISR) for SvelteKit on Cloudflare Pages + +This is a small Covid19 Tracker demo that uses SvelteKit to show that Cloudflare supports framework-agnostic Incremental Static Regeneration (ISR).
+The homepage is regenerated every 24 hours, while the country pages are regenerated every 4 hours.
+If you inspect the page response headers, you can see that even if there has been a cache miss, the response still contains a stale version. + +## What is ISR? + +The acronym has been coined by Vercel, and it's a method of rendering static pages on demand instead of generating all pages at build time like a normal SSG does. This allows websites with thousands of pages to keep build times low.
+NextJS has built-in support for ISR when deployed on Vercel. + +You can read more about ISR on [Vercel official documentation](https://vercel.com/docs/concepts/next.js/incremental-static-regeneration) + +## How do you achieve ISR on Cloudflare? + +For a framework-agnostic and detailed explanation, please read my [blog post](https://reego.dev/blog/isr-on-cloudflare-pages). + +If you are just curious about SvelteKit implementation, check the [adapter](https://github.com/reegodev/sveltekit-isr/tree/main/adapter) folder. + +## License + +MIT \ No newline at end of file diff --git a/adapter.js b/adapter.js new file mode 100644 index 0000000..833df7f --- /dev/null +++ b/adapter.js @@ -0,0 +1,19 @@ +export default function ({ pages = 'build', assets = pages, fallback } = {}) { + return { + name: 'cloudflare-pages-isr-adapter', + + async adapt({ utils }) { + utils.rimraf(assets); + utils.rimraf(pages); + + utils.copy_static_files(assets); + utils.copy_client_files(assets); + + await utils.prerender({ + fallback, + all: !fallback, + dest: pages + }); + } + }; +} diff --git a/functions/.gitignore b/functions/.gitignore new file mode 100644 index 0000000..76e5b72 --- /dev/null +++ b/functions/.gitignore @@ -0,0 +1 @@ +\[\[path\]\].js \ No newline at end of file diff --git a/package.json b/package.json new file mode 100644 index 0000000..aad4b85 --- /dev/null +++ b/package.json @@ -0,0 +1,40 @@ +{ + "name": "my-app", + "version": "0.0.1", + "scripts": { + "dev": "svelte-kit dev", + "build": "svelte-kit build", + "preview": "svelte-kit preview", + "check": "svelte-check --tsconfig ./tsconfig.json", + "check:watch": "svelte-check --tsconfig ./tsconfig.json --watch", + "lint": "prettier --ignore-path .gitignore --check --plugin-search-dir=. . && eslint --ignore-path .gitignore .", + "format": "prettier --ignore-path .gitignore --write --plugin-search-dir=. ." + }, + "devDependencies": { + "@sveltejs/kit": "next", + "@typescript-eslint/eslint-plugin": "^4.31.1", + "@typescript-eslint/parser": "^4.31.1", + "autoprefixer": "^10.4.0", + "cssnano": "^5.0.11", + "eslint": "^7.32.0", + "eslint-config-prettier": "^8.3.0", + "eslint-plugin-svelte3": "^3.2.1", + "postcss": "^8.3.11", + "prettier": "^2.4.1", + "prettier-plugin-svelte": "^2.4.0", + "svelte": "^3.42.6", + "svelte-check": "^2.2.6", + "svelte-preprocess": "^4.9.4", + "tailwindcss": "^2.2.19", + "tslib": "^2.3.1", + "typescript": "^4.4.3" + }, + "type": "module", + "dependencies": { + "@cloudflare/kv-asset-handler": "^0.2.0", + "axios": "^0.24.0", + "date-fns": "^2.26.0", + "simple-svelte-autocomplete": "^2.2.4", + "svelte-autocomplete": "^0.0.4" + } +} \ No newline at end of file diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml new file mode 100644 index 0000000..b1d3006 --- /dev/null +++ b/pnpm-lock.yaml @@ -0,0 +1,2677 @@ +lockfileVersion: 5.3 + +specifiers: + '@cloudflare/kv-asset-handler': ^0.2.0 + '@sveltejs/kit': next + '@typescript-eslint/eslint-plugin': ^4.31.1 + '@typescript-eslint/parser': ^4.31.1 + autoprefixer: ^10.4.0 + axios: ^0.24.0 + cssnano: ^5.0.11 + date-fns: ^2.26.0 + eslint: ^7.32.0 + eslint-config-prettier: ^8.3.0 + eslint-plugin-svelte3: ^3.2.1 + postcss: ^8.3.11 + prettier: ^2.4.1 + prettier-plugin-svelte: ^2.4.0 + simple-svelte-autocomplete: ^2.2.4 + svelte: ^3.42.6 + svelte-autocomplete: ^0.0.4 + svelte-check: ^2.2.6 + svelte-preprocess: ^4.9.4 + tailwindcss: ^2.2.19 + tslib: ^2.3.1 + typescript: ^4.4.3 + +dependencies: + '@cloudflare/kv-asset-handler': 0.2.0 + axios: 0.24.0 + date-fns: 2.26.0 + simple-svelte-autocomplete: 2.2.4 + svelte-autocomplete: 0.0.4 + +devDependencies: + '@sveltejs/kit': 1.0.0-next.196_svelte@3.44.1 + '@typescript-eslint/eslint-plugin': 4.33.0_d00b196ac5df1286ea7e45797bebddbc + '@typescript-eslint/parser': 4.33.0_eslint@7.32.0+typescript@4.5.2 + autoprefixer: 10.4.0_postcss@8.3.11 + cssnano: 5.0.11_postcss@8.3.11 + eslint: 7.32.0 + eslint-config-prettier: 8.3.0_eslint@7.32.0 + eslint-plugin-svelte3: 3.2.1_eslint@7.32.0+svelte@3.44.1 + postcss: 8.3.11 + prettier: 2.4.1 + prettier-plugin-svelte: 2.5.0_prettier@2.4.1+svelte@3.44.1 + svelte: 3.44.1 + svelte-check: 2.2.10_postcss@8.3.11+svelte@3.44.1 + svelte-preprocess: 4.9.8_a7621183bde426ded30bedcff7efa7fb + tailwindcss: 2.2.19_0c54bdadaf9d9c9c6c134cb2c6c061a3 + tslib: 2.3.1 + typescript: 4.5.2 + +packages: + + /@babel/code-frame/7.12.11: + resolution: {integrity: sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==} + dependencies: + '@babel/highlight': 7.16.0 + dev: true + + /@babel/helper-validator-identifier/7.15.7: + resolution: {integrity: sha512-K4JvCtQqad9OY2+yTU8w+E82ywk/fe+ELNlt1G8z3bVGlZfn/hOcQQsUhGhW/N+tb3fxK800wLtKOE/aM0m72w==} + engines: {node: '>=6.9.0'} + dev: true + + /@babel/highlight/7.16.0: + resolution: {integrity: sha512-t8MH41kUQylBtu2+4IQA3atqevA2lRgqA2wyVB/YiWmsDSuylZZuXOUy9ric30hfzauEFfdsuk/eXTRrGrfd0g==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/helper-validator-identifier': 7.15.7 + chalk: 2.4.2 + js-tokens: 4.0.0 + dev: true + + /@cloudflare/kv-asset-handler/0.2.0: + resolution: {integrity: sha512-MVbXLbTcAotOPUj0pAMhVtJ+3/kFkwJqc5qNOleOZTv6QkZZABDMS21dSrSlVswEHwrpWC03e4fWytjqKvuE2A==} + dependencies: + mime: 3.0.0 + dev: false + + /@eslint/eslintrc/0.4.3: + resolution: {integrity: sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw==} + engines: {node: ^10.12.0 || >=12.0.0} + dependencies: + ajv: 6.12.6 + debug: 4.3.2 + espree: 7.3.1 + globals: 13.12.0 + ignore: 4.0.6 + import-fresh: 3.3.0 + js-yaml: 3.14.1 + minimatch: 3.0.4 + strip-json-comments: 3.1.1 + transitivePeerDependencies: + - supports-color + dev: true + + /@humanwhocodes/config-array/0.5.0: + resolution: {integrity: sha512-FagtKFz74XrTl7y6HCzQpwDfXP0yhxe9lHLD1UZxjvZIcbyRz8zTFF/yYNfSfzU414eDwZ1SrO0Qvtyf+wFMQg==} + engines: {node: '>=10.10.0'} + dependencies: + '@humanwhocodes/object-schema': 1.2.1 + debug: 4.3.2 + minimatch: 3.0.4 + transitivePeerDependencies: + - supports-color + dev: true + + /@humanwhocodes/object-schema/1.2.1: + resolution: {integrity: sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==} + dev: true + + /@nodelib/fs.scandir/2.1.5: + resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} + engines: {node: '>= 8'} + dependencies: + '@nodelib/fs.stat': 2.0.5 + run-parallel: 1.2.0 + dev: true + + /@nodelib/fs.stat/2.0.5: + resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} + engines: {node: '>= 8'} + dev: true + + /@nodelib/fs.walk/1.2.8: + resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} + engines: {node: '>= 8'} + dependencies: + '@nodelib/fs.scandir': 2.1.5 + fastq: 1.13.0 + dev: true + + /@rollup/pluginutils/4.1.1: + resolution: {integrity: sha512-clDjivHqWGXi7u+0d2r2sBi4Ie6VLEAzWMIkvJLnDmxoOhBYOTfzGbOQBA32THHm11/LiJbd01tJUpJsbshSWQ==} + engines: {node: '>= 8.0.0'} + dependencies: + estree-walker: 2.0.2 + picomatch: 2.3.0 + dev: true + + /@sveltejs/kit/1.0.0-next.196_svelte@3.44.1: + resolution: {integrity: sha512-z7sA/2/3Il5biibjPXCYXJC11TyFhgCvMaJvvbtMnu2l3EmOmJBMS+r2djGptzfFsugSVNwGQFn8+ldWQWq3jA==} + engines: {node: '>=14.13'} + hasBin: true + peerDependencies: + svelte: ^3.44.0 + dependencies: + '@sveltejs/vite-plugin-svelte': 1.0.0-next.30_svelte@3.44.1+vite@2.6.14 + cheap-watch: 1.0.4 + sade: 1.7.4 + svelte: 3.44.1 + vite: 2.6.14 + transitivePeerDependencies: + - diff-match-patch + - less + - sass + - stylus + - supports-color + dev: true + + /@sveltejs/vite-plugin-svelte/1.0.0-next.30_svelte@3.44.1+vite@2.6.14: + resolution: {integrity: sha512-YQqdMxjL1VgSFk4/+IY3yLwuRRapPafPiZTiaGEq1psbJYSNYUWx9F1zMm32GMsnogg3zn99mGJOqe3ld3HZSg==} + engines: {node: ^14.13.1 || >= 16} + peerDependencies: + diff-match-patch: ^1.0.5 + svelte: ^3.44.0 + vite: ^2.6.0 + peerDependenciesMeta: + diff-match-patch: + optional: true + dependencies: + '@rollup/pluginutils': 4.1.1 + debug: 4.3.2 + kleur: 4.1.4 + magic-string: 0.25.7 + require-relative: 0.8.7 + svelte: 3.44.1 + svelte-hmr: 0.14.7_svelte@3.44.1 + vite: 2.6.14 + transitivePeerDependencies: + - supports-color + dev: true + + /@trysound/sax/0.2.0: + resolution: {integrity: sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==} + engines: {node: '>=10.13.0'} + dev: true + + /@types/json-schema/7.0.9: + resolution: {integrity: sha512-qcUXuemtEu+E5wZSJHNxUXeCZhAfXKQ41D+duX+VYPde7xyEVZci+/oXKJL13tnRs9lR2pr4fod59GT6/X1/yQ==} + dev: true + + /@types/node/16.11.8: + resolution: {integrity: sha512-hmT5gfpRkkHr7DZZHMf3jBe/zNcVGN+jXSL2f8nAsYfBPxQFToKwQlS/zES4Sjp488Bi73i+p6bvrNRRGU0x9Q==} + dev: true + + /@types/parse-json/4.0.0: + resolution: {integrity: sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==} + dev: true + + /@types/pug/2.0.5: + resolution: {integrity: sha512-LOnASQoeNZMkzexRuyqcBBDZ6rS+rQxUMkmj5A0PkhhiSZivLIuz6Hxyr1mkGoEZEkk66faROmpMi4fFkrKsBA==} + dev: true + + /@types/sass/1.43.0: + resolution: {integrity: sha512-DPSXNJ1rYLo88GyF9tuB4bsYGfpKI1a4+wOQmc+LI1SUoocm9QLRSpz0GxxuyjmJsYFIQo/dDlRSSpIXngff+w==} + dependencies: + '@types/node': 16.11.8 + dev: true + + /@typescript-eslint/eslint-plugin/4.33.0_d00b196ac5df1286ea7e45797bebddbc: + resolution: {integrity: sha512-aINiAxGVdOl1eJyVjaWn/YcVAq4Gi/Yo35qHGCnqbWVz61g39D0h23veY/MA0rFFGfxK7TySg2uwDeNv+JgVpg==} + engines: {node: ^10.12.0 || >=12.0.0} + peerDependencies: + '@typescript-eslint/parser': ^4.0.0 + eslint: ^5.0.0 || ^6.0.0 || ^7.0.0 + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + dependencies: + '@typescript-eslint/experimental-utils': 4.33.0_eslint@7.32.0+typescript@4.5.2 + '@typescript-eslint/parser': 4.33.0_eslint@7.32.0+typescript@4.5.2 + '@typescript-eslint/scope-manager': 4.33.0 + debug: 4.3.2 + eslint: 7.32.0 + functional-red-black-tree: 1.0.1 + ignore: 5.1.9 + regexpp: 3.2.0 + semver: 7.3.5 + tsutils: 3.21.0_typescript@4.5.2 + typescript: 4.5.2 + transitivePeerDependencies: + - supports-color + dev: true + + /@typescript-eslint/experimental-utils/4.33.0_eslint@7.32.0+typescript@4.5.2: + resolution: {integrity: sha512-zeQjOoES5JFjTnAhI5QY7ZviczMzDptls15GFsI6jyUOq0kOf9+WonkhtlIhh0RgHRnqj5gdNxW5j1EvAyYg6Q==} + engines: {node: ^10.12.0 || >=12.0.0} + peerDependencies: + eslint: '*' + dependencies: + '@types/json-schema': 7.0.9 + '@typescript-eslint/scope-manager': 4.33.0 + '@typescript-eslint/types': 4.33.0 + '@typescript-eslint/typescript-estree': 4.33.0_typescript@4.5.2 + eslint: 7.32.0 + eslint-scope: 5.1.1 + eslint-utils: 3.0.0_eslint@7.32.0 + transitivePeerDependencies: + - supports-color + - typescript + dev: true + + /@typescript-eslint/parser/4.33.0_eslint@7.32.0+typescript@4.5.2: + resolution: {integrity: sha512-ZohdsbXadjGBSK0/r+d87X0SBmKzOq4/S5nzK6SBgJspFo9/CUDJ7hjayuze+JK7CZQLDMroqytp7pOcFKTxZA==} + engines: {node: ^10.12.0 || >=12.0.0} + peerDependencies: + eslint: ^5.0.0 || ^6.0.0 || ^7.0.0 + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + dependencies: + '@typescript-eslint/scope-manager': 4.33.0 + '@typescript-eslint/types': 4.33.0 + '@typescript-eslint/typescript-estree': 4.33.0_typescript@4.5.2 + debug: 4.3.2 + eslint: 7.32.0 + typescript: 4.5.2 + transitivePeerDependencies: + - supports-color + dev: true + + /@typescript-eslint/scope-manager/4.33.0: + resolution: {integrity: sha512-5IfJHpgTsTZuONKbODctL4kKuQje/bzBRkwHE8UOZ4f89Zeddg+EGZs8PD8NcN4LdM3ygHWYB3ukPAYjvl/qbQ==} + engines: {node: ^8.10.0 || ^10.13.0 || >=11.10.1} + dependencies: + '@typescript-eslint/types': 4.33.0 + '@typescript-eslint/visitor-keys': 4.33.0 + dev: true + + /@typescript-eslint/types/4.33.0: + resolution: {integrity: sha512-zKp7CjQzLQImXEpLt2BUw1tvOMPfNoTAfb8l51evhYbOEEzdWyQNmHWWGPR6hwKJDAi+1VXSBmnhL9kyVTTOuQ==} + engines: {node: ^8.10.0 || ^10.13.0 || >=11.10.1} + dev: true + + /@typescript-eslint/typescript-estree/4.33.0_typescript@4.5.2: + resolution: {integrity: sha512-rkWRY1MPFzjwnEVHsxGemDzqqddw2QbTJlICPD9p9I9LfsO8fdmfQPOX3uKfUaGRDFJbfrtm/sXhVXN4E+bzCA==} + engines: {node: ^10.12.0 || >=12.0.0} + peerDependencies: + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + dependencies: + '@typescript-eslint/types': 4.33.0 + '@typescript-eslint/visitor-keys': 4.33.0 + debug: 4.3.2 + globby: 11.0.4 + is-glob: 4.0.3 + semver: 7.3.5 + tsutils: 3.21.0_typescript@4.5.2 + typescript: 4.5.2 + transitivePeerDependencies: + - supports-color + dev: true + + /@typescript-eslint/visitor-keys/4.33.0: + resolution: {integrity: sha512-uqi/2aSz9g2ftcHWf8uLPJA70rUv6yuMW5Bohw+bwcuzaxQIHaKFZCKGoGXIrc9vkTJ3+0txM73K0Hq3d5wgIg==} + engines: {node: ^8.10.0 || ^10.13.0 || >=11.10.1} + dependencies: + '@typescript-eslint/types': 4.33.0 + eslint-visitor-keys: 2.1.0 + dev: true + + /acorn-jsx/5.3.2_acorn@7.4.1: + resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} + peerDependencies: + acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 + dependencies: + acorn: 7.4.1 + dev: true + + /acorn-node/1.8.2: + resolution: {integrity: sha512-8mt+fslDufLYntIoPAaIMUe/lrbrehIiwmR3t2k9LljIzoigEPF27eLk2hy8zSGzmR/ogr7zbRKINMo1u0yh5A==} + dependencies: + acorn: 7.4.1 + acorn-walk: 7.2.0 + xtend: 4.0.2 + dev: true + + /acorn-walk/7.2.0: + resolution: {integrity: sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==} + engines: {node: '>=0.4.0'} + dev: true + + /acorn/7.4.1: + resolution: {integrity: sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==} + engines: {node: '>=0.4.0'} + hasBin: true + dev: true + + /ajv/6.12.6: + resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} + dependencies: + fast-deep-equal: 3.1.3 + fast-json-stable-stringify: 2.1.0 + json-schema-traverse: 0.4.1 + uri-js: 4.4.1 + dev: true + + /ajv/8.8.1: + resolution: {integrity: sha512-6CiMNDrzv0ZR916u2T+iRunnD60uWmNn8SkdB44/6stVORUg0aAkWO7PkOhpCmjmW8f2I/G/xnowD66fxGyQJg==} + dependencies: + fast-deep-equal: 3.1.3 + json-schema-traverse: 1.0.0 + require-from-string: 2.0.2 + uri-js: 4.4.1 + dev: true + + /alphanum-sort/1.0.2: + resolution: {integrity: sha1-l6ERlkmyEa0zaR2fn0hqjsn74KM=} + dev: true + + /ansi-colors/4.1.1: + resolution: {integrity: sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==} + engines: {node: '>=6'} + dev: true + + /ansi-regex/5.0.1: + resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} + engines: {node: '>=8'} + dev: true + + /ansi-styles/3.2.1: + resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==} + engines: {node: '>=4'} + dependencies: + color-convert: 1.9.3 + dev: true + + /ansi-styles/4.3.0: + resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} + engines: {node: '>=8'} + dependencies: + color-convert: 2.0.1 + dev: true + + /anymatch/3.1.2: + resolution: {integrity: sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==} + engines: {node: '>= 8'} + dependencies: + normalize-path: 3.0.0 + picomatch: 2.3.0 + dev: true + + /arg/5.0.1: + resolution: {integrity: sha512-e0hDa9H2Z9AwFkk2qDlwhoMYE4eToKarchkQHovNdLTCYMHZHeRjI71crOh+dio4K6u1IcwubQqo79Ga4CyAQA==} + dev: true + + /argparse/1.0.10: + resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==} + dependencies: + sprintf-js: 1.0.3 + dev: true + + /array-union/2.1.0: + resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} + engines: {node: '>=8'} + dev: true + + /astral-regex/2.0.0: + resolution: {integrity: sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==} + engines: {node: '>=8'} + dev: true + + /autoprefixer/10.4.0_postcss@8.3.11: + resolution: {integrity: sha512-7FdJ1ONtwzV1G43GDD0kpVMn/qbiNqyOPMFTX5nRffI+7vgWoFEc6DcXOxHJxrWNDXrZh18eDsZjvZGUljSRGA==} + engines: {node: ^10 || ^12 || >=14} + hasBin: true + peerDependencies: + postcss: ^8.1.0 + dependencies: + browserslist: 4.18.1 + caniuse-lite: 1.0.30001282 + fraction.js: 4.1.2 + normalize-range: 0.1.2 + picocolors: 1.0.0 + postcss: 8.3.11 + postcss-value-parser: 4.1.0 + dev: true + + /axios/0.24.0: + resolution: {integrity: sha512-Q6cWsys88HoPgAaFAVUb0WpPk0O8iTeisR9IMqy9G8AbO4NlpVknrnQS03zzF9PGAWgO3cgletO3VjV/P7VztA==} + dependencies: + follow-redirects: 1.14.5 + transitivePeerDependencies: + - debug + dev: false + + /balanced-match/1.0.2: + resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} + dev: true + + /binary-extensions/2.2.0: + resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==} + engines: {node: '>=8'} + dev: true + + /boolbase/1.0.0: + resolution: {integrity: sha1-aN/1++YMUes3cl6p4+0xDcwed24=} + dev: true + + /brace-expansion/1.1.11: + resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} + dependencies: + balanced-match: 1.0.2 + concat-map: 0.0.1 + dev: true + + /braces/3.0.2: + resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==} + engines: {node: '>=8'} + dependencies: + fill-range: 7.0.1 + dev: true + + /browserslist/4.18.1: + resolution: {integrity: sha512-8ScCzdpPwR2wQh8IT82CA2VgDwjHyqMovPBZSNH54+tm4Jk2pCuv90gmAdH6J84OCRWi0b4gMe6O6XPXuJnjgQ==} + engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} + hasBin: true + dependencies: + caniuse-lite: 1.0.30001282 + electron-to-chromium: 1.3.902 + escalade: 3.1.1 + node-releases: 2.0.1 + picocolors: 1.0.0 + dev: true + + /buffer-crc32/0.2.13: + resolution: {integrity: sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=} + dev: true + + /bytes/3.1.1: + resolution: {integrity: sha512-dWe4nWO/ruEOY7HkUJ5gFt1DCFV9zPRoJr8pV0/ASQermOZjtq8jMjOprC0Kd10GLN+l7xaUPvxzJFWtxGu8Fg==} + engines: {node: '>= 0.8'} + dev: true + + /callsites/3.1.0: + resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} + engines: {node: '>=6'} + dev: true + + /camelcase-css/2.0.1: + resolution: {integrity: sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==} + engines: {node: '>= 6'} + dev: true + + /caniuse-api/3.0.0: + resolution: {integrity: sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==} + dependencies: + browserslist: 4.18.1 + caniuse-lite: 1.0.30001282 + lodash.memoize: 4.1.2 + lodash.uniq: 4.5.0 + dev: true + + /caniuse-lite/1.0.30001282: + resolution: {integrity: sha512-YhF/hG6nqBEllymSIjLtR2iWDDnChvhnVJqp+vloyt2tEHFG1yBR+ac2B/rOw0qOK0m0lEXU2dv4E/sMk5P9Kg==} + dev: true + + /chalk/2.4.2: + resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} + engines: {node: '>=4'} + dependencies: + ansi-styles: 3.2.1 + escape-string-regexp: 1.0.5 + supports-color: 5.5.0 + dev: true + + /chalk/4.1.2: + resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} + engines: {node: '>=10'} + dependencies: + ansi-styles: 4.3.0 + supports-color: 7.2.0 + dev: true + + /cheap-watch/1.0.4: + resolution: {integrity: sha512-QR/9FrtRL5fjfUJBhAKCdi0lSRQ3rVRRum3GF9wDKp2TJbEIMGhUEr2yU8lORzm9Isdjx7/k9S0DFDx+z5VGtw==} + engines: {node: '>=8'} + dev: true + + /chokidar/3.5.2: + resolution: {integrity: sha512-ekGhOnNVPgT77r4K/U3GDhu+FQ2S8TnK/s2KbIGXi0SZWuwkZ2QNyfWdZW+TVfn84DpEP7rLeCt2UI6bJ8GwbQ==} + engines: {node: '>= 8.10.0'} + dependencies: + anymatch: 3.1.2 + braces: 3.0.2 + glob-parent: 5.1.2 + is-binary-path: 2.1.0 + is-glob: 4.0.3 + normalize-path: 3.0.0 + readdirp: 3.6.0 + optionalDependencies: + fsevents: 2.3.2 + dev: true + + /color-convert/1.9.3: + resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} + dependencies: + color-name: 1.1.3 + dev: true + + /color-convert/2.0.1: + resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} + engines: {node: '>=7.0.0'} + dependencies: + color-name: 1.1.4 + dev: true + + /color-name/1.1.3: + resolution: {integrity: sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=} + dev: true + + /color-name/1.1.4: + resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} + dev: true + + /color-string/1.6.0: + resolution: {integrity: sha512-c/hGS+kRWJutUBEngKKmk4iH3sD59MBkoxVapS/0wgpCz2u7XsNloxknyvBhzwEs1IbV36D9PwqLPJ2DTu3vMA==} + dependencies: + color-name: 1.1.4 + simple-swizzle: 0.2.2 + dev: true + + /color/4.0.1: + resolution: {integrity: sha512-rpZjOKN5O7naJxkH2Rx1sZzzBgaiWECc6BYXjeCE6kF0kcASJYbUq02u7JqIHwCb/j3NhV+QhRL2683aICeGZA==} + dependencies: + color-convert: 2.0.1 + color-string: 1.6.0 + dev: true + + /colord/2.9.1: + resolution: {integrity: sha512-4LBMSt09vR0uLnPVkOUBnmxgoaeN4ewRbx801wY/bXcltXfpR/G46OdWn96XpYmCWuYvO46aBZP4NgX8HpNAcw==} + dev: true + + /commander/6.2.1: + resolution: {integrity: sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA==} + engines: {node: '>= 6'} + dev: true + + /commander/7.2.0: + resolution: {integrity: sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==} + engines: {node: '>= 10'} + dev: true + + /concat-map/0.0.1: + resolution: {integrity: sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=} + dev: true + + /cosmiconfig/7.0.1: + resolution: {integrity: sha512-a1YWNUV2HwGimB7dU2s1wUMurNKjpx60HxBB6xUM8Re+2s1g1IIfJvFR0/iCF+XHdE0GMTKTuLR32UQff4TEyQ==} + engines: {node: '>=10'} + dependencies: + '@types/parse-json': 4.0.0 + import-fresh: 3.3.0 + parse-json: 5.2.0 + path-type: 4.0.0 + yaml: 1.10.2 + dev: true + + /cross-spawn/7.0.3: + resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==} + engines: {node: '>= 8'} + dependencies: + path-key: 3.1.1 + shebang-command: 2.0.0 + which: 2.0.2 + dev: true + + /css-color-names/0.0.4: + resolution: {integrity: sha1-gIrcLnnPhHOAabZGyyDsJ762KeA=} + dev: true + + /css-declaration-sorter/6.1.3_postcss@8.3.11: + resolution: {integrity: sha512-SvjQjNRZgh4ULK1LDJ2AduPKUKxIqmtU7ZAyi47BTV+M90Qvxr9AB6lKlLbDUfXqI9IQeYA8LbAsCZPpJEV3aA==} + engines: {node: '>= 10'} + peerDependencies: + postcss: ^8.0.9 + dependencies: + postcss: 8.3.11 + timsort: 0.3.0 + dev: true + + /css-select/4.1.3: + resolution: {integrity: sha512-gT3wBNd9Nj49rAbmtFHj1cljIAOLYSX1nZ8CB7TBO3INYckygm5B7LISU/szY//YmdiSLbJvDLOx9VnMVpMBxA==} + dependencies: + boolbase: 1.0.0 + css-what: 5.1.0 + domhandler: 4.2.2 + domutils: 2.8.0 + nth-check: 2.0.1 + dev: true + + /css-tree/1.1.3: + resolution: {integrity: sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==} + engines: {node: '>=8.0.0'} + dependencies: + mdn-data: 2.0.14 + source-map: 0.6.1 + dev: true + + /css-unit-converter/1.1.2: + resolution: {integrity: sha512-IiJwMC8rdZE0+xiEZHeru6YoONC4rfPMqGm2W85jMIbkFvv5nFTwJVFHam2eFrN6txmoUYFAFXiv8ICVeTO0MA==} + dev: true + + /css-what/5.1.0: + resolution: {integrity: sha512-arSMRWIIFY0hV8pIxZMEfmMI47Wj3R/aWpZDDxWYCPEiOMv6tfOrnpDtgxBYPEQD4V0Y/958+1TdC3iWTFcUPw==} + engines: {node: '>= 6'} + dev: true + + /cssesc/3.0.0: + resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==} + engines: {node: '>=4'} + hasBin: true + dev: true + + /cssnano-preset-default/5.1.7_postcss@8.3.11: + resolution: {integrity: sha512-bWDjtTY+BOqrqBtsSQIbN0RLGD2Yr2CnecpP0ydHNafh9ZUEre8c8VYTaH9FEbyOt0eIfEUAYYk5zj92ioO8LA==} + engines: {node: ^10 || ^12 || >=14.0} + peerDependencies: + postcss: ^8.2.15 + dependencies: + css-declaration-sorter: 6.1.3_postcss@8.3.11 + cssnano-utils: 2.0.1_postcss@8.3.11 + postcss: 8.3.11 + postcss-calc: 8.0.0_postcss@8.3.11 + postcss-colormin: 5.2.1_postcss@8.3.11 + postcss-convert-values: 5.0.2_postcss@8.3.11 + postcss-discard-comments: 5.0.1_postcss@8.3.11 + postcss-discard-duplicates: 5.0.1_postcss@8.3.11 + postcss-discard-empty: 5.0.1_postcss@8.3.11 + postcss-discard-overridden: 5.0.1_postcss@8.3.11 + postcss-merge-longhand: 5.0.4_postcss@8.3.11 + postcss-merge-rules: 5.0.3_postcss@8.3.11 + postcss-minify-font-values: 5.0.1_postcss@8.3.11 + postcss-minify-gradients: 5.0.3_postcss@8.3.11 + postcss-minify-params: 5.0.2_postcss@8.3.11 + postcss-minify-selectors: 5.1.0_postcss@8.3.11 + postcss-normalize-charset: 5.0.1_postcss@8.3.11 + postcss-normalize-display-values: 5.0.1_postcss@8.3.11 + postcss-normalize-positions: 5.0.1_postcss@8.3.11 + postcss-normalize-repeat-style: 5.0.1_postcss@8.3.11 + postcss-normalize-string: 5.0.1_postcss@8.3.11 + postcss-normalize-timing-functions: 5.0.1_postcss@8.3.11 + postcss-normalize-unicode: 5.0.1_postcss@8.3.11 + postcss-normalize-url: 5.0.3_postcss@8.3.11 + postcss-normalize-whitespace: 5.0.1_postcss@8.3.11 + postcss-ordered-values: 5.0.2_postcss@8.3.11 + postcss-reduce-initial: 5.0.1_postcss@8.3.11 + postcss-reduce-transforms: 5.0.1_postcss@8.3.11 + postcss-svgo: 5.0.3_postcss@8.3.11 + postcss-unique-selectors: 5.0.2_postcss@8.3.11 + dev: true + + /cssnano-utils/2.0.1_postcss@8.3.11: + resolution: {integrity: sha512-i8vLRZTnEH9ubIyfdZCAdIdgnHAUeQeByEeQ2I7oTilvP9oHO6RScpeq3GsFUVqeB8uZgOQ9pw8utofNn32hhQ==} + engines: {node: ^10 || ^12 || >=14.0} + peerDependencies: + postcss: ^8.2.15 + dependencies: + postcss: 8.3.11 + dev: true + + /cssnano/5.0.11_postcss@8.3.11: + resolution: {integrity: sha512-5SHM31NAAe29jvy0MJqK40zZ/8dGlnlzcfHKw00bWMVFp8LWqtuyPSFwbaoIoxvt71KWJOfg8HMRGrBR3PExCg==} + engines: {node: ^10 || ^12 || >=14.0} + peerDependencies: + postcss: ^8.2.15 + dependencies: + cssnano-preset-default: 5.1.7_postcss@8.3.11 + is-resolvable: 1.1.0 + lilconfig: 2.0.4 + postcss: 8.3.11 + yaml: 1.10.2 + dev: true + + /csso/4.2.0: + resolution: {integrity: sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==} + engines: {node: '>=8.0.0'} + dependencies: + css-tree: 1.1.3 + dev: true + + /date-fns/2.26.0: + resolution: {integrity: sha512-VQI812dRi3cusdY/fhoBKvc6l2W8BPWU1FNVnFH9Nttjx4AFBRzfSVb/Eyc7jBT6e9sg1XtAGsYpBQ6c/jygbg==} + engines: {node: '>=0.11'} + dev: false + + /debug/4.3.2: + resolution: {integrity: sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==} + engines: {node: '>=6.0'} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true + dependencies: + ms: 2.1.2 + dev: true + + /deep-is/0.1.4: + resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} + dev: true + + /defined/1.0.0: + resolution: {integrity: sha1-yY2bzvdWdBiOEQlpFRGZ45sfppM=} + dev: true + + /detect-indent/6.1.0: + resolution: {integrity: sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA==} + engines: {node: '>=8'} + dev: true + + /detective/5.2.0: + resolution: {integrity: sha512-6SsIx+nUUbuK0EthKjv0zrdnajCCXVYGmbYYiYjFVpzcjwEs/JMDZ8tPRG29J/HhN56t3GJp2cGSWDRjjot8Pg==} + engines: {node: '>=0.8.0'} + hasBin: true + dependencies: + acorn-node: 1.8.2 + defined: 1.0.0 + minimist: 1.2.5 + dev: true + + /didyoumean/1.2.2: + resolution: {integrity: sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==} + dev: true + + /dir-glob/3.0.1: + resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} + engines: {node: '>=8'} + dependencies: + path-type: 4.0.0 + dev: true + + /dlv/1.1.3: + resolution: {integrity: sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==} + dev: true + + /doctrine/3.0.0: + resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==} + engines: {node: '>=6.0.0'} + dependencies: + esutils: 2.0.3 + dev: true + + /dom-serializer/1.3.2: + resolution: {integrity: sha512-5c54Bk5Dw4qAxNOI1pFEizPSjVsx5+bpJKmL2kPn8JhBUq2q09tTCa3mjijun2NfK78NMouDYNMBkOrPZiS+ig==} + dependencies: + domelementtype: 2.2.0 + domhandler: 4.2.2 + entities: 2.2.0 + dev: true + + /domelementtype/2.2.0: + resolution: {integrity: sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A==} + dev: true + + /domhandler/4.2.2: + resolution: {integrity: sha512-PzE9aBMsdZO8TK4BnuJwH0QT41wgMbRzuZrHUcpYncEjmQazq8QEaBWgLG7ZyC/DAZKEgglpIA6j4Qn/HmxS3w==} + engines: {node: '>= 4'} + dependencies: + domelementtype: 2.2.0 + dev: true + + /domutils/2.8.0: + resolution: {integrity: sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==} + dependencies: + dom-serializer: 1.3.2 + domelementtype: 2.2.0 + domhandler: 4.2.2 + dev: true + + /electron-to-chromium/1.3.902: + resolution: {integrity: sha512-zFv5jbtyIr+V9FuT9o439isXbkXQ27mJqZfLXpBKzXugWE8+3RotHbXJlli0/r+Rvdlkut0OOMzeOWLAjH0jCw==} + dev: true + + /emoji-regex/8.0.0: + resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} + dev: true + + /enquirer/2.3.6: + resolution: {integrity: sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==} + engines: {node: '>=8.6'} + dependencies: + ansi-colors: 4.1.1 + dev: true + + /entities/2.2.0: + resolution: {integrity: sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==} + dev: true + + /error-ex/1.3.2: + resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==} + dependencies: + is-arrayish: 0.2.1 + dev: true + + /es6-promise/3.3.1: + resolution: {integrity: sha1-oIzd6EzNvzTQJ6FFG8kdS80ophM=} + dev: true + + /esbuild-android-arm64/0.13.14: + resolution: {integrity: sha512-Q+Xhfp827r+ma8/DJgpMRUbDZfefsk13oePFEXEIJ4gxFbNv5+vyiYXYuKm43/+++EJXpnaYmEnu4hAKbAWYbA==} + cpu: [arm64] + os: [android] + requiresBuild: true + dev: true + optional: true + + /esbuild-darwin-64/0.13.14: + resolution: {integrity: sha512-YmOhRns6QBNSjpVdTahi/yZ8dscx9ai7a6OY6z5ACgOuQuaQ2Qk2qgJ0/siZ6LgD0gJFMV8UINFV5oky5TFNQQ==} + cpu: [x64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + + /esbuild-darwin-arm64/0.13.14: + resolution: {integrity: sha512-Lp00VTli2jqZghSa68fx3fEFCPsO1hK59RMo1PRap5RUjhf55OmaZTZYnCDI0FVlCtt+gBwX5qwFt4lc6tI1xg==} + cpu: [arm64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + + /esbuild-freebsd-64/0.13.14: + resolution: {integrity: sha512-BKosI3jtvTfnmsCW37B1TyxMUjkRWKqopR0CE9AF2ratdpkxdR24Vpe3gLKNyWiZ7BE96/SO5/YfhbPUzY8wKw==} + cpu: [x64] + os: [freebsd] + requiresBuild: true + dev: true + optional: true + + /esbuild-freebsd-arm64/0.13.14: + resolution: {integrity: sha512-yd2uh0yf+fWv5114+SYTl4/1oDWtr4nN5Op+PGxAkMqHfYfLjFKpcxwCo/QOS/0NWqPVE8O41IYZlFhbEN2B8Q==} + cpu: [arm64] + os: [freebsd] + requiresBuild: true + dev: true + optional: true + + /esbuild-linux-32/0.13.14: + resolution: {integrity: sha512-a8rOnS1oWSfkkYWXoD2yXNV4BdbDKA7PNVQ1klqkY9SoSApL7io66w5H44mTLsfyw7G6Z2vLlaLI2nz9MMAowA==} + cpu: [ia32] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /esbuild-linux-64/0.13.14: + resolution: {integrity: sha512-yPZSoMs9W2MC3Dw+6kflKt5FfQm6Dicex9dGIr1OlHRsn3Hm7yGMUTctlkW53KknnZdOdcdd5upxvbxqymczVQ==} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /esbuild-linux-arm/0.13.14: + resolution: {integrity: sha512-8chZE4pkKRvJ/M/iwsNQ1KqsRg2RyU5eT/x2flNt/f8F2TVrDreR7I0HEeCR50wLla3B1C3wTIOzQBmjuc6uWg==} + cpu: [arm] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /esbuild-linux-arm64/0.13.14: + resolution: {integrity: sha512-Lvo391ln9PzC334e+jJ2S0Rt0cxP47eoH5gFyv/E8HhOnEJTvm7A+RRnMjjHnejELacTTfYgFGQYPjLsi/jObQ==} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /esbuild-linux-mips64le/0.13.14: + resolution: {integrity: sha512-MZhgxbmrWbpY3TOE029O6l5tokG9+Yoj2hW7vdit/d/VnmneqeGrSHADuDL6qXM8L5jaCiaivb4VhsyVCpdAbQ==} + cpu: [mips64el] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /esbuild-linux-ppc64le/0.13.14: + resolution: {integrity: sha512-un7KMwS7fX1Un6BjfSZxTT8L5cV/8Uf4SAhM7WYy2XF8o8TI+uRxxD03svZnRNIPsN2J5cl6qV4n7Iwz+yhhVw==} + cpu: [ppc64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /esbuild-netbsd-64/0.13.14: + resolution: {integrity: sha512-5ekKx/YbOmmlTeNxBjh38Uh5TGn5C4uyqN17i67k18pS3J+U2hTVD7rCxcFcRS1AjNWumkVL3jWqYXadFwMS0Q==} + cpu: [x64] + os: [netbsd] + requiresBuild: true + dev: true + optional: true + + /esbuild-openbsd-64/0.13.14: + resolution: {integrity: sha512-9bzvwewHjct2Cv5XcVoE1yW5YTW12Sk838EYfA46abgnhxGoFSD1mFcaztp5HHC43AsF+hQxbSFG/RilONARUA==} + cpu: [x64] + os: [openbsd] + requiresBuild: true + dev: true + optional: true + + /esbuild-sunos-64/0.13.14: + resolution: {integrity: sha512-mjMrZB76M6FmoiTvj/RGWilrioR7gVwtFBRVugr9qLarXMIU1W/pQx+ieEOtflrW61xo8w1fcxyHsVVGRvoQ0w==} + cpu: [x64] + os: [sunos] + requiresBuild: true + dev: true + optional: true + + /esbuild-windows-32/0.13.14: + resolution: {integrity: sha512-GZa6mrx2rgfbH/5uHg0Rdw50TuOKbdoKCpEBitzmG5tsXBdce+cOL+iFO5joZc6fDVCLW3Y6tjxmSXRk/v20Hg==} + cpu: [ia32] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /esbuild-windows-64/0.13.14: + resolution: {integrity: sha512-Lsgqah24bT7ClHjLp/Pj3A9wxjhIAJyWQcrOV4jqXAFikmrp2CspA8IkJgw7HFjx6QrJuhpcKVbCAe/xw0i2yw==} + cpu: [x64] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /esbuild-windows-arm64/0.13.14: + resolution: {integrity: sha512-KP8FHVlWGhM7nzYtURsGnskXb/cBCPTfj0gOKfjKq2tHtYnhDZywsUG57nk7TKhhK0fL11LcejHG3LRW9RF/9A==} + cpu: [arm64] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /esbuild/0.13.14: + resolution: {integrity: sha512-xu4D+1ji9x53ocuomcY+KOrwAnWzhBu/wTEjpdgZ8I1c8i5vboYIeigMdzgY1UowYBKa2vZgVgUB32bu7gkxeg==} + hasBin: true + requiresBuild: true + optionalDependencies: + esbuild-android-arm64: 0.13.14 + esbuild-darwin-64: 0.13.14 + esbuild-darwin-arm64: 0.13.14 + esbuild-freebsd-64: 0.13.14 + esbuild-freebsd-arm64: 0.13.14 + esbuild-linux-32: 0.13.14 + esbuild-linux-64: 0.13.14 + esbuild-linux-arm: 0.13.14 + esbuild-linux-arm64: 0.13.14 + esbuild-linux-mips64le: 0.13.14 + esbuild-linux-ppc64le: 0.13.14 + esbuild-netbsd-64: 0.13.14 + esbuild-openbsd-64: 0.13.14 + esbuild-sunos-64: 0.13.14 + esbuild-windows-32: 0.13.14 + esbuild-windows-64: 0.13.14 + esbuild-windows-arm64: 0.13.14 + dev: true + + /escalade/3.1.1: + resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==} + engines: {node: '>=6'} + dev: true + + /escape-string-regexp/1.0.5: + resolution: {integrity: sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=} + engines: {node: '>=0.8.0'} + dev: true + + /escape-string-regexp/4.0.0: + resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} + engines: {node: '>=10'} + dev: true + + /eslint-config-prettier/8.3.0_eslint@7.32.0: + resolution: {integrity: sha512-BgZuLUSeKzvlL/VUjx/Yb787VQ26RU3gGjA3iiFvdsp/2bMfVIWUVP7tjxtjS0e+HP409cPlPvNkQloz8C91ew==} + hasBin: true + peerDependencies: + eslint: '>=7.0.0' + dependencies: + eslint: 7.32.0 + dev: true + + /eslint-plugin-svelte3/3.2.1_eslint@7.32.0+svelte@3.44.1: + resolution: {integrity: sha512-YoBR9mLoKCjGghJ/gvpnFZKaMEu/VRcuxpSRS8KuozuEo7CdBH7bmBHa6FmMm0i4kJnOyx+PVsaptz96K6H/4Q==} + engines: {node: '>=10'} + peerDependencies: + eslint: '>=6.0.0' + svelte: ^3.2.0 + dependencies: + eslint: 7.32.0 + svelte: 3.44.1 + dev: true + + /eslint-scope/5.1.1: + resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==} + engines: {node: '>=8.0.0'} + dependencies: + esrecurse: 4.3.0 + estraverse: 4.3.0 + dev: true + + /eslint-utils/2.1.0: + resolution: {integrity: sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==} + engines: {node: '>=6'} + dependencies: + eslint-visitor-keys: 1.3.0 + dev: true + + /eslint-utils/3.0.0_eslint@7.32.0: + resolution: {integrity: sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==} + engines: {node: ^10.0.0 || ^12.0.0 || >= 14.0.0} + peerDependencies: + eslint: '>=5' + dependencies: + eslint: 7.32.0 + eslint-visitor-keys: 2.1.0 + dev: true + + /eslint-visitor-keys/1.3.0: + resolution: {integrity: sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==} + engines: {node: '>=4'} + dev: true + + /eslint-visitor-keys/2.1.0: + resolution: {integrity: sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==} + engines: {node: '>=10'} + dev: true + + /eslint/7.32.0: + resolution: {integrity: sha512-VHZ8gX+EDfz+97jGcgyGCyRia/dPOd6Xh9yPv8Bl1+SoaIwD+a/vlrOmGRUyOYu7MwUhc7CxqeaDZU13S4+EpA==} + engines: {node: ^10.12.0 || >=12.0.0} + hasBin: true + dependencies: + '@babel/code-frame': 7.12.11 + '@eslint/eslintrc': 0.4.3 + '@humanwhocodes/config-array': 0.5.0 + ajv: 6.12.6 + chalk: 4.1.2 + cross-spawn: 7.0.3 + debug: 4.3.2 + doctrine: 3.0.0 + enquirer: 2.3.6 + escape-string-regexp: 4.0.0 + eslint-scope: 5.1.1 + eslint-utils: 2.1.0 + eslint-visitor-keys: 2.1.0 + espree: 7.3.1 + esquery: 1.4.0 + esutils: 2.0.3 + fast-deep-equal: 3.1.3 + file-entry-cache: 6.0.1 + functional-red-black-tree: 1.0.1 + glob-parent: 5.1.2 + globals: 13.12.0 + ignore: 4.0.6 + import-fresh: 3.3.0 + imurmurhash: 0.1.4 + is-glob: 4.0.3 + js-yaml: 3.14.1 + json-stable-stringify-without-jsonify: 1.0.1 + levn: 0.4.1 + lodash.merge: 4.6.2 + minimatch: 3.0.4 + natural-compare: 1.4.0 + optionator: 0.9.1 + progress: 2.0.3 + regexpp: 3.2.0 + semver: 7.3.5 + strip-ansi: 6.0.1 + strip-json-comments: 3.1.1 + table: 6.7.3 + text-table: 0.2.0 + v8-compile-cache: 2.3.0 + transitivePeerDependencies: + - supports-color + dev: true + + /espree/7.3.1: + resolution: {integrity: sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==} + engines: {node: ^10.12.0 || >=12.0.0} + dependencies: + acorn: 7.4.1 + acorn-jsx: 5.3.2_acorn@7.4.1 + eslint-visitor-keys: 1.3.0 + dev: true + + /esprima/4.0.1: + resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==} + engines: {node: '>=4'} + hasBin: true + dev: true + + /esquery/1.4.0: + resolution: {integrity: sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==} + engines: {node: '>=0.10'} + dependencies: + estraverse: 5.3.0 + dev: true + + /esrecurse/4.3.0: + resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==} + engines: {node: '>=4.0'} + dependencies: + estraverse: 5.3.0 + dev: true + + /estraverse/4.3.0: + resolution: {integrity: sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==} + engines: {node: '>=4.0'} + dev: true + + /estraverse/5.3.0: + resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} + engines: {node: '>=4.0'} + dev: true + + /estree-walker/2.0.2: + resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==} + dev: true + + /esutils/2.0.3: + resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} + engines: {node: '>=0.10.0'} + dev: true + + /fast-deep-equal/3.1.3: + resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} + dev: true + + /fast-glob/3.2.7: + resolution: {integrity: sha512-rYGMRwip6lUMvYD3BTScMwT1HtAs2d71SMv66Vrxs0IekGZEjhM0pcMfjQPnknBt2zeCwQMEupiN02ZP4DiT1Q==} + engines: {node: '>=8'} + dependencies: + '@nodelib/fs.stat': 2.0.5 + '@nodelib/fs.walk': 1.2.8 + glob-parent: 5.1.2 + merge2: 1.4.1 + micromatch: 4.0.4 + dev: true + + /fast-json-stable-stringify/2.1.0: + resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} + dev: true + + /fast-levenshtein/2.0.6: + resolution: {integrity: sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=} + dev: true + + /fastq/1.13.0: + resolution: {integrity: sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==} + dependencies: + reusify: 1.0.4 + dev: true + + /file-entry-cache/6.0.1: + resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==} + engines: {node: ^10.12.0 || >=12.0.0} + dependencies: + flat-cache: 3.0.4 + dev: true + + /fill-range/7.0.1: + resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==} + engines: {node: '>=8'} + dependencies: + to-regex-range: 5.0.1 + dev: true + + /flat-cache/3.0.4: + resolution: {integrity: sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==} + engines: {node: ^10.12.0 || >=12.0.0} + dependencies: + flatted: 3.2.4 + rimraf: 3.0.2 + dev: true + + /flatted/3.2.4: + resolution: {integrity: sha512-8/sOawo8tJ4QOBX8YlQBMxL8+RLZfxMQOif9o0KUKTNTjMYElWPE0r/m5VNFxTRd0NSw8qSy8dajrwX4RYI1Hw==} + dev: true + + /follow-redirects/1.14.5: + resolution: {integrity: sha512-wtphSXy7d4/OR+MvIFbCVBDzZ5520qV8XfPklSN5QtxuMUJZ+b0Wnst1e1lCDocfzuCkHqj8k0FpZqO+UIaKNA==} + engines: {node: '>=4.0'} + peerDependencies: + debug: '*' + peerDependenciesMeta: + debug: + optional: true + dev: false + + /fraction.js/4.1.2: + resolution: {integrity: sha512-o2RiJQ6DZaR/5+Si0qJUIy637QMRudSi9kU/FFzx9EZazrIdnBgpU+3sEWCxAVhH2RtxW2Oz+T4p2o8uOPVcgA==} + dev: true + + /fs-extra/10.0.0: + resolution: {integrity: sha512-C5owb14u9eJwizKGdchcDUQeFtlSHHthBk8pbX9Vc1PFZrLombudjDnNns88aYslCyF6IY5SUw3Roz6xShcEIQ==} + engines: {node: '>=12'} + dependencies: + graceful-fs: 4.2.8 + jsonfile: 6.1.0 + universalify: 2.0.0 + dev: true + + /fs.realpath/1.0.0: + resolution: {integrity: sha1-FQStJSMVjKpA20onh8sBQRmU6k8=} + dev: true + + /fsevents/2.3.2: + resolution: {integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==} + engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} + os: [darwin] + requiresBuild: true + dev: true + optional: true + + /function-bind/1.1.1: + resolution: {integrity: sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==} + dev: true + + /functional-red-black-tree/1.0.1: + resolution: {integrity: sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=} + dev: true + + /glob-parent/5.1.2: + resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} + engines: {node: '>= 6'} + dependencies: + is-glob: 4.0.3 + dev: true + + /glob-parent/6.0.2: + resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} + engines: {node: '>=10.13.0'} + dependencies: + is-glob: 4.0.3 + dev: true + + /glob/7.2.0: + resolution: {integrity: sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==} + dependencies: + fs.realpath: 1.0.0 + inflight: 1.0.6 + inherits: 2.0.4 + minimatch: 3.0.4 + once: 1.4.0 + path-is-absolute: 1.0.1 + dev: true + + /globals/13.12.0: + resolution: {integrity: sha512-uS8X6lSKN2JumVoXrbUz+uG4BYG+eiawqm3qFcT7ammfbUHeCBoJMlHcec/S3krSk73/AE/f0szYFmgAA3kYZg==} + engines: {node: '>=8'} + dependencies: + type-fest: 0.20.2 + dev: true + + /globby/11.0.4: + resolution: {integrity: sha512-9O4MVG9ioZJ08ffbcyVYyLOJLk5JQ688pJ4eMGLpdWLHq/Wr1D9BlriLQyL0E+jbkuePVZXYFj47QM/v093wHg==} + engines: {node: '>=10'} + dependencies: + array-union: 2.1.0 + dir-glob: 3.0.1 + fast-glob: 3.2.7 + ignore: 5.1.9 + merge2: 1.4.1 + slash: 3.0.0 + dev: true + + /graceful-fs/4.2.8: + resolution: {integrity: sha512-qkIilPUYcNhJpd33n0GBXTB1MMPp14TxEsEs0pTrsSVucApsYzW5V+Q8Qxhik6KU3evy+qkAAowTByymK0avdg==} + dev: true + + /has-flag/3.0.0: + resolution: {integrity: sha1-tdRU3CGZriJWmfNGfloH87lVuv0=} + engines: {node: '>=4'} + dev: true + + /has-flag/4.0.0: + resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} + engines: {node: '>=8'} + dev: true + + /has/1.0.3: + resolution: {integrity: sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==} + engines: {node: '>= 0.4.0'} + dependencies: + function-bind: 1.1.1 + dev: true + + /hex-color-regex/1.1.0: + resolution: {integrity: sha512-l9sfDFsuqtOqKDsQdqrMRk0U85RZc0RtOR9yPI7mRVOa4FsR/BVnZ0shmQRM96Ji99kYZP/7hn1cedc1+ApsTQ==} + dev: true + + /hsl-regex/1.0.0: + resolution: {integrity: sha1-1JMwx4ntgZ4nakwNJy3/owsY/m4=} + dev: true + + /hsla-regex/1.0.0: + resolution: {integrity: sha1-wc56MWjIxmFAM6S194d/OyJfnDg=} + dev: true + + /html-tags/3.1.0: + resolution: {integrity: sha512-1qYz89hW3lFDEazhjW0yVAV87lw8lVkrJocr72XmBkMKsoSVJCQx3W8BXsC7hO2qAt8BoVjYjtAcZ9perqGnNg==} + engines: {node: '>=8'} + dev: true + + /ignore/4.0.6: + resolution: {integrity: sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==} + engines: {node: '>= 4'} + dev: true + + /ignore/5.1.9: + resolution: {integrity: sha512-2zeMQpbKz5dhZ9IwL0gbxSW5w0NK/MSAMtNuhgIHEPmaU3vPdKPL0UdvUCXs5SS4JAwsBxysK5sFMW8ocFiVjQ==} + engines: {node: '>= 4'} + dev: true + + /import-cwd/3.0.0: + resolution: {integrity: sha512-4pnzH16plW+hgvRECbDWpQl3cqtvSofHWh44met7ESfZ8UZOWWddm8hEyDTqREJ9RbYHY8gi8DqmaelApoOGMg==} + engines: {node: '>=8'} + dependencies: + import-from: 3.0.0 + dev: true + + /import-fresh/3.3.0: + resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} + engines: {node: '>=6'} + dependencies: + parent-module: 1.0.1 + resolve-from: 4.0.0 + dev: true + + /import-from/3.0.0: + resolution: {integrity: sha512-CiuXOFFSzkU5x/CR0+z7T91Iht4CXgfCxVOFRhh2Zyhg5wOpWvvDLQUsWl+gcN+QscYBjez8hDCt85O7RLDttQ==} + engines: {node: '>=8'} + dependencies: + resolve-from: 5.0.0 + dev: true + + /imurmurhash/0.1.4: + resolution: {integrity: sha1-khi5srkoojixPcT7a21XbyMUU+o=} + engines: {node: '>=0.8.19'} + dev: true + + /inflight/1.0.6: + resolution: {integrity: sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=} + dependencies: + once: 1.4.0 + wrappy: 1.0.2 + dev: true + + /inherits/2.0.4: + resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} + dev: true + + /is-absolute-url/3.0.3: + resolution: {integrity: sha512-opmNIX7uFnS96NtPmhWQgQx6/NYFgsUXYMllcfzwWKUMwfo8kku1TvE6hkNcH+Q1ts5cMVrsY7j0bxXQDciu9Q==} + engines: {node: '>=8'} + dev: true + + /is-arrayish/0.2.1: + resolution: {integrity: sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=} + dev: true + + /is-arrayish/0.3.2: + resolution: {integrity: sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==} + dev: true + + /is-binary-path/2.1.0: + resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} + engines: {node: '>=8'} + dependencies: + binary-extensions: 2.2.0 + dev: true + + /is-color-stop/1.1.0: + resolution: {integrity: sha1-z/9HGu5N1cnhWFmPvhKWe1za00U=} + dependencies: + css-color-names: 0.0.4 + hex-color-regex: 1.1.0 + hsl-regex: 1.0.0 + hsla-regex: 1.0.0 + rgb-regex: 1.0.1 + rgba-regex: 1.0.0 + dev: true + + /is-core-module/2.8.0: + resolution: {integrity: sha512-vd15qHsaqrRL7dtH6QNuy0ndJmRDrS9HAM1CAiSifNUFv4x1a0CCVsj18hJ1mShxIG6T2i1sO78MkP56r0nYRw==} + dependencies: + has: 1.0.3 + dev: true + + /is-extglob/2.1.1: + resolution: {integrity: sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=} + engines: {node: '>=0.10.0'} + dev: true + + /is-fullwidth-code-point/3.0.0: + resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} + engines: {node: '>=8'} + dev: true + + /is-glob/4.0.3: + resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} + engines: {node: '>=0.10.0'} + dependencies: + is-extglob: 2.1.1 + dev: true + + /is-number/7.0.0: + resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} + engines: {node: '>=0.12.0'} + dev: true + + /is-resolvable/1.1.0: + resolution: {integrity: sha512-qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg==} + dev: true + + /isexe/2.0.0: + resolution: {integrity: sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=} + dev: true + + /js-tokens/4.0.0: + resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} + dev: true + + /js-yaml/3.14.1: + resolution: {integrity: sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==} + hasBin: true + dependencies: + argparse: 1.0.10 + esprima: 4.0.1 + dev: true + + /json-parse-even-better-errors/2.3.1: + resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==} + dev: true + + /json-schema-traverse/0.4.1: + resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} + dev: true + + /json-schema-traverse/1.0.0: + resolution: {integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==} + dev: true + + /json-stable-stringify-without-jsonify/1.0.1: + resolution: {integrity: sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=} + dev: true + + /jsonfile/6.1.0: + resolution: {integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==} + dependencies: + universalify: 2.0.0 + optionalDependencies: + graceful-fs: 4.2.8 + dev: true + + /kleur/4.1.4: + resolution: {integrity: sha512-8QADVssbrFjivHWQU7KkMgptGTl6WAcSdlbBPY4uNF+mWr6DGcKrvY2w4FQJoXch7+fKMjj0dRrL75vk3k23OA==} + engines: {node: '>=6'} + dev: true + + /levn/0.4.1: + resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} + engines: {node: '>= 0.8.0'} + dependencies: + prelude-ls: 1.2.1 + type-check: 0.4.0 + dev: true + + /lilconfig/2.0.4: + resolution: {integrity: sha512-bfTIN7lEsiooCocSISTWXkiWJkRqtL9wYtYy+8EK3Y41qh3mpwPU0ycTOgjdY9ErwXCc8QyrQp82bdL0Xkm9yA==} + engines: {node: '>=10'} + dev: true + + /lines-and-columns/1.1.6: + resolution: {integrity: sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA=} + dev: true + + /lodash.memoize/4.1.2: + resolution: {integrity: sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4=} + dev: true + + /lodash.merge/4.6.2: + resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} + dev: true + + /lodash.topath/4.5.2: + resolution: {integrity: sha1-NhY1Hzu6YZlKCTGYlmC9AyVP0Ak=} + dev: true + + /lodash.truncate/4.4.2: + resolution: {integrity: sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM=} + dev: true + + /lodash.uniq/4.5.0: + resolution: {integrity: sha1-0CJTc662Uq3BvILklFM5qEJ1R3M=} + dev: true + + /lodash/4.17.21: + resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} + dev: true + + /lru-cache/6.0.0: + resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==} + engines: {node: '>=10'} + dependencies: + yallist: 4.0.0 + dev: true + + /magic-string/0.25.7: + resolution: {integrity: sha512-4CrMT5DOHTDk4HYDlzmwu4FVCcIYI8gauveasrdCu2IKIFOJ3f0v/8MDGJCDL9oD2ppz/Av1b0Nj345H9M+XIA==} + dependencies: + sourcemap-codec: 1.4.8 + dev: true + + /mdn-data/2.0.14: + resolution: {integrity: sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==} + dev: true + + /merge2/1.4.1: + resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} + engines: {node: '>= 8'} + dev: true + + /micromatch/4.0.4: + resolution: {integrity: sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==} + engines: {node: '>=8.6'} + dependencies: + braces: 3.0.2 + picomatch: 2.3.0 + dev: true + + /mime/3.0.0: + resolution: {integrity: sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==} + engines: {node: '>=10.0.0'} + hasBin: true + dev: false + + /min-indent/1.0.1: + resolution: {integrity: sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==} + engines: {node: '>=4'} + dev: true + + /minimatch/3.0.4: + resolution: {integrity: sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==} + dependencies: + brace-expansion: 1.1.11 + dev: true + + /minimist/1.2.5: + resolution: {integrity: sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==} + dev: true + + /mkdirp/0.5.5: + resolution: {integrity: sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==} + hasBin: true + dependencies: + minimist: 1.2.5 + dev: true + + /modern-normalize/1.1.0: + resolution: {integrity: sha512-2lMlY1Yc1+CUy0gw4H95uNN7vjbpoED7NNRSBHE25nWfLBdmMzFCsPshlzbxHz+gYMcBEUN8V4pU16prcdPSgA==} + engines: {node: '>=6'} + dev: true + + /mri/1.2.0: + resolution: {integrity: sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==} + engines: {node: '>=4'} + dev: true + + /ms/2.1.2: + resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} + dev: true + + /nanoid/3.1.30: + resolution: {integrity: sha512-zJpuPDwOv8D2zq2WRoMe1HsfZthVewpel9CAvTfc/2mBD1uUT/agc5f7GHGWXlYkFvi1mVxe4IjvP2HNrop7nQ==} + engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} + hasBin: true + dev: true + + /natural-compare/1.4.0: + resolution: {integrity: sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=} + dev: true + + /node-emoji/1.11.0: + resolution: {integrity: sha512-wo2DpQkQp7Sjm2A0cq+sN7EHKO6Sl0ctXeBdFZrL9T9+UywORbufTcTZxom8YqpLQt/FqNMUkOpkZrJVYSKD3A==} + dependencies: + lodash: 4.17.21 + dev: true + + /node-releases/2.0.1: + resolution: {integrity: sha512-CqyzN6z7Q6aMeF/ktcMVTzhAHCEpf8SOarwpzpf8pNBY2k5/oM34UHldUwp8VKI7uxct2HxSRdJjBaZeESzcxA==} + dev: true + + /normalize-path/3.0.0: + resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} + engines: {node: '>=0.10.0'} + dev: true + + /normalize-range/0.1.2: + resolution: {integrity: sha1-LRDAa9/TEuqXd2laTShDlFa3WUI=} + engines: {node: '>=0.10.0'} + dev: true + + /normalize-url/6.1.0: + resolution: {integrity: sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==} + engines: {node: '>=10'} + dev: true + + /nth-check/2.0.1: + resolution: {integrity: sha512-it1vE95zF6dTT9lBsYbxvqh0Soy4SPowchj0UBGj/V6cTPnXXtQOPUbhZ6CmGzAD/rW22LQK6E96pcdJXk4A4w==} + dependencies: + boolbase: 1.0.0 + dev: true + + /object-hash/2.2.0: + resolution: {integrity: sha512-gScRMn0bS5fH+IuwyIFgnh9zBdo4DV+6GhygmWM9HyNJSgS0hScp1f5vjtm7oIIOiT9trXrShAkLFSc2IqKNgw==} + engines: {node: '>= 6'} + dev: true + + /once/1.4.0: + resolution: {integrity: sha1-WDsap3WWHUsROsF9nFC6753Xa9E=} + dependencies: + wrappy: 1.0.2 + dev: true + + /optionator/0.9.1: + resolution: {integrity: sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==} + engines: {node: '>= 0.8.0'} + dependencies: + deep-is: 0.1.4 + fast-levenshtein: 2.0.6 + levn: 0.4.1 + prelude-ls: 1.2.1 + type-check: 0.4.0 + word-wrap: 1.2.3 + dev: true + + /parent-module/1.0.1: + resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} + engines: {node: '>=6'} + dependencies: + callsites: 3.1.0 + dev: true + + /parse-json/5.2.0: + resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==} + engines: {node: '>=8'} + dependencies: + '@babel/code-frame': 7.12.11 + error-ex: 1.3.2 + json-parse-even-better-errors: 2.3.1 + lines-and-columns: 1.1.6 + dev: true + + /path-is-absolute/1.0.1: + resolution: {integrity: sha1-F0uSaHNVNP+8es5r9TpanhtcX18=} + engines: {node: '>=0.10.0'} + dev: true + + /path-key/3.1.1: + resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} + engines: {node: '>=8'} + dev: true + + /path-parse/1.0.7: + resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} + dev: true + + /path-type/4.0.0: + resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} + engines: {node: '>=8'} + dev: true + + /picocolors/1.0.0: + resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==} + dev: true + + /picomatch/2.3.0: + resolution: {integrity: sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw==} + engines: {node: '>=8.6'} + dev: true + + /postcss-calc/8.0.0_postcss@8.3.11: + resolution: {integrity: sha512-5NglwDrcbiy8XXfPM11F3HeC6hoT9W7GUH/Zi5U/p7u3Irv4rHhdDcIZwG0llHXV4ftsBjpfWMXAnXNl4lnt8g==} + peerDependencies: + postcss: ^8.2.2 + dependencies: + postcss: 8.3.11 + postcss-selector-parser: 6.0.6 + postcss-value-parser: 4.1.0 + dev: true + + /postcss-colormin/5.2.1_postcss@8.3.11: + resolution: {integrity: sha512-VVwMrEYLcHYePUYV99Ymuoi7WhKrMGy/V9/kTS0DkCoJYmmjdOMneyhzYUxcNgteKDVbrewOkSM7Wje/MFwxzA==} + engines: {node: ^10 || ^12 || >=14.0} + peerDependencies: + postcss: ^8.2.15 + dependencies: + browserslist: 4.18.1 + caniuse-api: 3.0.0 + colord: 2.9.1 + postcss: 8.3.11 + postcss-value-parser: 4.1.0 + dev: true + + /postcss-convert-values/5.0.2_postcss@8.3.11: + resolution: {integrity: sha512-KQ04E2yadmfa1LqXm7UIDwW1ftxU/QWZmz6NKnHnUvJ3LEYbbcX6i329f/ig+WnEByHegulocXrECaZGLpL8Zg==} + engines: {node: ^10 || ^12 || >=14.0} + peerDependencies: + postcss: ^8.2.15 + dependencies: + postcss: 8.3.11 + postcss-value-parser: 4.1.0 + dev: true + + /postcss-discard-comments/5.0.1_postcss@8.3.11: + resolution: {integrity: sha512-lgZBPTDvWrbAYY1v5GYEv8fEO/WhKOu/hmZqmCYfrpD6eyDWWzAOsl2rF29lpvziKO02Gc5GJQtlpkTmakwOWg==} + engines: {node: ^10 || ^12 || >=14.0} + peerDependencies: + postcss: ^8.2.15 + dependencies: + postcss: 8.3.11 + dev: true + + /postcss-discard-duplicates/5.0.1_postcss@8.3.11: + resolution: {integrity: sha512-svx747PWHKOGpAXXQkCc4k/DsWo+6bc5LsVrAsw+OU+Ibi7klFZCyX54gjYzX4TH+f2uzXjRviLARxkMurA2bA==} + engines: {node: ^10 || ^12 || >=14.0} + peerDependencies: + postcss: ^8.2.15 + dependencies: + postcss: 8.3.11 + dev: true + + /postcss-discard-empty/5.0.1_postcss@8.3.11: + resolution: {integrity: sha512-vfU8CxAQ6YpMxV2SvMcMIyF2LX1ZzWpy0lqHDsOdaKKLQVQGVP1pzhrI9JlsO65s66uQTfkQBKBD/A5gp9STFw==} + engines: {node: ^10 || ^12 || >=14.0} + peerDependencies: + postcss: ^8.2.15 + dependencies: + postcss: 8.3.11 + dev: true + + /postcss-discard-overridden/5.0.1_postcss@8.3.11: + resolution: {integrity: sha512-Y28H7y93L2BpJhrdUR2SR2fnSsT+3TVx1NmVQLbcnZWwIUpJ7mfcTC6Za9M2PG6w8j7UQRfzxqn8jU2VwFxo3Q==} + engines: {node: ^10 || ^12 || >=14.0} + peerDependencies: + postcss: ^8.2.15 + dependencies: + postcss: 8.3.11 + dev: true + + /postcss-js/3.0.3: + resolution: {integrity: sha512-gWnoWQXKFw65Hk/mi2+WTQTHdPD5UJdDXZmX073EY/B3BWnYjO4F4t0VneTCnCGQ5E5GsCdMkzPaTXwl3r5dJw==} + engines: {node: '>=10.0'} + dependencies: + camelcase-css: 2.0.1 + postcss: 8.3.11 + dev: true + + /postcss-load-config/3.1.0: + resolution: {integrity: sha512-ipM8Ds01ZUophjDTQYSVP70slFSYg3T0/zyfII5vzhN6V57YSxMgG5syXuwi5VtS8wSf3iL30v0uBdoIVx4Q0g==} + engines: {node: '>= 10'} + peerDependencies: + ts-node: '>=9.0.0' + peerDependenciesMeta: + ts-node: + optional: true + dependencies: + import-cwd: 3.0.0 + lilconfig: 2.0.4 + yaml: 1.10.2 + dev: true + + /postcss-merge-longhand/5.0.4_postcss@8.3.11: + resolution: {integrity: sha512-2lZrOVD+d81aoYkZDpWu6+3dTAAGkCKbV5DoRhnIR7KOULVrI/R7bcMjhrH9KTRy6iiHKqmtG+n/MMj1WmqHFw==} + engines: {node: ^10 || ^12 || >=14.0} + peerDependencies: + postcss: ^8.2.15 + dependencies: + postcss: 8.3.11 + postcss-value-parser: 4.1.0 + stylehacks: 5.0.1_postcss@8.3.11 + dev: true + + /postcss-merge-rules/5.0.3_postcss@8.3.11: + resolution: {integrity: sha512-cEKTMEbWazVa5NXd8deLdCnXl+6cYG7m2am+1HzqH0EnTdy8fRysatkaXb2dEnR+fdaDxTvuZ5zoBdv6efF6hg==} + engines: {node: ^10 || ^12 || >=14.0} + peerDependencies: + postcss: ^8.2.15 + dependencies: + browserslist: 4.18.1 + caniuse-api: 3.0.0 + cssnano-utils: 2.0.1_postcss@8.3.11 + postcss: 8.3.11 + postcss-selector-parser: 6.0.6 + dev: true + + /postcss-minify-font-values/5.0.1_postcss@8.3.11: + resolution: {integrity: sha512-7JS4qIsnqaxk+FXY1E8dHBDmraYFWmuL6cgt0T1SWGRO5bzJf8sUoelwa4P88LEWJZweHevAiDKxHlofuvtIoA==} + engines: {node: ^10 || ^12 || >=14.0} + peerDependencies: + postcss: ^8.2.15 + dependencies: + postcss: 8.3.11 + postcss-value-parser: 4.1.0 + dev: true + + /postcss-minify-gradients/5.0.3_postcss@8.3.11: + resolution: {integrity: sha512-Z91Ol22nB6XJW+5oe31+YxRsYooxOdFKcbOqY/V8Fxse1Y3vqlNRpi1cxCqoACZTQEhl+xvt4hsbWiV5R+XI9Q==} + engines: {node: ^10 || ^12 || >=14.0} + peerDependencies: + postcss: ^8.2.15 + dependencies: + colord: 2.9.1 + cssnano-utils: 2.0.1_postcss@8.3.11 + postcss: 8.3.11 + postcss-value-parser: 4.1.0 + dev: true + + /postcss-minify-params/5.0.2_postcss@8.3.11: + resolution: {integrity: sha512-qJAPuBzxO1yhLad7h2Dzk/F7n1vPyfHfCCh5grjGfjhi1ttCnq4ZXGIW77GSrEbh9Hus9Lc/e/+tB4vh3/GpDg==} + engines: {node: ^10 || ^12 || >=14.0} + peerDependencies: + postcss: ^8.2.15 + dependencies: + alphanum-sort: 1.0.2 + browserslist: 4.18.1 + cssnano-utils: 2.0.1_postcss@8.3.11 + postcss: 8.3.11 + postcss-value-parser: 4.1.0 + dev: true + + /postcss-minify-selectors/5.1.0_postcss@8.3.11: + resolution: {integrity: sha512-NzGBXDa7aPsAcijXZeagnJBKBPMYLaJJzB8CQh6ncvyl2sIndLVWfbcDi0SBjRWk5VqEjXvf8tYwzoKf4Z07og==} + engines: {node: ^10 || ^12 || >=14.0} + peerDependencies: + postcss: ^8.2.15 + dependencies: + alphanum-sort: 1.0.2 + postcss: 8.3.11 + postcss-selector-parser: 6.0.6 + dev: true + + /postcss-nested/5.0.6_postcss@8.3.11: + resolution: {integrity: sha512-rKqm2Fk0KbA8Vt3AdGN0FB9OBOMDVajMG6ZCf/GoHgdxUJ4sBFp0A/uMIRm+MJUdo33YXEtjqIz8u7DAp8B7DA==} + engines: {node: '>=12.0'} + peerDependencies: + postcss: ^8.2.14 + dependencies: + postcss: 8.3.11 + postcss-selector-parser: 6.0.6 + dev: true + + /postcss-normalize-charset/5.0.1_postcss@8.3.11: + resolution: {integrity: sha512-6J40l6LNYnBdPSk+BHZ8SF+HAkS4q2twe5jnocgd+xWpz/mx/5Sa32m3W1AA8uE8XaXN+eg8trIlfu8V9x61eg==} + engines: {node: ^10 || ^12 || >=14.0} + peerDependencies: + postcss: ^8.2.15 + dependencies: + postcss: 8.3.11 + dev: true + + /postcss-normalize-display-values/5.0.1_postcss@8.3.11: + resolution: {integrity: sha512-uupdvWk88kLDXi5HEyI9IaAJTE3/Djbcrqq8YgjvAVuzgVuqIk3SuJWUisT2gaJbZm1H9g5k2w1xXilM3x8DjQ==} + engines: {node: ^10 || ^12 || >=14.0} + peerDependencies: + postcss: ^8.2.15 + dependencies: + cssnano-utils: 2.0.1_postcss@8.3.11 + postcss: 8.3.11 + postcss-value-parser: 4.1.0 + dev: true + + /postcss-normalize-positions/5.0.1_postcss@8.3.11: + resolution: {integrity: sha512-rvzWAJai5xej9yWqlCb1OWLd9JjW2Ex2BCPzUJrbaXmtKtgfL8dBMOOMTX6TnvQMtjk3ei1Lswcs78qKO1Skrg==} + engines: {node: ^10 || ^12 || >=14.0} + peerDependencies: + postcss: ^8.2.15 + dependencies: + postcss: 8.3.11 + postcss-value-parser: 4.1.0 + dev: true + + /postcss-normalize-repeat-style/5.0.1_postcss@8.3.11: + resolution: {integrity: sha512-syZ2itq0HTQjj4QtXZOeefomckiV5TaUO6ReIEabCh3wgDs4Mr01pkif0MeVwKyU/LHEkPJnpwFKRxqWA/7O3w==} + engines: {node: ^10 || ^12 || >=14.0} + peerDependencies: + postcss: ^8.2.15 + dependencies: + cssnano-utils: 2.0.1_postcss@8.3.11 + postcss: 8.3.11 + postcss-value-parser: 4.1.0 + dev: true + + /postcss-normalize-string/5.0.1_postcss@8.3.11: + resolution: {integrity: sha512-Ic8GaQ3jPMVl1OEn2U//2pm93AXUcF3wz+OriskdZ1AOuYV25OdgS7w9Xu2LO5cGyhHCgn8dMXh9bO7vi3i9pA==} + engines: {node: ^10 || ^12 || >=14.0} + peerDependencies: + postcss: ^8.2.15 + dependencies: + postcss: 8.3.11 + postcss-value-parser: 4.1.0 + dev: true + + /postcss-normalize-timing-functions/5.0.1_postcss@8.3.11: + resolution: {integrity: sha512-cPcBdVN5OsWCNEo5hiXfLUnXfTGtSFiBU9SK8k7ii8UD7OLuznzgNRYkLZow11BkQiiqMcgPyh4ZqXEEUrtQ1Q==} + engines: {node: ^10 || ^12 || >=14.0} + peerDependencies: + postcss: ^8.2.15 + dependencies: + cssnano-utils: 2.0.1_postcss@8.3.11 + postcss: 8.3.11 + postcss-value-parser: 4.1.0 + dev: true + + /postcss-normalize-unicode/5.0.1_postcss@8.3.11: + resolution: {integrity: sha512-kAtYD6V3pK0beqrU90gpCQB7g6AOfP/2KIPCVBKJM2EheVsBQmx/Iof+9zR9NFKLAx4Pr9mDhogB27pmn354nA==} + engines: {node: ^10 || ^12 || >=14.0} + peerDependencies: + postcss: ^8.2.15 + dependencies: + browserslist: 4.18.1 + postcss: 8.3.11 + postcss-value-parser: 4.1.0 + dev: true + + /postcss-normalize-url/5.0.3_postcss@8.3.11: + resolution: {integrity: sha512-qWiUMbvkRx3kc1Dp5opzUwc7MBWZcSDK2yofCmdvFBCpx+zFPkxBC1FASQ59Pt+flYfj/nTZSkmF56+XG5elSg==} + engines: {node: ^10 || ^12 || >=14.0} + peerDependencies: + postcss: ^8.2.15 + dependencies: + is-absolute-url: 3.0.3 + normalize-url: 6.1.0 + postcss: 8.3.11 + postcss-value-parser: 4.1.0 + dev: true + + /postcss-normalize-whitespace/5.0.1_postcss@8.3.11: + resolution: {integrity: sha512-iPklmI5SBnRvwceb/XH568yyzK0qRVuAG+a1HFUsFRf11lEJTiQQa03a4RSCQvLKdcpX7XsI1Gen9LuLoqwiqA==} + engines: {node: ^10 || ^12 || >=14.0} + peerDependencies: + postcss: ^8.2.15 + dependencies: + postcss: 8.3.11 + postcss-value-parser: 4.1.0 + dev: true + + /postcss-ordered-values/5.0.2_postcss@8.3.11: + resolution: {integrity: sha512-8AFYDSOYWebJYLyJi3fyjl6CqMEG/UVworjiyK1r573I56kb3e879sCJLGvR3merj+fAdPpVplXKQZv+ey6CgQ==} + engines: {node: ^10 || ^12 || >=14.0} + peerDependencies: + postcss: ^8.2.15 + dependencies: + cssnano-utils: 2.0.1_postcss@8.3.11 + postcss: 8.3.11 + postcss-value-parser: 4.1.0 + dev: true + + /postcss-reduce-initial/5.0.1_postcss@8.3.11: + resolution: {integrity: sha512-zlCZPKLLTMAqA3ZWH57HlbCjkD55LX9dsRyxlls+wfuRfqCi5mSlZVan0heX5cHr154Dq9AfbH70LyhrSAezJw==} + engines: {node: ^10 || ^12 || >=14.0} + peerDependencies: + postcss: ^8.2.15 + dependencies: + browserslist: 4.18.1 + caniuse-api: 3.0.0 + postcss: 8.3.11 + dev: true + + /postcss-reduce-transforms/5.0.1_postcss@8.3.11: + resolution: {integrity: sha512-a//FjoPeFkRuAguPscTVmRQUODP+f3ke2HqFNgGPwdYnpeC29RZdCBvGRGTsKpMURb/I3p6jdKoBQ2zI+9Q7kA==} + engines: {node: ^10 || ^12 || >=14.0} + peerDependencies: + postcss: ^8.2.15 + dependencies: + cssnano-utils: 2.0.1_postcss@8.3.11 + postcss: 8.3.11 + postcss-value-parser: 4.1.0 + dev: true + + /postcss-selector-parser/6.0.6: + resolution: {integrity: sha512-9LXrvaaX3+mcv5xkg5kFwqSzSH1JIObIx51PrndZwlmznwXRfxMddDvo9gve3gVR8ZTKgoFDdWkbRFmEhT4PMg==} + engines: {node: '>=4'} + dependencies: + cssesc: 3.0.0 + util-deprecate: 1.0.2 + dev: true + + /postcss-svgo/5.0.3_postcss@8.3.11: + resolution: {integrity: sha512-41XZUA1wNDAZrQ3XgWREL/M2zSw8LJPvb5ZWivljBsUQAGoEKMYm6okHsTjJxKYI4M75RQEH4KYlEM52VwdXVA==} + engines: {node: ^10 || ^12 || >=14.0} + peerDependencies: + postcss: ^8.2.15 + dependencies: + postcss: 8.3.11 + postcss-value-parser: 4.1.0 + svgo: 2.8.0 + dev: true + + /postcss-unique-selectors/5.0.2_postcss@8.3.11: + resolution: {integrity: sha512-w3zBVlrtZm7loQWRPVC0yjUwwpty7OM6DnEHkxcSQXO1bMS3RJ+JUS5LFMSDZHJcvGsRwhZinCWVqn8Kej4EDA==} + engines: {node: ^10 || ^12 || >=14.0} + peerDependencies: + postcss: ^8.2.15 + dependencies: + alphanum-sort: 1.0.2 + postcss: 8.3.11 + postcss-selector-parser: 6.0.6 + dev: true + + /postcss-value-parser/3.3.1: + resolution: {integrity: sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==} + dev: true + + /postcss-value-parser/4.1.0: + resolution: {integrity: sha512-97DXOFbQJhk71ne5/Mt6cOu6yxsSfM0QGQyl0L25Gca4yGWEGJaig7l7gbCX623VqTBNGLRLaVUCnNkcedlRSQ==} + dev: true + + /postcss/8.3.11: + resolution: {integrity: sha512-hCmlUAIlUiav8Xdqw3Io4LcpA1DOt7h3LSTAC4G6JGHFFaWzI6qvFt9oilvl8BmkbBRX1IhM90ZAmpk68zccQA==} + engines: {node: ^10 || ^12 || >=14} + dependencies: + nanoid: 3.1.30 + picocolors: 1.0.0 + source-map-js: 0.6.2 + dev: true + + /prelude-ls/1.2.1: + resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} + engines: {node: '>= 0.8.0'} + dev: true + + /prettier-plugin-svelte/2.5.0_prettier@2.4.1+svelte@3.44.1: + resolution: {integrity: sha512-+iHY2uGChOngrgKielJUnqo74gIL/EO5oeWm8MftFWjEi213lq9QYTOwm1pv4lI1nA61tdgf80CF2i5zMcu1kw==} + peerDependencies: + prettier: ^1.16.4 || ^2.0.0 + svelte: ^3.2.0 + dependencies: + prettier: 2.4.1 + svelte: 3.44.1 + dev: true + + /prettier/2.4.1: + resolution: {integrity: sha512-9fbDAXSBcc6Bs1mZrDYb3XKzDLm4EXXL9sC1LqKP5rZkT6KRr/rf9amVUcODVXgguK/isJz0d0hP72WeaKWsvA==} + engines: {node: '>=10.13.0'} + hasBin: true + dev: true + + /pretty-hrtime/1.0.3: + resolution: {integrity: sha1-t+PqQkNaTJsnWdmeDyAesZWALuE=} + engines: {node: '>= 0.8'} + dev: true + + /progress/2.0.3: + resolution: {integrity: sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==} + engines: {node: '>=0.4.0'} + dev: true + + /punycode/2.1.1: + resolution: {integrity: sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==} + engines: {node: '>=6'} + dev: true + + /purgecss/4.0.3: + resolution: {integrity: sha512-PYOIn5ibRIP34PBU9zohUcCI09c7drPJJtTDAc0Q6QlRz2/CHQ8ywGLdE7ZhxU2VTqB7p5wkvj5Qcm05Rz3Jmw==} + hasBin: true + dependencies: + commander: 6.2.1 + glob: 7.2.0 + postcss: 8.3.11 + postcss-selector-parser: 6.0.6 + dev: true + + /queue-microtask/1.2.3: + resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} + dev: true + + /quick-lru/5.1.1: + resolution: {integrity: sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==} + engines: {node: '>=10'} + dev: true + + /readdirp/3.6.0: + resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} + engines: {node: '>=8.10.0'} + dependencies: + picomatch: 2.3.0 + dev: true + + /reduce-css-calc/2.1.8: + resolution: {integrity: sha512-8liAVezDmUcH+tdzoEGrhfbGcP7nOV4NkGE3a74+qqvE7nt9i4sKLGBuZNOnpI4WiGksiNPklZxva80061QiPg==} + dependencies: + css-unit-converter: 1.1.2 + postcss-value-parser: 3.3.1 + dev: true + + /regexpp/3.2.0: + resolution: {integrity: sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==} + engines: {node: '>=8'} + dev: true + + /require-from-string/2.0.2: + resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==} + engines: {node: '>=0.10.0'} + dev: true + + /require-relative/0.8.7: + resolution: {integrity: sha1-eZlTn8ngR6N5KPoZb44VY9q9Nt4=} + dev: true + + /resolve-from/4.0.0: + resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} + engines: {node: '>=4'} + dev: true + + /resolve-from/5.0.0: + resolution: {integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==} + engines: {node: '>=8'} + dev: true + + /resolve/1.20.0: + resolution: {integrity: sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==} + dependencies: + is-core-module: 2.8.0 + path-parse: 1.0.7 + dev: true + + /reusify/1.0.4: + resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} + engines: {iojs: '>=1.0.0', node: '>=0.10.0'} + dev: true + + /rgb-regex/1.0.1: + resolution: {integrity: sha1-wODWiC3w4jviVKR16O3UGRX+rrE=} + dev: true + + /rgba-regex/1.0.0: + resolution: {integrity: sha1-QzdOLiyglosO8VI0YLfXMP8i7rM=} + dev: true + + /rimraf/2.7.1: + resolution: {integrity: sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==} + hasBin: true + dependencies: + glob: 7.2.0 + dev: true + + /rimraf/3.0.2: + resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} + hasBin: true + dependencies: + glob: 7.2.0 + dev: true + + /rollup/2.60.0: + resolution: {integrity: sha512-cHdv9GWd58v58rdseC8e8XIaPUo8a9cgZpnCMMDGZFDZKEODOiPPEQFXLriWr/TjXzhPPmG5bkAztPsOARIcGQ==} + engines: {node: '>=10.0.0'} + hasBin: true + optionalDependencies: + fsevents: 2.3.2 + dev: true + + /run-parallel/1.2.0: + resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} + dependencies: + queue-microtask: 1.2.3 + dev: true + + /sade/1.7.4: + resolution: {integrity: sha512-y5yauMD93rX840MwUJr7C1ysLFBgMspsdTo4UVrDg3fXDvtwOyIqykhVAAm6fk/3au77773itJStObgK+LKaiA==} + engines: {node: '>= 6'} + dependencies: + mri: 1.2.0 + dev: true + + /sander/0.5.1: + resolution: {integrity: sha1-dB4kXiMfB8r7b98PEzrfohalAq0=} + dependencies: + es6-promise: 3.3.1 + graceful-fs: 4.2.8 + mkdirp: 0.5.5 + rimraf: 2.7.1 + dev: true + + /semver/7.3.5: + resolution: {integrity: sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==} + engines: {node: '>=10'} + hasBin: true + dependencies: + lru-cache: 6.0.0 + dev: true + + /shebang-command/2.0.0: + resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} + engines: {node: '>=8'} + dependencies: + shebang-regex: 3.0.0 + dev: true + + /shebang-regex/3.0.0: + resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} + engines: {node: '>=8'} + dev: true + + /simple-svelte-autocomplete/2.2.4: + resolution: {integrity: sha512-a/1ceBoLl5UOrdyOhFL1mXA1o8P7tXO1wmHs4IBR1UeI4cCHEojOKnpMldfSrKNP3gxmqm/F+hohReoPnbFgeA==} + dev: false + + /simple-swizzle/0.2.2: + resolution: {integrity: sha1-pNprY1/8zMoz9w0Xy5JZLeleVXo=} + dependencies: + is-arrayish: 0.3.2 + dev: true + + /slash/3.0.0: + resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} + engines: {node: '>=8'} + dev: true + + /slice-ansi/4.0.0: + resolution: {integrity: sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==} + engines: {node: '>=10'} + dependencies: + ansi-styles: 4.3.0 + astral-regex: 2.0.0 + is-fullwidth-code-point: 3.0.0 + dev: true + + /sorcery/0.10.0: + resolution: {integrity: sha1-iukK19fLBfxZ8asMY3hF1cFaUrc=} + hasBin: true + dependencies: + buffer-crc32: 0.2.13 + minimist: 1.2.5 + sander: 0.5.1 + sourcemap-codec: 1.4.8 + dev: true + + /source-map-js/0.6.2: + resolution: {integrity: sha512-/3GptzWzu0+0MBQFrDKzw/DvvMTUORvgY6k6jd/VS6iCR4RDTKWH6v6WPwQoUO8667uQEf9Oe38DxAYWY5F/Ug==} + engines: {node: '>=0.10.0'} + dev: true + + /source-map/0.6.1: + resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==} + engines: {node: '>=0.10.0'} + dev: true + + /source-map/0.7.3: + resolution: {integrity: sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==} + engines: {node: '>= 8'} + dev: true + + /sourcemap-codec/1.4.8: + resolution: {integrity: sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==} + dev: true + + /sprintf-js/1.0.3: + resolution: {integrity: sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=} + dev: true + + /stable/0.1.8: + resolution: {integrity: sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==} + dev: true + + /string-width/4.2.3: + resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} + engines: {node: '>=8'} + dependencies: + emoji-regex: 8.0.0 + is-fullwidth-code-point: 3.0.0 + strip-ansi: 6.0.1 + dev: true + + /strip-ansi/6.0.1: + resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} + engines: {node: '>=8'} + dependencies: + ansi-regex: 5.0.1 + dev: true + + /strip-indent/3.0.0: + resolution: {integrity: sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==} + engines: {node: '>=8'} + dependencies: + min-indent: 1.0.1 + dev: true + + /strip-json-comments/3.1.1: + resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} + engines: {node: '>=8'} + dev: true + + /stylehacks/5.0.1_postcss@8.3.11: + resolution: {integrity: sha512-Es0rVnHIqbWzveU1b24kbw92HsebBepxfcqe5iix7t9j0PQqhs0IxXVXv0pY2Bxa08CgMkzD6OWql7kbGOuEdA==} + engines: {node: ^10 || ^12 || >=14.0} + peerDependencies: + postcss: ^8.2.15 + dependencies: + browserslist: 4.18.1 + postcss: 8.3.11 + postcss-selector-parser: 6.0.6 + dev: true + + /supports-color/5.5.0: + resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==} + engines: {node: '>=4'} + dependencies: + has-flag: 3.0.0 + dev: true + + /supports-color/7.2.0: + resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} + engines: {node: '>=8'} + dependencies: + has-flag: 4.0.0 + dev: true + + /svelte-autocomplete/0.0.4: + resolution: {integrity: sha512-XM5Qe+9XO4MwQsjDSPfW7KQwoF9kz+tHalmU4NpSXEaxhnm1FhBaeCa2Gd893Gc1FMIonP5JHTSG3Uhvz9mT1Q==} + dev: false + + /svelte-check/2.2.10_postcss@8.3.11+svelte@3.44.1: + resolution: {integrity: sha512-UVLd/N7hUIG2v6dytofsw8MxYn2iS2hpNSglsGz9Z9b8ZfbJ5jayl4Mm1SXhNwiFs5aklG90zSBJtd7NTK8dTg==} + hasBin: true + peerDependencies: + svelte: ^3.24.0 + dependencies: + chalk: 4.1.2 + chokidar: 3.5.2 + fast-glob: 3.2.7 + import-fresh: 3.3.0 + minimist: 1.2.5 + sade: 1.7.4 + source-map: 0.7.3 + svelte: 3.44.1 + svelte-preprocess: 4.9.8_a7621183bde426ded30bedcff7efa7fb + typescript: 4.5.2 + transitivePeerDependencies: + - '@babel/core' + - coffeescript + - less + - node-sass + - postcss + - postcss-load-config + - pug + - sass + - stylus + - sugarss + dev: true + + /svelte-hmr/0.14.7_svelte@3.44.1: + resolution: {integrity: sha512-pDrzgcWSoMaK6AJkBWkmgIsecW0GChxYZSZieIYfCP0v2oPyx2CYU/zm7TBIcjLVUPP714WxmViE9Thht4etog==} + peerDependencies: + svelte: '>=3.19.0' + dependencies: + svelte: 3.44.1 + dev: true + + /svelte-preprocess/4.9.8_a7621183bde426ded30bedcff7efa7fb: + resolution: {integrity: sha512-EQS/oRZzMtYdAprppZxY3HcysKh11w54MgA63ybtL+TAZ4hVqYOnhw41JVJjWN9dhPnNjjLzvbZ2tMhTsla1Og==} + engines: {node: '>= 9.11.2'} + requiresBuild: true + peerDependencies: + '@babel/core': ^7.10.2 + coffeescript: ^2.5.1 + less: ^3.11.3 + node-sass: '*' + postcss: ^7 || ^8 + postcss-load-config: ^2.1.0 || ^3.0.0 + pug: ^3.0.0 + sass: ^1.26.8 + stylus: ^0.54.7 + sugarss: ^2.0.0 + svelte: ^3.23.0 + typescript: ^3.9.5 || ^4.0.0 + peerDependenciesMeta: + '@babel/core': + optional: true + coffeescript: + optional: true + less: + optional: true + node-sass: + optional: true + postcss: + optional: true + postcss-load-config: + optional: true + pug: + optional: true + sass: + optional: true + stylus: + optional: true + sugarss: + optional: true + typescript: + optional: true + dependencies: + '@types/pug': 2.0.5 + '@types/sass': 1.43.0 + detect-indent: 6.1.0 + magic-string: 0.25.7 + postcss: 8.3.11 + sorcery: 0.10.0 + strip-indent: 3.0.0 + svelte: 3.44.1 + typescript: 4.5.2 + dev: true + + /svelte/3.44.1: + resolution: {integrity: sha512-4DrCEJoBvdR689efHNSxIQn2pnFwB7E7j2yLEJtHE/P8hxwZWIphCtJ8are7bjl/iVMlcEf5uh5pJ68IwR09vQ==} + engines: {node: '>= 8'} + dev: true + + /svgo/2.8.0: + resolution: {integrity: sha512-+N/Q9kV1+F+UeWYoSiULYo4xYSDQlTgb+ayMobAXPwMnLvop7oxKMo9OzIrX5x3eS4L4f2UHhc9axXwY8DpChg==} + engines: {node: '>=10.13.0'} + hasBin: true + dependencies: + '@trysound/sax': 0.2.0 + commander: 7.2.0 + css-select: 4.1.3 + css-tree: 1.1.3 + csso: 4.2.0 + picocolors: 1.0.0 + stable: 0.1.8 + dev: true + + /table/6.7.3: + resolution: {integrity: sha512-5DkIxeA7XERBqMwJq0aHZOdMadBx4e6eDoFRuyT5VR82J0Ycg2DwM6GfA/EQAhJ+toRTaS1lIdSQCqgrmhPnlw==} + engines: {node: '>=10.0.0'} + dependencies: + ajv: 8.8.1 + lodash.truncate: 4.4.2 + slice-ansi: 4.0.0 + string-width: 4.2.3 + strip-ansi: 6.0.1 + dev: true + + /tailwindcss/2.2.19_0c54bdadaf9d9c9c6c134cb2c6c061a3: + resolution: {integrity: sha512-6Ui7JSVtXadtTUo2NtkBBacobzWiQYVjYW0ZnKaP9S1ZCKQ0w7KVNz+YSDI/j7O7KCMHbOkz94ZMQhbT9pOqjw==} + engines: {node: '>=12.13.0'} + hasBin: true + peerDependencies: + autoprefixer: ^10.0.2 + postcss: ^8.0.9 + dependencies: + arg: 5.0.1 + autoprefixer: 10.4.0_postcss@8.3.11 + bytes: 3.1.1 + chalk: 4.1.2 + chokidar: 3.5.2 + color: 4.0.1 + cosmiconfig: 7.0.1 + detective: 5.2.0 + didyoumean: 1.2.2 + dlv: 1.1.3 + fast-glob: 3.2.7 + fs-extra: 10.0.0 + glob-parent: 6.0.2 + html-tags: 3.1.0 + is-color-stop: 1.1.0 + is-glob: 4.0.3 + lodash: 4.17.21 + lodash.topath: 4.5.2 + modern-normalize: 1.1.0 + node-emoji: 1.11.0 + normalize-path: 3.0.0 + object-hash: 2.2.0 + postcss: 8.3.11 + postcss-js: 3.0.3 + postcss-load-config: 3.1.0 + postcss-nested: 5.0.6_postcss@8.3.11 + postcss-selector-parser: 6.0.6 + postcss-value-parser: 4.1.0 + pretty-hrtime: 1.0.3 + purgecss: 4.0.3 + quick-lru: 5.1.1 + reduce-css-calc: 2.1.8 + resolve: 1.20.0 + tmp: 0.2.1 + transitivePeerDependencies: + - ts-node + dev: true + + /text-table/0.2.0: + resolution: {integrity: sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=} + dev: true + + /timsort/0.3.0: + resolution: {integrity: sha1-QFQRqOfmM5/mTbmiNN4R3DHgK9Q=} + dev: true + + /tmp/0.2.1: + resolution: {integrity: sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==} + engines: {node: '>=8.17.0'} + dependencies: + rimraf: 3.0.2 + dev: true + + /to-regex-range/5.0.1: + resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} + engines: {node: '>=8.0'} + dependencies: + is-number: 7.0.0 + dev: true + + /tslib/1.14.1: + resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==} + dev: true + + /tslib/2.3.1: + resolution: {integrity: sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==} + dev: true + + /tsutils/3.21.0_typescript@4.5.2: + resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==} + 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' + dependencies: + tslib: 1.14.1 + typescript: 4.5.2 + dev: true + + /type-check/0.4.0: + resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} + engines: {node: '>= 0.8.0'} + dependencies: + prelude-ls: 1.2.1 + dev: true + + /type-fest/0.20.2: + resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==} + engines: {node: '>=10'} + dev: true + + /typescript/4.5.2: + resolution: {integrity: sha512-5BlMof9H1yGt0P8/WF+wPNw6GfctgGjXp5hkblpyT+8rkASSmkUKMXrxR0Xg8ThVCi/JnHQiKXeBaEwCeQwMFw==} + engines: {node: '>=4.2.0'} + hasBin: true + dev: true + + /universalify/2.0.0: + resolution: {integrity: sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==} + engines: {node: '>= 10.0.0'} + dev: true + + /uri-js/4.4.1: + resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} + dependencies: + punycode: 2.1.1 + dev: true + + /util-deprecate/1.0.2: + resolution: {integrity: sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=} + dev: true + + /v8-compile-cache/2.3.0: + resolution: {integrity: sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==} + dev: true + + /vite/2.6.14: + resolution: {integrity: sha512-2HA9xGyi+EhY2MXo0+A2dRsqsAG3eFNEVIo12olkWhOmc8LfiM+eMdrXf+Ruje9gdXgvSqjLI9freec1RUM5EA==} + engines: {node: '>=12.2.0'} + hasBin: true + peerDependencies: + less: '*' + sass: '*' + stylus: '*' + peerDependenciesMeta: + less: + optional: true + sass: + optional: true + stylus: + optional: true + dependencies: + esbuild: 0.13.14 + postcss: 8.3.11 + resolve: 1.20.0 + rollup: 2.60.0 + optionalDependencies: + fsevents: 2.3.2 + dev: true + + /which/2.0.2: + resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} + engines: {node: '>= 8'} + hasBin: true + dependencies: + isexe: 2.0.0 + dev: true + + /word-wrap/1.2.3: + resolution: {integrity: sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==} + engines: {node: '>=0.10.0'} + dev: true + + /wrappy/1.0.2: + resolution: {integrity: sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=} + dev: true + + /xtend/4.0.2: + resolution: {integrity: sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==} + engines: {node: '>=0.4'} + dev: true + + /yallist/4.0.0: + resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} + dev: true + + /yaml/1.10.2: + resolution: {integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==} + engines: {node: '>= 6'} + dev: true diff --git a/postcss.config.cjs b/postcss.config.cjs new file mode 100644 index 0000000..b5f822b --- /dev/null +++ b/postcss.config.cjs @@ -0,0 +1,19 @@ +const tailwindcss = require('tailwindcss'); +const autoprefixer = require('autoprefixer'); +const cssnano = require('cssnano'); + +const mode = process.env.NODE_ENV; +const dev = mode === 'development'; + +const config = { + plugins: [ + tailwindcss(), + autoprefixer(), + !dev && + cssnano({ + preset: 'default' + }) + ] +}; + +module.exports = config; \ No newline at end of file diff --git a/src/app.css b/src/app.css new file mode 100644 index 0000000..b5c61c9 --- /dev/null +++ b/src/app.css @@ -0,0 +1,3 @@ +@tailwind base; +@tailwind components; +@tailwind utilities; diff --git a/src/app.html b/src/app.html new file mode 100644 index 0000000..a99f28f --- /dev/null +++ b/src/app.html @@ -0,0 +1,15 @@ + + + + + + + %svelte.head% + + + + + +
%svelte.body%
+ + diff --git a/src/components/Footer.svelte b/src/components/Footer.svelte new file mode 100644 index 0000000..b483302 --- /dev/null +++ b/src/components/Footer.svelte @@ -0,0 +1,4 @@ + diff --git a/src/components/Search.svelte b/src/components/Search.svelte new file mode 100644 index 0000000..ed7a048 --- /dev/null +++ b/src/components/Search.svelte @@ -0,0 +1,70 @@ + +
+
+ +
+
+ diff --git a/src/components/Status.svelte b/src/components/Status.svelte new file mode 100644 index 0000000..4af44fe --- /dev/null +++ b/src/components/Status.svelte @@ -0,0 +1,29 @@ + +
+
+
+
    +
  • + Edge icon + Rendered on: { now.toLocaleString() } +
  • +
  • + Edge icon + Max age: { durationString } +
  • +
  • + Edge icon + Re-renders on : { expectedRerender.toLocaleString() } +
  • +
+
+
+
diff --git a/src/components/WorkersLogo.svelte b/src/components/WorkersLogo.svelte new file mode 100644 index 0000000..79cfd3b --- /dev/null +++ b/src/components/WorkersLogo.svelte @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/global.d.ts b/src/global.d.ts new file mode 100644 index 0000000..63908c6 --- /dev/null +++ b/src/global.d.ts @@ -0,0 +1 @@ +/// diff --git a/src/lib/countryCodes.json b/src/lib/countryCodes.json new file mode 100644 index 0000000..6ca429a --- /dev/null +++ b/src/lib/countryCodes.json @@ -0,0 +1,248 @@ +{ + "AF": "Afghanistan", + "AX": "Aland Islands", + "AL": "Albania", + "DZ": "Algeria", + "AS": "American Samoa", + "AD": "Andorra", + "AO": "Angola", + "AI": "Anguilla", + "AQ": "Antarctica", + "AG": "Antigua And Barbuda", + "AR": "Argentina", + "AM": "Armenia", + "AW": "Aruba", + "AU": "Australia", + "AT": "Austria", + "AZ": "Azerbaijan", + "BS": "Bahamas", + "BH": "Bahrain", + "BD": "Bangladesh", + "BB": "Barbados", + "BY": "Belarus", + "BE": "Belgium", + "BZ": "Belize", + "BJ": "Benin", + "BM": "Bermuda", + "BT": "Bhutan", + "BO": "Bolivia", + "BA": "Bosnia And Herzegovina", + "BW": "Botswana", + "BV": "Bouvet Island", + "BR": "Brazil", + "IO": "British Indian Ocean Territory", + "BN": "Brunei Darussalam", + "BG": "Bulgaria", + "BF": "Burkina Faso", + "BI": "Burundi", + "KH": "Cambodia", + "CM": "Cameroon", + "CA": "Canada", + "CV": "Cape Verde", + "KY": "Cayman Islands", + "CF": "Central African Republic", + "TD": "Chad", + "CL": "Chile", + "CN": "China", + "CX": "Christmas Island", + "CC": "Cocos (Keeling) Islands", + "CO": "Colombia", + "KM": "Comoros", + "CG": "Congo", + "CD": "Congo, Democratic Republic", + "CK": "Cook Islands", + "CR": "Costa Rica", + "CI": "Cote D\"Ivoire", + "HR": "Croatia", + "CU": "Cuba", + "CY": "Cyprus", + "CZ": "Czech Republic", + "DK": "Denmark", + "DJ": "Djibouti", + "DM": "Dominica", + "DO": "Dominican Republic", + "EC": "Ecuador", + "EG": "Egypt", + "SV": "El Salvador", + "GQ": "Equatorial Guinea", + "ER": "Eritrea", + "EE": "Estonia", + "ET": "Ethiopia", + "FK": "Falkland Islands (Malvinas)", + "FO": "Faroe Islands", + "FJ": "Fiji", + "FI": "Finland", + "FR": "France", + "GF": "French Guiana", + "PF": "French Polynesia", + "TF": "French Southern Territories", + "GA": "Gabon", + "GM": "Gambia", + "GE": "Georgia", + "DE": "Germany", + "GH": "Ghana", + "GI": "Gibraltar", + "GR": "Greece", + "GL": "Greenland", + "GD": "Grenada", + "GP": "Guadeloupe", + "GU": "Guam", + "GT": "Guatemala", + "GG": "Guernsey", + "GN": "Guinea", + "GW": "Guinea-Bissau", + "GY": "Guyana", + "HT": "Haiti", + "HM": "Heard Island & Mcdonald Islands", + "VA": "Holy See (Vatican City State)", + "HN": "Honduras", + "HK": "Hong Kong", + "HU": "Hungary", + "IS": "Iceland", + "IN": "India", + "ID": "Indonesia", + "IR": "Iran, Islamic Republic Of", + "IQ": "Iraq", + "IE": "Ireland", + "IM": "Isle Of Man", + "IL": "Israel", + "IT": "Italy", + "JM": "Jamaica", + "JP": "Japan", + "JE": "Jersey", + "JO": "Jordan", + "KZ": "Kazakhstan", + "KE": "Kenya", + "KI": "Kiribati", + "KR": "Korea", + "KP": "North Korea", + "KW": "Kuwait", + "KG": "Kyrgyzstan", + "LA": "Lao People\"s Democratic Republic", + "LV": "Latvia", + "LB": "Lebanon", + "LS": "Lesotho", + "LR": "Liberia", + "LY": "Libyan Arab Jamahiriya", + "LI": "Liechtenstein", + "LT": "Lithuania", + "LU": "Luxembourg", + "MO": "Macao", + "MK": "Macedonia", + "MG": "Madagascar", + "MW": "Malawi", + "MY": "Malaysia", + "MV": "Maldives", + "ML": "Mali", + "MT": "Malta", + "MH": "Marshall Islands", + "MQ": "Martinique", + "MR": "Mauritania", + "MU": "Mauritius", + "YT": "Mayotte", + "MX": "Mexico", + "FM": "Micronesia, Federated States Of", + "MD": "Moldova", + "MC": "Monaco", + "MN": "Mongolia", + "ME": "Montenegro", + "MS": "Montserrat", + "MA": "Morocco", + "MZ": "Mozambique", + "MM": "Myanmar", + "NA": "Namibia", + "NR": "Nauru", + "NP": "Nepal", + "NL": "Netherlands", + "AN": "Netherlands Antilles", + "NC": "New Caledonia", + "NZ": "New Zealand", + "NI": "Nicaragua", + "NE": "Niger", + "NG": "Nigeria", + "NU": "Niue", + "NF": "Norfolk Island", + "MP": "Northern Mariana Islands", + "NO": "Norway", + "OM": "Oman", + "PK": "Pakistan", + "PW": "Palau", + "PS": "Palestinian Territory, Occupied", + "PA": "Panama", + "PG": "Papua New Guinea", + "PY": "Paraguay", + "PE": "Peru", + "PH": "Philippines", + "PN": "Pitcairn", + "PL": "Poland", + "PT": "Portugal", + "PR": "Puerto Rico", + "QA": "Qatar", + "RE": "Reunion", + "RO": "Romania", + "RU": "Russian Federation", + "RW": "Rwanda", + "BL": "Saint Barthelemy", + "SH": "Saint Helena", + "KN": "Saint Kitts And Nevis", + "LC": "Saint Lucia", + "MF": "Saint Martin", + "PM": "Saint Pierre And Miquelon", + "VC": "Saint Vincent And Grenadines", + "WS": "Samoa", + "SM": "San Marino", + "ST": "Sao Tome And Principe", + "SA": "Saudi Arabia", + "SN": "Senegal", + "RS": "Serbia", + "SC": "Seychelles", + "SL": "Sierra Leone", + "SG": "Singapore", + "SK": "Slovakia", + "SI": "Slovenia", + "SB": "Solomon Islands", + "SO": "Somalia", + "ZA": "South Africa", + "GS": "South Georgia And Sandwich Isl.", + "ES": "Spain", + "LK": "Sri Lanka", + "SD": "Sudan", + "SR": "Suriname", + "SJ": "Svalbard And Jan Mayen", + "SZ": "Swaziland", + "SE": "Sweden", + "CH": "Switzerland", + "SY": "Syrian Arab Republic", + "TW": "Taiwan", + "TJ": "Tajikistan", + "TZ": "Tanzania", + "TH": "Thailand", + "TL": "Timor-Leste", + "TG": "Togo", + "TK": "Tokelau", + "TO": "Tonga", + "TT": "Trinidad And Tobago", + "TN": "Tunisia", + "TR": "Turkey", + "TM": "Turkmenistan", + "TC": "Turks And Caicos Islands", + "TV": "Tuvalu", + "UG": "Uganda", + "UA": "Ukraine", + "AE": "United Arab Emirates", + "GB": "United Kingdom", + "US": "United States", + "UM": "United States Outlying Islands", + "UY": "Uruguay", + "UZ": "Uzbekistan", + "VU": "Vanuatu", + "VE": "Venezuela", + "VN": "Vietnam", + "VG": "Virgin Islands, British", + "VI": "Virgin Islands, U.S.", + "WF": "Wallis And Futuna", + "EH": "Western Sahara", + "YE": "Yemen", + "ZM": "Zambia", + "ZW": "Zimbabwe" +} \ No newline at end of file diff --git a/src/routes/__layout.svelte b/src/routes/__layout.svelte new file mode 100644 index 0000000..8f3b534 --- /dev/null +++ b/src/routes/__layout.svelte @@ -0,0 +1,11 @@ + + +
+
+ +
+
+
diff --git a/src/routes/countries/[countryCode].svelte b/src/routes/countries/[countryCode].svelte new file mode 100644 index 0000000..9eb3384 --- /dev/null +++ b/src/routes/countries/[countryCode].svelte @@ -0,0 +1,111 @@ + + + + +
+
+ Back +
+

COVID19 stats for {countryName}

+

As of { date }

+ +
+

{ date }

+
+
+ Corona virus icon +
+

+ { formatNumber(data.confirmed_daily)} +

+

today's cases

+
+
+
+ Death icon +
+

{data.deaths_daily}

+

today's deaths

+
+
+
+
+ +
+

Total

+
+
+ Corona virus icon +
+

+ { formatNumber(data.confirmed)} +

+

total cases

+
+
+
+ Death icon +
+

+ { formatNumber(data.deaths)} +

+

total deaths

+
+
+
+
+ +
diff --git a/src/routes/index.svelte b/src/routes/index.svelte new file mode 100644 index 0000000..87c9ef1 --- /dev/null +++ b/src/routes/index.svelte @@ -0,0 +1,51 @@ + + + + +
+
+

+ Incremental Static Regeneration + on +

+
+
+ SvelteKit logo +
+
+ + +
+
+ +
+
+
+ +
+
+

This is a small Covid19 Tracker demo that implements Incremental Static Regeneration on SvelteKit and Cloudflare Workers.

+

For an in-depth explanation, see my blog post.

+
+
+
\ No newline at end of file diff --git a/static/corona.png b/static/corona.png new file mode 100644 index 0000000000000000000000000000000000000000..fda6d0be3a58d1a478ca839d121160bfeb66082c GIT binary patch literal 7295 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 Z{y%dS&b2I-e}4b~002ovPDHLkV1hIB(!>A& literal 0 HcmV?d00001 diff --git a/static/death.png b/static/death.png new file mode 100644 index 0000000000000000000000000000000000000000..78f2e65654b7e98ff30dd99fa56be6b9dadca8a1 GIT binary patch literal 4636 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 Nb!Ba(8U>q({{icE(Xs#l literal 0 HcmV?d00001 diff --git a/static/duration.png b/static/duration.png new file mode 100644 index 0000000000000000000000000000000000000000..ac85ce8e37177108c9ecee3e487cf871c4f5493c GIT binary patch literal 19240 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 literal 0 HcmV?d00001 diff --git a/static/favicon.png b/static/favicon.png new file mode 100644 index 0000000000000000000000000000000000000000..825b9e65af7c104cfb07089bb28659393b4f2097 GIT binary patch literal 1571 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 QsRTh+we+#CH5_CAA3OhWTL1t6 literal 0 HcmV?d00001 diff --git a/static/search.png b/static/search.png new file mode 100644 index 0000000000000000000000000000000000000000..e2faab910a5239b430a3aa57d6f15c02a5a951e6 GIT binary patch literal 13862 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