├── src ├── global.d.ts ├── routes │ ├── __error.svelte │ ├── __layout.svelte │ ├── game.svelte │ └── index.svelte ├── components │ ├── CheckoutOtherProjects.svelte │ ├── PriceMovementBadge.svelte │ ├── StockGraphView.svelte │ ├── GameOverView.svelte │ ├── PlayerHudView.svelte │ ├── StockActionBarView.svelte │ └── StockChart.svelte ├── logic │ ├── utils.ts │ └── game.ts └── app.html ├── netlify.toml ├── static ├── favicon.ico └── Paper-trader-cover.png ├── yalc.lock ├── .gitignore ├── postcss.config.cjs ├── svelte.config.js ├── package.json ├── tsconfig.json ├── README.md └── pnpm-lock.yaml /src/global.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | -------------------------------------------------------------------------------- /netlify.toml: -------------------------------------------------------------------------------- 1 | [build] 2 | command = "npm run build" 3 | publish = "build/" -------------------------------------------------------------------------------- /static/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/davjhan/paper-trader-game/HEAD/static/favicon.ico -------------------------------------------------------------------------------- /static/Paper-trader-cover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/davjhan/paper-trader-game/HEAD/static/Paper-trader-cover.png -------------------------------------------------------------------------------- /yalc.lock: -------------------------------------------------------------------------------- 1 | { 2 | "version": "v1", 3 | "packages": { 4 | "davjhan-core": { 5 | "signature": "bc7d87d7de7c92f01e485c5558a5f034", 6 | "file": true 7 | } 8 | } 9 | } -------------------------------------------------------------------------------- /src/routes/__error.svelte: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | /.svelte-kit 3 | /build 4 | /functions 5 | .idea/* 6 | .yalc/* 7 | # Local Netlify folder 8 | .netlify 9 | static/questions.json 10 | .DS_Store 11 | yalc.lock 12 | .svelte-kit 13 | .pnpm-debug.log -------------------------------------------------------------------------------- /src/components/CheckoutOtherProjects.svelte: -------------------------------------------------------------------------------- 1 | 5 | Check out my other projects at 6 | davjhan.com -------------------------------------------------------------------------------- /src/routes/__layout.svelte: -------------------------------------------------------------------------------- 1 | 5 | 10 | 16 |
17 | 18 | 19 |
-------------------------------------------------------------------------------- /postcss.config.cjs: -------------------------------------------------------------------------------- 1 | const tailwindcss = require('tailwindcss') 2 | const autoprefixer = require('autoprefixer') 3 | const cssnano = require('cssnano') 4 | 5 | const mode = process.env.NODE_ENV 6 | const dev = mode === 'development' 7 | 8 | module.exports = { 9 | plugins: [ 10 | // Some plugins, like postcss-nested, need to run before Tailwind 11 | tailwindcss({ 12 | config: 'node_modules/davjhan-core/tailwind.config.cjs' 13 | }), 14 | // But others, like autoprefixer, need to run after 15 | autoprefixer, 16 | !dev && cssnano({ 17 | preset: 'default', 18 | }), 19 | ], 20 | } -------------------------------------------------------------------------------- /src/logic/utils.ts: -------------------------------------------------------------------------------- 1 | import { cubicOut } from 'svelte/easing' 2 | export function flash(node, { 3 | delay = 0, 4 | duration = 400, 5 | color = '#FEF3C7' 6 | }) { 7 | return { 8 | delay, 9 | duration, 10 | css: t => `background-color: ${hexToRGB(color,1-t)}` // fef3c7 11 | }; 12 | } 13 | function hexToRGB(hex, alpha) { 14 | var r = parseInt(hex.slice(1, 3), 16), 15 | g = parseInt(hex.slice(3, 5), 16), 16 | b = parseInt(hex.slice(5, 7), 16); 17 | 18 | if (alpha) { 19 | return "rgba(" + r + ", " + g + ", " + b + ", " + alpha + ")"; 20 | } else { 21 | return "rgb(" + r + ", " + g + ", " + b + ")"; 22 | } 23 | } 24 | export const numberEasingProps = { duration: 300, easing: cubicOut } -------------------------------------------------------------------------------- /src/components/PriceMovementBadge.svelte: -------------------------------------------------------------------------------- 1 | 9 |
10 | {#if delta === 0} 11 | 12 | ({delta.toFixed(2)}%) 13 | {:else if delta >= 0} 14 | 15 | ({delta.toFixed(2)}%) 16 | {:else} 17 | 18 | ({delta.toFixed(2)}%) 19 | {/if} 20 |
-------------------------------------------------------------------------------- /src/app.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Paper Trader Game 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | %svelte.head% 16 | 17 | 18 |
%svelte.body%
19 | 20 | -------------------------------------------------------------------------------- /svelte.config.js: -------------------------------------------------------------------------------- 1 | import adapter from '@sveltejs/adapter-static' 2 | import path from 'path' 3 | import preprocess from 'svelte-preprocess' 4 | 5 | /** @type {import('@sveltejs/kit').Config} */ 6 | const config = { 7 | // Consult https://github.com/sveltejs/svelte-preprocess 8 | // for more information about preprocessors 9 | preprocess: [ 10 | preprocess({ 11 | postcss: true 12 | }), 13 | ], 14 | kit: { 15 | adapter: adapter({ 16 | fallback: '404.html' 17 | }), 18 | vite: { 19 | optimizeDeps: { 20 | exclude: ['davjhan-core'] 21 | }, 22 | resolve: { 23 | alias: { 24 | $static: path.resolve('/static'), 25 | $views: path.resolve('src/lib/views') 26 | } 27 | }, 28 | server: { 29 | host: '0.0.0.0', 30 | watch:{ 31 | followSymlinks:true 32 | } 33 | }, 34 | 35 | }, 36 | }, 37 | } 38 | 39 | export default config -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "paper-trader", 3 | "version": "0.0.1", 4 | "scripts": { 5 | "init": "yalc link davjhan-core", 6 | "dev": "TAILWIND_MODE=watch svelte-kit dev", 7 | "dev:host": "TAILWIND_MODE=watch svelte-kit dev --host", 8 | "build": "svelte-kit build", 9 | "preview": "svelte-kit preview", 10 | "deploy:dry": "npm run build && netlify deploy", 11 | "deploy": "npm run build && netlify deploy --prod" 12 | }, 13 | "devDependencies": { 14 | "@sveltejs/adapter-netlify": "^1.0.0-next.14", 15 | "@sveltejs/adapter-static": "^1.0.0-next.11", 16 | "@sveltejs/kit": "next", 17 | "autoprefixer": "^10.3.1", 18 | "carbon-icons-svelte": "^10.45.1", 19 | "cssnano": "^5.0.6", 20 | "postcss": "^8.3.5", 21 | "postcss-load-config": "^3.1.0", 22 | "svelte": "^3.38.3", 23 | "svelte-preprocess": "^4.7.4", 24 | "tailwindcss": "^2.2.4", 25 | "tslib": "^2.3.0", 26 | "typescript": "^4.3.5" 27 | }, 28 | "type": "module", 29 | "dependencies": { 30 | "@svgdotjs/svg.js": "^3.1.1", 31 | "chart.js": "^3.4.1", 32 | "chartjs-adapter-luxon": "^1.0.0", 33 | "chartjs-plugin-streaming": "^2.0.0", 34 | "davjhan-core": "file:.yalc/davjhan-core" 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "moduleResolution": "node", 4 | "module": "es2020", 5 | "lib": [ 6 | "es2020" 7 | ], 8 | "types": ["svelte"], 9 | "target": "es2020", 10 | /** 11 | svelte-preprocess cannot figure out whether you have a value or a type, so tell TypeScript 12 | to enforce using \`import type\` instead of \`import\` for Types. 13 | */ 14 | "importsNotUsedAsValues": "error", 15 | "isolatedModules": true, 16 | "resolveJsonModule": true, 17 | /** 18 | To have warnings/errors of the Svelte compiler at the correct position, 19 | enable source maps by default. 20 | */ 21 | "sourceMap": true, 22 | "esModuleInterop": true, 23 | "skipLibCheck": true, 24 | "forceConsistentCasingInFileNames": true, 25 | "baseUrl": ".", 26 | "allowJs": true, 27 | "checkJs": true, 28 | "paths": { 29 | "$lib/*": [ 30 | "src/lib/*" 31 | ], 32 | "$views/*": [ 33 | "src/lib/views/*" 34 | ], 35 | "$static/*": [ 36 | "static" 37 | ] 38 | } 39 | }, 40 | "include": [ 41 | "src/**/*.d.ts", 42 | "src/**/*.js", 43 | "src/**/*.ts", 44 | "src/**/*.svelte" 45 | ] 46 | } -------------------------------------------------------------------------------- /src/components/StockGraphView.svelte: -------------------------------------------------------------------------------- 1 | 20 |
22 | $PAPER 23 |
24 | ${formatDollars($animatedTickerPrice)} 25 | 26 |
27 | 28 | 29 |
-------------------------------------------------------------------------------- /src/components/GameOverView.svelte: -------------------------------------------------------------------------------- 1 | 11 | 12 | 13 | 14 |
15 |

Game Over

16 |

${formatDollars(score)}

17 | 18 | 19 |
20 | Source Code (Github) 21 | 22 | 23 | Star 25 |
26 |
-------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Paper Trader Game 2 | 3 | ![Banner](static/Paper-trader-cover.png?raw=true) 4 | 5 | Made by : **David Han @davjhan** (https://davjhan.com/) 6 | 7 | ### [Play the game on your browser](https://paper-trader.davjhan.com/) 8 | (https://paper-trader.davjhan.com/) 9 | ## Built with 10 | - [Svelte Kit](https://kit.svelte.dev/) 11 | - [Tailwind CSS (JIT)](https://tailwindcss.com/) (CSS framework) 12 | - [Netlify](https://www.netlify.com/) (Hosting) 13 | - [Chart.js](https://www.chartjs.org/docs/latest/) (Charting library) 14 | - [Plausible analytics](https://plausible.io/) (cookie-less Analytics) 15 | 16 | Generates a static site that is hosted on Netlify. 17 | 18 | ## Get Started 19 | 20 | ⚠️ This repo will not build out of the box. It has a dependency on [davjhan-core](https://github.com/davjhan/davjhan-core) 21 | which is not published on npm. If you want to build this project, follow the steps in that package's README. 22 | 23 | `davjhan-core` includes common tailwind styles, css, and components (e.g. Navbar) that will be reused between david 24 | games. I use `yalc link davjhan-core` on my local machine so that it builds. 25 | 26 | ### Run the dev server 27 | ```bash 28 | npm run dev 29 | ``` 30 | 31 | ### Build and preview 32 | ```bash 33 | npm run build 34 | ``` 35 | ```bash 36 | npm run preview 37 | ``` 38 | ### Deploy to Netlify 39 | ```bash 40 | npm run deploy 41 | ``` -------------------------------------------------------------------------------- /src/routes/game.svelte: -------------------------------------------------------------------------------- 1 | 4 | 21 | 22 |
23 |
24 | 25 |
26 |
27 | {#if isGameOver} 28 | 30 | {/if} 31 |
32 | 33 | 34 |
35 |
-------------------------------------------------------------------------------- /src/components/PlayerHudView.svelte: -------------------------------------------------------------------------------- 1 | 31 |
32 |
33 | Account Balance 34 | Day {$game.tick + 1} / {$game.priceData.length} 35 | 36 |
37 | {#key playerAccountBalance} 38 |
39 | ${formatDollars($animatedPlayerCash)} 40 | 41 |
42 | {/key} 43 |
-------------------------------------------------------------------------------- /src/routes/index.svelte: -------------------------------------------------------------------------------- 1 | 6 | 16 | 17 | 18 | 19 | 24 |
25 |
26 | Source Code (Github) 27 | 28 | 29 | Star 31 |
32 |

Paper Trading Game

33 |

(Duration: 45s)

34 | 35 | 36 | How to play 37 |
    38 |
  1. 39 | You are given $100 dollars and a fake, simulated 40 | stock. 41 |
  2. 42 |
  3. 43 | Make as much money as you can in 45 seconds. 44 |
  4. 45 |
46 | Example: 47 |
48 | 49 |
50 | 51 |
-------------------------------------------------------------------------------- /src/components/StockActionBarView.svelte: -------------------------------------------------------------------------------- 1 | 16 |
17 |
18 | Shares owned 19 | {#key $game.player.shares } 20 | {$game.player.shares.toFixed(2)} 21 | {/key} 22 |
23 |
24 | Cost basis 25 | {#key $game.player.costBasis } 26 | 27 | {#if $game.player.costBasis} 28 | ${formatDollars($game.player.costBasis)} 29 | {:else} 30 | -- 31 | {/if} 32 | 33 | 34 | {/key} 35 | {#if $game.player.costBasis} 36 | 37 | {/if} 38 |
39 |
40 | {#if $game.player.shares === 0} 41 | 47 | {:else} 48 | 55 | {/if} 56 |
57 | 58 | 59 |
-------------------------------------------------------------------------------- /src/components/StockChart.svelte: -------------------------------------------------------------------------------- 1 | 111 | -------------------------------------------------------------------------------- /src/logic/game.ts: -------------------------------------------------------------------------------- 1 | export module PaperTradingGame { 2 | export const tickLength = 1500 3 | 4 | export function newGame( 5 | playerName: string, 6 | onUpdate: (game: BeanCoinGameState) => void = undefined 7 | ): BeanCoinGameState { 8 | return { 9 | phase: 'lobby', 10 | player: newPlayer(playerName), 11 | priceData: generatePriceData(), 12 | tick: 0, 13 | onUpdate 14 | } 15 | } 16 | 17 | /** 18 | * @return NodeJS.Timeout the interval ID to call clearInterval on. 19 | */ 20 | export function startGame(game: BeanCoinGameState): NodeJS.Timeout { 21 | if (game.phase === 'lobby') { 22 | game.phase = 'playing' 23 | game.onUpdate?.(game) 24 | return setInterval(() => updateGame(game), tickLength) 25 | } 26 | return undefined 27 | } 28 | 29 | export function buyIn(game: BeanCoinGameState) { 30 | if (game.phase === 'playing') { 31 | game.player.costBasis = game.priceData[game.tick] 32 | game.player.shares = game.player.cash / game.priceData[game.tick] 33 | game.player.cash = 0 34 | game.onUpdate?.(game) 35 | } 36 | } 37 | 38 | export function sellAll(game: BeanCoinGameState) { 39 | if (game.phase === 'playing') { 40 | game.player.cash = game.player.shares * game.priceData[game.tick] 41 | game.player.shares = 0 42 | game.player.costBasis = 0 43 | game.onUpdate?.(game) 44 | } 45 | } 46 | 47 | function updateGame(game: BeanCoinGameState) { 48 | if (game.phase === 'playing') { 49 | if (game.tick < game.priceData.length - 1) { 50 | game.tick++ 51 | game.onUpdate?.(game) 52 | } else { 53 | game.phase = 'gameOver' 54 | game.onUpdate?.(game) 55 | } 56 | } 57 | } 58 | 59 | export function newPlayer(name: string): PlayerState { 60 | return { 61 | name, 62 | cash: 100, 63 | shares: 0, 64 | costBasis: 0 65 | } 66 | } 67 | 68 | const maxRise = 0.07 69 | const bullProb = 0.6 70 | const marketSentimentVals = [-7, -1, 1,3] 71 | const marketSentimentProbs = [0.1, 0.2, 0.8, 1] 72 | const numTurns = 30 73 | /** 74 | * Generates price data by calculating a 0%..7% movement magnitude multiplied by the "market sentiment", 75 | * which is either super bearish, bearish, or bullish. The probabilities of the sentiment can also be configured 76 | * marketSentimentProbs. 77 | */ 78 | function generatePriceData(): number[] { 79 | let lastPrice = 10 80 | 81 | let sentiment = marketSentimentVals[2] 82 | let isBull = false 83 | return Array.from({ length: numTurns }, (x, i) => { 84 | if (i == 0) return lastPrice 85 | 86 | const movementPercent = (Math.random() * maxRise) * sentiment 87 | lastPrice += lastPrice * movementPercent 88 | lastPrice = Math.max(0, lastPrice) 89 | 90 | /* Roll a dice to change isBull */ 91 | const diceRoll = Math.random() 92 | sentiment = marketSentimentVals[marketSentimentProbs.findIndex(it => diceRoll < it)] 93 | isBull = Math.random() < bullProb 94 | 95 | return lastPrice 96 | }) 97 | } 98 | } 99 | export module PaperTradingUtils { 100 | export function playerAccountValue(player: PlayerState, pricePerShare: number): number { 101 | return player.cash + player.shares * pricePerShare 102 | } 103 | 104 | export function priceMovementPercentage(game: { tick: number, priceData: number[] }): number { 105 | if (game.tick === 0) return 0 106 | return percentChange(game.priceData[game.tick - 1], game.priceData[game.tick]) 107 | } 108 | 109 | export function percentChange(before: number, after: number): number { 110 | return (after - before) / before * 100 111 | } 112 | } 113 | 114 | export interface BeanCoinGameState { 115 | phase: 'lobby' | 'playing' | 'gameOver' 116 | player: PlayerState 117 | priceData: number[] 118 | tick: number 119 | onUpdate?: (game: BeanCoinGameState) => void 120 | } 121 | 122 | export interface PlayerState { 123 | name: string 124 | cash: number 125 | shares: number 126 | costBasis: number 127 | } -------------------------------------------------------------------------------- /pnpm-lock.yaml: -------------------------------------------------------------------------------- 1 | lockfileVersion: 5.3 2 | 3 | specifiers: 4 | '@sveltejs/adapter-netlify': ^1.0.0-next.14 5 | '@sveltejs/adapter-static': ^1.0.0-next.11 6 | '@sveltejs/kit': next 7 | '@svgdotjs/svg.js': ^3.1.1 8 | autoprefixer: ^10.3.1 9 | chart.js: ^3.4.1 10 | chartjs-adapter-luxon: ^1.0.0 11 | chartjs-plugin-streaming: ^2.0.0 12 | cssnano: ^5.0.6 13 | davjhan-core: file:.yalc/davjhan-core 14 | postcss: ^8.3.5 15 | postcss-load-config: ^3.1.0 16 | svelte: ^3.38.3 17 | svelte-preprocess: ^4.7.4 18 | tailwindcss: ^2.2.4 19 | tslib: ^2.3.0 20 | typescript: ^4.3.5 21 | 22 | dependencies: 23 | '@svgdotjs/svg.js': 3.1.2 24 | chart.js: 3.7.1 25 | chartjs-adapter-luxon: 1.1.0_chart.js@3.7.1 26 | chartjs-plugin-streaming: 2.0.0_chart.js@3.7.1 27 | davjhan-core: link:.yalc/davjhan-core 28 | 29 | devDependencies: 30 | '@sveltejs/adapter-netlify': 1.0.0-next.51 31 | '@sveltejs/adapter-static': 1.0.0-next.29 32 | '@sveltejs/kit': 1.0.0-next.301_svelte@3.46.4 33 | autoprefixer: 10.4.4_postcss@8.4.12 34 | cssnano: 5.1.4_postcss@8.4.12 35 | postcss: 8.4.12 36 | postcss-load-config: 3.1.3 37 | svelte: 3.46.4 38 | svelte-preprocess: 4.10.4_d61f7298692c4dce2f25e1ef74e972be 39 | tailwindcss: 2.2.19_081650f2f4dba35b17265937ab2a2ec0 40 | tslib: 2.3.1 41 | typescript: 4.6.2 42 | 43 | packages: 44 | 45 | /@babel/code-frame/7.16.7: 46 | resolution: { integrity: sha512-iAXqUn8IIeBTNd72xsFlgaXHkMBMt6y4HJp1tIaK465CWLT/fG1aqB7ykr95gHHmlBdGbFeWWfyB4NJJ0nmeIg== } 47 | engines: { node: '>=6.9.0' } 48 | dependencies: 49 | '@babel/highlight': 7.16.10 50 | dev: true 51 | 52 | /@babel/helper-validator-identifier/7.16.7: 53 | resolution: { integrity: sha512-hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw== } 54 | engines: { node: '>=6.9.0' } 55 | dev: true 56 | 57 | /@babel/highlight/7.16.10: 58 | resolution: { integrity: sha512-5FnTQLSLswEj6IkgVw5KusNUUFY9ZGqe/TRFnP/BKYHYgfh7tc+C7mwiy95/yNP7Dh9x580Vv8r7u7ZfTBFxdw== } 59 | engines: { node: '>=6.9.0' } 60 | dependencies: 61 | '@babel/helper-validator-identifier': 7.16.7 62 | chalk: 2.4.2 63 | js-tokens: 4.0.0 64 | dev: true 65 | 66 | /@iarna/toml/2.2.5: 67 | resolution: { integrity: sha512-trnsAYxU3xnS1gPHPyU961coFyLkh4gAD/0zQ5mymY4yOZ+CYvsPqUbOFSw0aDM4y0tV7tiFxL/1XfXPNC6IPg== } 68 | dev: true 69 | 70 | /@nodelib/fs.scandir/2.1.5: 71 | resolution: { integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g== } 72 | engines: { node: '>= 8' } 73 | dependencies: 74 | '@nodelib/fs.stat': 2.0.5 75 | run-parallel: 1.2.0 76 | dev: true 77 | 78 | /@nodelib/fs.stat/2.0.5: 79 | resolution: { integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A== } 80 | engines: { node: '>= 8' } 81 | dev: true 82 | 83 | /@nodelib/fs.walk/1.2.8: 84 | resolution: { integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg== } 85 | engines: { node: '>= 8' } 86 | dependencies: 87 | '@nodelib/fs.scandir': 2.1.5 88 | fastq: 1.13.0 89 | dev: true 90 | 91 | /@rollup/pluginutils/4.2.0: 92 | resolution: { integrity: sha512-2WUyJNRkyH5p487pGnn4tWAsxhEFKN/pT8CMgHshd5H+IXkOnKvKZwsz5ZWz+YCXkleZRAU5kwbfgF8CPfDRqA== } 93 | engines: { node: '>= 8.0.0' } 94 | dependencies: 95 | estree-walker: 2.0.2 96 | picomatch: 2.3.1 97 | dev: true 98 | 99 | /@sveltejs/adapter-netlify/1.0.0-next.51: 100 | resolution: { integrity: sha512-P7/cW/0z8zd8J6DOI2yxKZG0+HRMMuzfOf0yzFXX0vRwBePhKlZ/H4qhTOo2NrCmj3Len545o+ugj5gyMXl1+g== } 101 | dependencies: 102 | '@iarna/toml': 2.2.5 103 | esbuild: 0.14.27 104 | tiny-glob: 0.2.9 105 | dev: true 106 | 107 | /@sveltejs/adapter-static/1.0.0-next.29: 108 | resolution: { integrity: sha512-0hjGnfT3BRyoHnzJ2w0/xL+xICRpKneDTm45ZzggiRrc0r71WJfF6toGeg8N4QUQnj8EJ3Itm453gsS1kt7VUQ== } 109 | dependencies: 110 | tiny-glob: 0.2.9 111 | dev: true 112 | 113 | /@sveltejs/kit/1.0.0-next.301_svelte@3.46.4: 114 | resolution: { integrity: sha512-F/XP1VEu+fpvgY04JekNxAFupccNMKOyXtbox0LwNJvBulL15/Tzy6tf4g+9t2Jy7mprwI3h0ZC9G/nVujRFnQ== } 115 | engines: { node: '>=14.13' } 116 | hasBin: true 117 | peerDependencies: 118 | svelte: ^3.44.0 119 | dependencies: 120 | '@sveltejs/vite-plugin-svelte': 1.0.0-next.40_svelte@3.46.4+vite@2.8.6 121 | sade: 1.8.1 122 | svelte: 3.46.4 123 | vite: 2.8.6 124 | transitivePeerDependencies: 125 | - diff-match-patch 126 | - less 127 | - sass 128 | - stylus 129 | - supports-color 130 | dev: true 131 | 132 | /@sveltejs/vite-plugin-svelte/1.0.0-next.40_svelte@3.46.4+vite@2.8.6: 133 | resolution: { integrity: sha512-DtXF01fYGEJkbC7GntU/7jaq9M1SwyyNCkbDA+cfQSXRpm3H7zbu0M80wSQBSpntdd+hgSdxKCxv4GgX6/zI6w== } 134 | engines: { node: ^14.13.1 || >= 16 } 135 | peerDependencies: 136 | diff-match-patch: ^1.0.5 137 | svelte: ^3.44.0 138 | vite: ^2.7.0 139 | peerDependenciesMeta: 140 | diff-match-patch: 141 | optional: true 142 | dependencies: 143 | '@rollup/pluginutils': 4.2.0 144 | debug: 4.3.4 145 | kleur: 4.1.4 146 | magic-string: 0.26.1 147 | svelte: 3.46.4 148 | svelte-hmr: 0.14.11_svelte@3.46.4 149 | vite: 2.8.6 150 | transitivePeerDependencies: 151 | - supports-color 152 | dev: true 153 | 154 | /@svgdotjs/svg.js/3.1.2: 155 | resolution: { integrity: sha512-0ZCWTiuRjCXT2SUoVDiu+8DLuRQlkxZbO680Y2QkV7jNsULzJajrx6A3MxA/IBQg6UGV5csgPZ8w7U57hZSK+A== } 156 | dev: false 157 | 158 | /@trysound/sax/0.2.0: 159 | resolution: { integrity: sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA== } 160 | engines: { node: '>=10.13.0' } 161 | dev: true 162 | 163 | /@types/node/17.0.21: 164 | resolution: { integrity: sha512-DBZCJbhII3r90XbQxI8Y9IjjiiOGlZ0Hr32omXIZvwwZ7p4DMMXGrKXVyPfuoBOri9XNtL0UK69jYIBIsRX3QQ== } 165 | dev: true 166 | 167 | /@types/parse-json/4.0.0: 168 | resolution: { integrity: sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA== } 169 | dev: true 170 | 171 | /@types/pug/2.0.6: 172 | resolution: { integrity: sha512-SnHmG9wN1UVmagJOnyo/qkk0Z7gejYxOYYmaAwr5u2yFYfsupN3sg10kyzN8Hep/2zbHxCnsumxOoRIRMBwKCg== } 173 | dev: true 174 | 175 | /@types/sass/1.43.1: 176 | resolution: { integrity: sha512-BPdoIt1lfJ6B7rw35ncdwBZrAssjcwzI5LByIrYs+tpXlj/CAkuVdRsgZDdP4lq5EjyWzwxZCqAoFyHKFwp32g== } 177 | dependencies: 178 | '@types/node': 17.0.21 179 | dev: true 180 | 181 | /acorn-node/1.8.2: 182 | resolution: { integrity: sha512-8mt+fslDufLYntIoPAaIMUe/lrbrehIiwmR3t2k9LljIzoigEPF27eLk2hy8zSGzmR/ogr7zbRKINMo1u0yh5A== } 183 | dependencies: 184 | acorn: 7.4.1 185 | acorn-walk: 7.2.0 186 | xtend: 4.0.2 187 | dev: true 188 | 189 | /acorn-walk/7.2.0: 190 | resolution: { integrity: sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA== } 191 | engines: { node: '>=0.4.0' } 192 | dev: true 193 | 194 | /acorn/7.4.1: 195 | resolution: { integrity: sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== } 196 | engines: { node: '>=0.4.0' } 197 | hasBin: true 198 | dev: true 199 | 200 | /ansi-styles/3.2.1: 201 | resolution: { integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== } 202 | engines: { node: '>=4' } 203 | dependencies: 204 | color-convert: 1.9.3 205 | dev: true 206 | 207 | /ansi-styles/4.3.0: 208 | resolution: { integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== } 209 | engines: { node: '>=8' } 210 | dependencies: 211 | color-convert: 2.0.1 212 | dev: true 213 | 214 | /anymatch/3.1.2: 215 | resolution: { integrity: sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg== } 216 | engines: { node: '>= 8' } 217 | dependencies: 218 | normalize-path: 3.0.0 219 | picomatch: 2.3.1 220 | dev: true 221 | 222 | /arg/5.0.1: 223 | resolution: { integrity: sha512-e0hDa9H2Z9AwFkk2qDlwhoMYE4eToKarchkQHovNdLTCYMHZHeRjI71crOh+dio4K6u1IcwubQqo79Ga4CyAQA== } 224 | dev: true 225 | 226 | /autoprefixer/10.4.4_postcss@8.4.12: 227 | resolution: { integrity: sha512-Tm8JxsB286VweiZ5F0anmbyGiNI3v3wGv3mz9W+cxEDYB/6jbnj6GM9H9mK3wIL8ftgl+C07Lcwb8PG5PCCPzA== } 228 | engines: { node: ^10 || ^12 || >=14 } 229 | hasBin: true 230 | peerDependencies: 231 | postcss: ^8.1.0 232 | dependencies: 233 | browserslist: 4.20.2 234 | caniuse-lite: 1.0.30001319 235 | fraction.js: 4.2.0 236 | normalize-range: 0.1.2 237 | picocolors: 1.0.0 238 | postcss: 8.4.12 239 | postcss-value-parser: 4.2.0 240 | dev: true 241 | 242 | /balanced-match/1.0.2: 243 | resolution: { integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== } 244 | dev: true 245 | 246 | /binary-extensions/2.2.0: 247 | resolution: { integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA== } 248 | engines: { node: '>=8' } 249 | dev: true 250 | 251 | /boolbase/1.0.0: 252 | resolution: { integrity: sha1-aN/1++YMUes3cl6p4+0xDcwed24= } 253 | dev: true 254 | 255 | /brace-expansion/1.1.11: 256 | resolution: { integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== } 257 | dependencies: 258 | balanced-match: 1.0.2 259 | concat-map: 0.0.1 260 | dev: true 261 | 262 | /braces/3.0.2: 263 | resolution: { integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== } 264 | engines: { node: '>=8' } 265 | dependencies: 266 | fill-range: 7.0.1 267 | dev: true 268 | 269 | /browserslist/4.20.2: 270 | resolution: { integrity: sha512-CQOBCqp/9pDvDbx3xfMi+86pr4KXIf2FDkTTdeuYw8OxS9t898LA1Khq57gtufFILXpfgsSx5woNgsBgvGjpsA== } 271 | engines: { node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7 } 272 | hasBin: true 273 | dependencies: 274 | caniuse-lite: 1.0.30001319 275 | electron-to-chromium: 1.4.88 276 | escalade: 3.1.1 277 | node-releases: 2.0.2 278 | picocolors: 1.0.0 279 | dev: true 280 | 281 | /buffer-crc32/0.2.13: 282 | resolution: { integrity: sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI= } 283 | dev: true 284 | 285 | /bytes/3.1.2: 286 | resolution: { integrity: sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg== } 287 | engines: { node: '>= 0.8' } 288 | dev: true 289 | 290 | /callsites/3.1.0: 291 | resolution: { integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== } 292 | engines: { node: '>=6' } 293 | dev: true 294 | 295 | /camelcase-css/2.0.1: 296 | resolution: { integrity: sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA== } 297 | engines: { node: '>= 6' } 298 | dev: true 299 | 300 | /caniuse-api/3.0.0: 301 | resolution: { integrity: sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw== } 302 | dependencies: 303 | browserslist: 4.20.2 304 | caniuse-lite: 1.0.30001319 305 | lodash.memoize: 4.1.2 306 | lodash.uniq: 4.5.0 307 | dev: true 308 | 309 | /caniuse-lite/1.0.30001319: 310 | resolution: { integrity: sha512-xjlIAFHucBRSMUo1kb5D4LYgcN1M45qdKP++lhqowDpwJwGkpIRTt5qQqnhxjj1vHcI7nrJxWhCC1ATrCEBTcw== } 311 | dev: true 312 | 313 | /chalk/2.4.2: 314 | resolution: { integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== } 315 | engines: { node: '>=4' } 316 | dependencies: 317 | ansi-styles: 3.2.1 318 | escape-string-regexp: 1.0.5 319 | supports-color: 5.5.0 320 | dev: true 321 | 322 | /chalk/4.1.2: 323 | resolution: { integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== } 324 | engines: { node: '>=10' } 325 | dependencies: 326 | ansi-styles: 4.3.0 327 | supports-color: 7.2.0 328 | dev: true 329 | 330 | /chart.js/3.7.1: 331 | resolution: { integrity: sha512-8knRegQLFnPQAheZV8MjxIXc5gQEfDFD897BJgv/klO/vtIyFFmgMXrNfgrXpbTr/XbTturxRgxIXx/Y+ASJBA== } 332 | dev: false 333 | 334 | /chartjs-adapter-luxon/1.1.0_chart.js@3.7.1: 335 | resolution: { integrity: sha512-CS+xBWEyXYVLBZ3dSY/MwlSXhz8er4JjkApazY84ft/++oOLsmkt6TaXBCsUFudum7QdoYmpxiL/gSp20+emkw== } 336 | peerDependencies: 337 | chart.js: ^3.0.0 338 | luxon: ^1.0.0 || ^2.0.0 339 | dependencies: 340 | chart.js: 3.7.1 341 | dev: false 342 | 343 | /chartjs-plugin-streaming/2.0.0_chart.js@3.7.1: 344 | resolution: { integrity: sha512-oBwHRmovGbPDS1h8PhpttnlKjI6eiJO13v4h+xz+mfbHhIc+iNF9xuMobCIFMKFH7rlVWi5TJAOIxoXyGElYYg== } 345 | peerDependencies: 346 | chart.js: ^3.0.0 347 | dependencies: 348 | chart.js: 3.7.1 349 | dev: false 350 | 351 | /chokidar/3.5.3: 352 | resolution: { integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw== } 353 | engines: { node: '>= 8.10.0' } 354 | dependencies: 355 | anymatch: 3.1.2 356 | braces: 3.0.2 357 | glob-parent: 5.1.2 358 | is-binary-path: 2.1.0 359 | is-glob: 4.0.3 360 | normalize-path: 3.0.0 361 | readdirp: 3.6.0 362 | optionalDependencies: 363 | fsevents: 2.3.2 364 | dev: true 365 | 366 | /color-convert/1.9.3: 367 | resolution: { integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== } 368 | dependencies: 369 | color-name: 1.1.3 370 | dev: true 371 | 372 | /color-convert/2.0.1: 373 | resolution: { integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== } 374 | engines: { node: '>=7.0.0' } 375 | dependencies: 376 | color-name: 1.1.4 377 | dev: true 378 | 379 | /color-name/1.1.3: 380 | resolution: { integrity: sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= } 381 | dev: true 382 | 383 | /color-name/1.1.4: 384 | resolution: { integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== } 385 | dev: true 386 | 387 | /color-string/1.9.0: 388 | resolution: { integrity: sha512-9Mrz2AQLefkH1UvASKj6v6hj/7eWgjnT/cVsR8CumieLoT+g900exWeNogqtweI8dxloXN9BDQTYro1oWu/5CQ== } 389 | dependencies: 390 | color-name: 1.1.4 391 | simple-swizzle: 0.2.2 392 | dev: true 393 | 394 | /color/4.2.1: 395 | resolution: { integrity: sha512-MFJr0uY4RvTQUKvPq7dh9grVOTYSFeXja2mBXioCGjnjJoXrAp9jJ1NQTDR73c9nwBSAQiNKloKl5zq9WB9UPw== } 396 | engines: { node: '>=12.5.0' } 397 | dependencies: 398 | color-convert: 2.0.1 399 | color-string: 1.9.0 400 | dev: true 401 | 402 | /colord/2.9.2: 403 | resolution: { integrity: sha512-Uqbg+J445nc1TKn4FoDPS6ZZqAvEDnwrH42yo8B40JSOgSLxMZ/gt3h4nmCtPLQeXhjJJkqBx7SCY35WnIixaQ== } 404 | dev: true 405 | 406 | /commander/7.2.0: 407 | resolution: { integrity: sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw== } 408 | engines: { node: '>= 10' } 409 | dev: true 410 | 411 | /commander/8.3.0: 412 | resolution: { integrity: sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww== } 413 | engines: { node: '>= 12' } 414 | dev: true 415 | 416 | /concat-map/0.0.1: 417 | resolution: { integrity: sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= } 418 | dev: true 419 | 420 | /cosmiconfig/7.0.1: 421 | resolution: { integrity: sha512-a1YWNUV2HwGimB7dU2s1wUMurNKjpx60HxBB6xUM8Re+2s1g1IIfJvFR0/iCF+XHdE0GMTKTuLR32UQff4TEyQ== } 422 | engines: { node: '>=10' } 423 | dependencies: 424 | '@types/parse-json': 4.0.0 425 | import-fresh: 3.3.0 426 | parse-json: 5.2.0 427 | path-type: 4.0.0 428 | yaml: 1.10.2 429 | dev: true 430 | 431 | /css-color-names/0.0.4: 432 | resolution: { integrity: sha1-gIrcLnnPhHOAabZGyyDsJ762KeA= } 433 | dev: true 434 | 435 | /css-declaration-sorter/6.1.4_postcss@8.4.12: 436 | resolution: { integrity: sha512-lpfkqS0fctcmZotJGhnxkIyJWvBXgpyi2wsFd4J8VB7wzyrT6Ch/3Q+FMNJpjK4gu1+GN5khOnpU2ZVKrLbhCw== } 437 | engines: { node: '>= 10' } 438 | peerDependencies: 439 | postcss: ^8.0.9 440 | dependencies: 441 | postcss: 8.4.12 442 | timsort: 0.3.0 443 | dev: true 444 | 445 | /css-select/4.2.1: 446 | resolution: { integrity: sha512-/aUslKhzkTNCQUB2qTX84lVmfia9NyjP3WpDGtj/WxhwBzWBYUV3DgUpurHTme8UTPcPlAD1DJ+b0nN/t50zDQ== } 447 | dependencies: 448 | boolbase: 1.0.0 449 | css-what: 5.1.0 450 | domhandler: 4.3.1 451 | domutils: 2.8.0 452 | nth-check: 2.0.1 453 | dev: true 454 | 455 | /css-tree/1.1.3: 456 | resolution: { integrity: sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q== } 457 | engines: { node: '>=8.0.0' } 458 | dependencies: 459 | mdn-data: 2.0.14 460 | source-map: 0.6.1 461 | dev: true 462 | 463 | /css-unit-converter/1.1.2: 464 | resolution: { integrity: sha512-IiJwMC8rdZE0+xiEZHeru6YoONC4rfPMqGm2W85jMIbkFvv5nFTwJVFHam2eFrN6txmoUYFAFXiv8ICVeTO0MA== } 465 | dev: true 466 | 467 | /css-what/5.1.0: 468 | resolution: { integrity: sha512-arSMRWIIFY0hV8pIxZMEfmMI47Wj3R/aWpZDDxWYCPEiOMv6tfOrnpDtgxBYPEQD4V0Y/958+1TdC3iWTFcUPw== } 469 | engines: { node: '>= 6' } 470 | dev: true 471 | 472 | /cssesc/3.0.0: 473 | resolution: { integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg== } 474 | engines: { node: '>=4' } 475 | hasBin: true 476 | dev: true 477 | 478 | /cssnano-preset-default/5.2.4_postcss@8.4.12: 479 | resolution: { integrity: sha512-w1Gg8xsebln6/axZ6qDFQHuglrGfbIHOIx0g4y9+etRlRab8CGpSpe6UMsrgJe4zhCaJ0LwLmc+PhdLRTwnhIA== } 480 | engines: { node: ^10 || ^12 || >=14.0 } 481 | peerDependencies: 482 | postcss: ^8.2.15 483 | dependencies: 484 | css-declaration-sorter: 6.1.4_postcss@8.4.12 485 | cssnano-utils: 3.1.0_postcss@8.4.12 486 | postcss: 8.4.12 487 | postcss-calc: 8.2.4_postcss@8.4.12 488 | postcss-colormin: 5.3.0_postcss@8.4.12 489 | postcss-convert-values: 5.1.0_postcss@8.4.12 490 | postcss-discard-comments: 5.1.1_postcss@8.4.12 491 | postcss-discard-duplicates: 5.1.0_postcss@8.4.12 492 | postcss-discard-empty: 5.1.1_postcss@8.4.12 493 | postcss-discard-overridden: 5.1.0_postcss@8.4.12 494 | postcss-merge-longhand: 5.1.2_postcss@8.4.12 495 | postcss-merge-rules: 5.1.0_postcss@8.4.12 496 | postcss-minify-font-values: 5.1.0_postcss@8.4.12 497 | postcss-minify-gradients: 5.1.0_postcss@8.4.12 498 | postcss-minify-params: 5.1.1_postcss@8.4.12 499 | postcss-minify-selectors: 5.2.0_postcss@8.4.12 500 | postcss-normalize-charset: 5.1.0_postcss@8.4.12 501 | postcss-normalize-display-values: 5.1.0_postcss@8.4.12 502 | postcss-normalize-positions: 5.1.0_postcss@8.4.12 503 | postcss-normalize-repeat-style: 5.1.0_postcss@8.4.12 504 | postcss-normalize-string: 5.1.0_postcss@8.4.12 505 | postcss-normalize-timing-functions: 5.1.0_postcss@8.4.12 506 | postcss-normalize-unicode: 5.1.0_postcss@8.4.12 507 | postcss-normalize-url: 5.1.0_postcss@8.4.12 508 | postcss-normalize-whitespace: 5.1.1_postcss@8.4.12 509 | postcss-ordered-values: 5.1.0_postcss@8.4.12 510 | postcss-reduce-initial: 5.1.0_postcss@8.4.12 511 | postcss-reduce-transforms: 5.1.0_postcss@8.4.12 512 | postcss-svgo: 5.1.0_postcss@8.4.12 513 | postcss-unique-selectors: 5.1.1_postcss@8.4.12 514 | dev: true 515 | 516 | /cssnano-utils/3.1.0_postcss@8.4.12: 517 | resolution: { integrity: sha512-JQNR19/YZhz4psLX/rQ9M83e3z2Wf/HdJbryzte4a3NSuafyp9w/I4U+hx5C2S9g41qlstH7DEWnZaaj83OuEA== } 518 | engines: { node: ^10 || ^12 || >=14.0 } 519 | peerDependencies: 520 | postcss: ^8.2.15 521 | dependencies: 522 | postcss: 8.4.12 523 | dev: true 524 | 525 | /cssnano/5.1.4_postcss@8.4.12: 526 | resolution: { integrity: sha512-hbfhVZreEPyzl+NbvRsjNo54JOX80b+j6nqG2biLVLaZHJEiqGyMh4xDGHtwhUKd5p59mj2GlDqlUBwJUuIu5A== } 527 | engines: { node: ^10 || ^12 || >=14.0 } 528 | peerDependencies: 529 | postcss: ^8.2.15 530 | dependencies: 531 | cssnano-preset-default: 5.2.4_postcss@8.4.12 532 | lilconfig: 2.0.4 533 | postcss: 8.4.12 534 | yaml: 1.10.2 535 | dev: true 536 | 537 | /csso/4.2.0: 538 | resolution: { integrity: sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA== } 539 | engines: { node: '>=8.0.0' } 540 | dependencies: 541 | css-tree: 1.1.3 542 | dev: true 543 | 544 | /debug/4.3.4: 545 | resolution: { integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== } 546 | engines: { node: '>=6.0' } 547 | peerDependencies: 548 | supports-color: '*' 549 | peerDependenciesMeta: 550 | supports-color: 551 | optional: true 552 | dependencies: 553 | ms: 2.1.2 554 | dev: true 555 | 556 | /defined/1.0.0: 557 | resolution: { integrity: sha1-yY2bzvdWdBiOEQlpFRGZ45sfppM= } 558 | dev: true 559 | 560 | /detect-indent/6.1.0: 561 | resolution: { integrity: sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA== } 562 | engines: { node: '>=8' } 563 | dev: true 564 | 565 | /detective/5.2.0: 566 | resolution: { integrity: sha512-6SsIx+nUUbuK0EthKjv0zrdnajCCXVYGmbYYiYjFVpzcjwEs/JMDZ8tPRG29J/HhN56t3GJp2cGSWDRjjot8Pg== } 567 | engines: { node: '>=0.8.0' } 568 | hasBin: true 569 | dependencies: 570 | acorn-node: 1.8.2 571 | defined: 1.0.0 572 | minimist: 1.2.5 573 | dev: true 574 | 575 | /didyoumean/1.2.2: 576 | resolution: { integrity: sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw== } 577 | dev: true 578 | 579 | /dlv/1.1.3: 580 | resolution: { integrity: sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA== } 581 | dev: true 582 | 583 | /dom-serializer/1.3.2: 584 | resolution: { integrity: sha512-5c54Bk5Dw4qAxNOI1pFEizPSjVsx5+bpJKmL2kPn8JhBUq2q09tTCa3mjijun2NfK78NMouDYNMBkOrPZiS+ig== } 585 | dependencies: 586 | domelementtype: 2.2.0 587 | domhandler: 4.3.1 588 | entities: 2.2.0 589 | dev: true 590 | 591 | /domelementtype/2.2.0: 592 | resolution: { integrity: sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A== } 593 | dev: true 594 | 595 | /domhandler/4.3.1: 596 | resolution: { integrity: sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ== } 597 | engines: { node: '>= 4' } 598 | dependencies: 599 | domelementtype: 2.2.0 600 | dev: true 601 | 602 | /domutils/2.8.0: 603 | resolution: { integrity: sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A== } 604 | dependencies: 605 | dom-serializer: 1.3.2 606 | domelementtype: 2.2.0 607 | domhandler: 4.3.1 608 | dev: true 609 | 610 | /electron-to-chromium/1.4.88: 611 | resolution: { integrity: sha512-oA7mzccefkvTNi9u7DXmT0LqvhnOiN2BhSrKerta7HeUC1cLoIwtbf2wL+Ah2ozh5KQd3/1njrGrwDBXx6d14Q== } 612 | dev: true 613 | 614 | /entities/2.2.0: 615 | resolution: { integrity: sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A== } 616 | dev: true 617 | 618 | /error-ex/1.3.2: 619 | resolution: { integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== } 620 | dependencies: 621 | is-arrayish: 0.2.1 622 | dev: true 623 | 624 | /es6-promise/3.3.1: 625 | resolution: { integrity: sha1-oIzd6EzNvzTQJ6FFG8kdS80ophM= } 626 | dev: true 627 | 628 | /esbuild-android-64/0.14.27: 629 | resolution: { integrity: sha512-LuEd4uPuj/16Y8j6kqy3Z2E9vNY9logfq8Tq+oTE2PZVuNs3M1kj5Qd4O95ee66yDGb3isaOCV7sOLDwtMfGaQ== } 630 | engines: { node: '>=12' } 631 | cpu: [ x64 ] 632 | os: [ android ] 633 | requiresBuild: true 634 | dev: true 635 | optional: true 636 | 637 | /esbuild-android-arm64/0.14.27: 638 | resolution: { integrity: sha512-E8Ktwwa6vX8q7QeJmg8yepBYXaee50OdQS3BFtEHKrzbV45H4foMOeEE7uqdjGQZFBap5VAqo7pvjlyA92wznQ== } 639 | engines: { node: '>=12' } 640 | cpu: [ arm64 ] 641 | os: [ android ] 642 | requiresBuild: true 643 | dev: true 644 | optional: true 645 | 646 | /esbuild-darwin-64/0.14.27: 647 | resolution: { integrity: sha512-czw/kXl/1ZdenPWfw9jDc5iuIYxqUxgQ/Q+hRd4/3udyGGVI31r29LCViN2bAJgGvQkqyLGVcG03PJPEXQ5i2g== } 648 | engines: { node: '>=12' } 649 | cpu: [ x64 ] 650 | os: [ darwin ] 651 | requiresBuild: true 652 | dev: true 653 | optional: true 654 | 655 | /esbuild-darwin-arm64/0.14.27: 656 | resolution: { integrity: sha512-BEsv2U2U4o672oV8+xpXNxN9bgqRCtddQC6WBh4YhXKDcSZcdNh7+6nS+DM2vu7qWIWNA4JbRG24LUUYXysimQ== } 657 | engines: { node: '>=12' } 658 | cpu: [ arm64 ] 659 | os: [ darwin ] 660 | requiresBuild: true 661 | dev: true 662 | optional: true 663 | 664 | /esbuild-freebsd-64/0.14.27: 665 | resolution: { integrity: sha512-7FeiFPGBo+ga+kOkDxtPmdPZdayrSzsV9pmfHxcyLKxu+3oTcajeZlOO1y9HW+t5aFZPiv7czOHM4KNd0tNwCA== } 666 | engines: { node: '>=12' } 667 | cpu: [ x64 ] 668 | os: [ freebsd ] 669 | requiresBuild: true 670 | dev: true 671 | optional: true 672 | 673 | /esbuild-freebsd-arm64/0.14.27: 674 | resolution: { integrity: sha512-8CK3++foRZJluOWXpllG5zwAVlxtv36NpHfsbWS7TYlD8S+QruXltKlXToc/5ZNzBK++l6rvRKELu/puCLc7jA== } 675 | engines: { node: '>=12' } 676 | cpu: [ arm64 ] 677 | os: [ freebsd ] 678 | requiresBuild: true 679 | dev: true 680 | optional: true 681 | 682 | /esbuild-linux-32/0.14.27: 683 | resolution: { integrity: sha512-qhNYIcT+EsYSBClZ5QhLzFzV5iVsP1YsITqblSaztr3+ZJUI+GoK8aXHyzKd7/CKKuK93cxEMJPpfi1dfsOfdw== } 684 | engines: { node: '>=12' } 685 | cpu: [ ia32 ] 686 | os: [ linux ] 687 | requiresBuild: true 688 | dev: true 689 | optional: true 690 | 691 | /esbuild-linux-64/0.14.27: 692 | resolution: { integrity: sha512-ESjck9+EsHoTaKWlFKJpPZRN26uiav5gkI16RuI8WBxUdLrrAlYuYSndxxKgEn1csd968BX/8yQZATYf/9+/qg== } 693 | engines: { node: '>=12' } 694 | cpu: [ x64 ] 695 | os: [ linux ] 696 | requiresBuild: true 697 | dev: true 698 | optional: true 699 | 700 | /esbuild-linux-arm/0.14.27: 701 | resolution: { integrity: sha512-JnnmgUBdqLQO9hoNZQqNHFWlNpSX82vzB3rYuCJMhtkuaWQEmQz6Lec1UIxJdC38ifEghNTBsF9bbe8dFilnCw== } 702 | engines: { node: '>=12' } 703 | cpu: [ arm ] 704 | os: [ linux ] 705 | requiresBuild: true 706 | dev: true 707 | optional: true 708 | 709 | /esbuild-linux-arm64/0.14.27: 710 | resolution: { integrity: sha512-no6Mi17eV2tHlJnqBHRLekpZ2/VYx+NfGxKcBE/2xOMYwctsanCaXxw4zapvNrGE9X38vefVXLz6YCF8b1EHiQ== } 711 | engines: { node: '>=12' } 712 | cpu: [ arm64 ] 713 | os: [ linux ] 714 | requiresBuild: true 715 | dev: true 716 | optional: true 717 | 718 | /esbuild-linux-mips64le/0.14.27: 719 | resolution: { integrity: sha512-NolWP2uOvIJpbwpsDbwfeExZOY1bZNlWE/kVfkzLMsSgqeVcl5YMen/cedRe9mKnpfLli+i0uSp7N+fkKNU27A== } 720 | engines: { node: '>=12' } 721 | cpu: [ mips64el ] 722 | os: [ linux ] 723 | requiresBuild: true 724 | dev: true 725 | optional: true 726 | 727 | /esbuild-linux-ppc64le/0.14.27: 728 | resolution: { integrity: sha512-/7dTjDvXMdRKmsSxKXeWyonuGgblnYDn0MI1xDC7J1VQXny8k1qgNp6VmrlsawwnsymSUUiThhkJsI+rx0taNA== } 729 | engines: { node: '>=12' } 730 | cpu: [ ppc64 ] 731 | os: [ linux ] 732 | requiresBuild: true 733 | dev: true 734 | optional: true 735 | 736 | /esbuild-linux-riscv64/0.14.27: 737 | resolution: { integrity: sha512-D+aFiUzOJG13RhrSmZgrcFaF4UUHpqj7XSKrIiCXIj1dkIkFqdrmqMSOtSs78dOtObWiOrFCDDzB24UyeEiNGg== } 738 | engines: { node: '>=12' } 739 | cpu: [ riscv64 ] 740 | os: [ linux ] 741 | requiresBuild: true 742 | dev: true 743 | optional: true 744 | 745 | /esbuild-linux-s390x/0.14.27: 746 | resolution: { integrity: sha512-CD/D4tj0U4UQjELkdNlZhQ8nDHU5rBn6NGp47Hiz0Y7/akAY5i0oGadhEIg0WCY/HYVXFb3CsSPPwaKcTOW3bg== } 747 | engines: { node: '>=12' } 748 | cpu: [ s390x ] 749 | os: [ linux ] 750 | requiresBuild: true 751 | dev: true 752 | optional: true 753 | 754 | /esbuild-netbsd-64/0.14.27: 755 | resolution: { integrity: sha512-h3mAld69SrO1VoaMpYl3a5FNdGRE/Nqc+E8VtHOag4tyBwhCQXxtvDDOAKOUQexBGca0IuR6UayQ4ntSX5ij1Q== } 756 | engines: { node: '>=12' } 757 | cpu: [ x64 ] 758 | os: [ netbsd ] 759 | requiresBuild: true 760 | dev: true 761 | optional: true 762 | 763 | /esbuild-openbsd-64/0.14.27: 764 | resolution: { integrity: sha512-xwSje6qIZaDHXWoPpIgvL+7fC6WeubHHv18tusLYMwL+Z6bEa4Pbfs5IWDtQdHkArtfxEkIZz77944z8MgDxGw== } 765 | engines: { node: '>=12' } 766 | cpu: [ x64 ] 767 | os: [ openbsd ] 768 | requiresBuild: true 769 | dev: true 770 | optional: true 771 | 772 | /esbuild-sunos-64/0.14.27: 773 | resolution: { integrity: sha512-/nBVpWIDjYiyMhuqIqbXXsxBc58cBVH9uztAOIfWShStxq9BNBik92oPQPJ57nzWXRNKQUEFWr4Q98utDWz7jg== } 774 | engines: { node: '>=12' } 775 | cpu: [ x64 ] 776 | os: [ sunos ] 777 | requiresBuild: true 778 | dev: true 779 | optional: true 780 | 781 | /esbuild-windows-32/0.14.27: 782 | resolution: { integrity: sha512-Q9/zEjhZJ4trtWhFWIZvS/7RUzzi8rvkoaS9oiizkHTTKd8UxFwn/Mm2OywsAfYymgUYm8+y2b+BKTNEFxUekw== } 783 | engines: { node: '>=12' } 784 | cpu: [ ia32 ] 785 | os: [ win32 ] 786 | requiresBuild: true 787 | dev: true 788 | optional: true 789 | 790 | /esbuild-windows-64/0.14.27: 791 | resolution: { integrity: sha512-b3y3vTSl5aEhWHK66ngtiS/c6byLf6y/ZBvODH1YkBM+MGtVL6jN38FdHUsZasCz9gFwYs/lJMVY9u7GL6wfYg== } 792 | engines: { node: '>=12' } 793 | cpu: [ x64 ] 794 | os: [ win32 ] 795 | requiresBuild: true 796 | dev: true 797 | optional: true 798 | 799 | /esbuild-windows-arm64/0.14.27: 800 | resolution: { integrity: sha512-I/reTxr6TFMcR5qbIkwRGvldMIaiBu2+MP0LlD7sOlNXrfqIl9uNjsuxFPGEG4IRomjfQ5q8WT+xlF/ySVkqKg== } 801 | engines: { node: '>=12' } 802 | cpu: [ arm64 ] 803 | os: [ win32 ] 804 | requiresBuild: true 805 | dev: true 806 | optional: true 807 | 808 | /esbuild/0.14.27: 809 | resolution: { integrity: sha512-MZQt5SywZS3hA9fXnMhR22dv0oPGh6QtjJRIYbgL1AeqAoQZE+Qn5ppGYQAoHv/vq827flj4tIJ79Mrdiwk46Q== } 810 | engines: { node: '>=12' } 811 | hasBin: true 812 | requiresBuild: true 813 | optionalDependencies: 814 | esbuild-android-64: 0.14.27 815 | esbuild-android-arm64: 0.14.27 816 | esbuild-darwin-64: 0.14.27 817 | esbuild-darwin-arm64: 0.14.27 818 | esbuild-freebsd-64: 0.14.27 819 | esbuild-freebsd-arm64: 0.14.27 820 | esbuild-linux-32: 0.14.27 821 | esbuild-linux-64: 0.14.27 822 | esbuild-linux-arm: 0.14.27 823 | esbuild-linux-arm64: 0.14.27 824 | esbuild-linux-mips64le: 0.14.27 825 | esbuild-linux-ppc64le: 0.14.27 826 | esbuild-linux-riscv64: 0.14.27 827 | esbuild-linux-s390x: 0.14.27 828 | esbuild-netbsd-64: 0.14.27 829 | esbuild-openbsd-64: 0.14.27 830 | esbuild-sunos-64: 0.14.27 831 | esbuild-windows-32: 0.14.27 832 | esbuild-windows-64: 0.14.27 833 | esbuild-windows-arm64: 0.14.27 834 | dev: true 835 | 836 | /escalade/3.1.1: 837 | resolution: { integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== } 838 | engines: { node: '>=6' } 839 | dev: true 840 | 841 | /escape-string-regexp/1.0.5: 842 | resolution: { integrity: sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= } 843 | engines: { node: '>=0.8.0' } 844 | dev: true 845 | 846 | /estree-walker/2.0.2: 847 | resolution: { integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w== } 848 | dev: true 849 | 850 | /fast-glob/3.2.11: 851 | resolution: { integrity: sha512-xrO3+1bxSo3ZVHAnqzyuewYT6aMFHRAd4Kcs92MAonjwQZLsK9d0SF1IyQ3k5PoirxTW0Oe/RqFgMQ6TcNE5Ew== } 852 | engines: { node: '>=8.6.0' } 853 | dependencies: 854 | '@nodelib/fs.stat': 2.0.5 855 | '@nodelib/fs.walk': 1.2.8 856 | glob-parent: 5.1.2 857 | merge2: 1.4.1 858 | micromatch: 4.0.4 859 | dev: true 860 | 861 | /fastq/1.13.0: 862 | resolution: { integrity: sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw== } 863 | dependencies: 864 | reusify: 1.0.4 865 | dev: true 866 | 867 | /fill-range/7.0.1: 868 | resolution: { integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ== } 869 | engines: { node: '>=8' } 870 | dependencies: 871 | to-regex-range: 5.0.1 872 | dev: true 873 | 874 | /fraction.js/4.2.0: 875 | resolution: { integrity: sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA== } 876 | dev: true 877 | 878 | /fs-extra/10.0.1: 879 | resolution: { integrity: sha512-NbdoVMZso2Lsrn/QwLXOy6rm0ufY2zEOKCDzJR/0kBsb0E6qed0P3iYK+Ath3BfvXEeu4JhEtXLgILx5psUfag== } 880 | engines: { node: '>=12' } 881 | dependencies: 882 | graceful-fs: 4.2.9 883 | jsonfile: 6.1.0 884 | universalify: 2.0.0 885 | dev: true 886 | 887 | /fs.realpath/1.0.0: 888 | resolution: { integrity: sha1-FQStJSMVjKpA20onh8sBQRmU6k8= } 889 | dev: true 890 | 891 | /fsevents/2.3.2: 892 | resolution: { integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA== } 893 | engines: { node: ^8.16.0 || ^10.6.0 || >=11.0.0 } 894 | os: [ darwin ] 895 | requiresBuild: true 896 | dev: true 897 | optional: true 898 | 899 | /function-bind/1.1.1: 900 | resolution: { integrity: sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== } 901 | dev: true 902 | 903 | /glob-parent/5.1.2: 904 | resolution: { integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== } 905 | engines: { node: '>= 6' } 906 | dependencies: 907 | is-glob: 4.0.3 908 | dev: true 909 | 910 | /glob-parent/6.0.2: 911 | resolution: { integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A== } 912 | engines: { node: '>=10.13.0' } 913 | dependencies: 914 | is-glob: 4.0.3 915 | dev: true 916 | 917 | /glob/7.2.0: 918 | resolution: { integrity: sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q== } 919 | dependencies: 920 | fs.realpath: 1.0.0 921 | inflight: 1.0.6 922 | inherits: 2.0.4 923 | minimatch: 3.1.2 924 | once: 1.4.0 925 | path-is-absolute: 1.0.1 926 | dev: true 927 | 928 | /globalyzer/0.1.0: 929 | resolution: { integrity: sha512-40oNTM9UfG6aBmuKxk/giHn5nQ8RVz/SS4Ir6zgzOv9/qC3kKZ9v4etGTcJbEl/NyVQH7FGU7d+X1egr57Md2Q== } 930 | dev: true 931 | 932 | /globrex/0.1.2: 933 | resolution: { integrity: sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg== } 934 | dev: true 935 | 936 | /graceful-fs/4.2.9: 937 | resolution: { integrity: sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ== } 938 | dev: true 939 | 940 | /has-flag/3.0.0: 941 | resolution: { integrity: sha1-tdRU3CGZriJWmfNGfloH87lVuv0= } 942 | engines: { node: '>=4' } 943 | dev: true 944 | 945 | /has-flag/4.0.0: 946 | resolution: { integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== } 947 | engines: { node: '>=8' } 948 | dev: true 949 | 950 | /has/1.0.3: 951 | resolution: { integrity: sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== } 952 | engines: { node: '>= 0.4.0' } 953 | dependencies: 954 | function-bind: 1.1.1 955 | dev: true 956 | 957 | /hex-color-regex/1.1.0: 958 | resolution: { integrity: sha512-l9sfDFsuqtOqKDsQdqrMRk0U85RZc0RtOR9yPI7mRVOa4FsR/BVnZ0shmQRM96Ji99kYZP/7hn1cedc1+ApsTQ== } 959 | dev: true 960 | 961 | /hsl-regex/1.0.0: 962 | resolution: { integrity: sha1-1JMwx4ntgZ4nakwNJy3/owsY/m4= } 963 | dev: true 964 | 965 | /hsla-regex/1.0.0: 966 | resolution: { integrity: sha1-wc56MWjIxmFAM6S194d/OyJfnDg= } 967 | dev: true 968 | 969 | /html-tags/3.1.0: 970 | resolution: { integrity: sha512-1qYz89hW3lFDEazhjW0yVAV87lw8lVkrJocr72XmBkMKsoSVJCQx3W8BXsC7hO2qAt8BoVjYjtAcZ9perqGnNg== } 971 | engines: { node: '>=8' } 972 | dev: true 973 | 974 | /import-fresh/3.3.0: 975 | resolution: { integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw== } 976 | engines: { node: '>=6' } 977 | dependencies: 978 | parent-module: 1.0.1 979 | resolve-from: 4.0.0 980 | dev: true 981 | 982 | /inflight/1.0.6: 983 | resolution: { integrity: sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk= } 984 | dependencies: 985 | once: 1.4.0 986 | wrappy: 1.0.2 987 | dev: true 988 | 989 | /inherits/2.0.4: 990 | resolution: { integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== } 991 | dev: true 992 | 993 | /is-arrayish/0.2.1: 994 | resolution: { integrity: sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0= } 995 | dev: true 996 | 997 | /is-arrayish/0.3.2: 998 | resolution: { integrity: sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ== } 999 | dev: true 1000 | 1001 | /is-binary-path/2.1.0: 1002 | resolution: { integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw== } 1003 | engines: { node: '>=8' } 1004 | dependencies: 1005 | binary-extensions: 2.2.0 1006 | dev: true 1007 | 1008 | /is-color-stop/1.1.0: 1009 | resolution: { integrity: sha1-z/9HGu5N1cnhWFmPvhKWe1za00U= } 1010 | dependencies: 1011 | css-color-names: 0.0.4 1012 | hex-color-regex: 1.1.0 1013 | hsl-regex: 1.0.0 1014 | hsla-regex: 1.0.0 1015 | rgb-regex: 1.0.1 1016 | rgba-regex: 1.0.0 1017 | dev: true 1018 | 1019 | /is-core-module/2.8.1: 1020 | resolution: { integrity: sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA== } 1021 | dependencies: 1022 | has: 1.0.3 1023 | dev: true 1024 | 1025 | /is-extglob/2.1.1: 1026 | resolution: { integrity: sha1-qIwCU1eR8C7TfHahueqXc8gz+MI= } 1027 | engines: { node: '>=0.10.0' } 1028 | dev: true 1029 | 1030 | /is-glob/4.0.3: 1031 | resolution: { integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg== } 1032 | engines: { node: '>=0.10.0' } 1033 | dependencies: 1034 | is-extglob: 2.1.1 1035 | dev: true 1036 | 1037 | /is-number/7.0.0: 1038 | resolution: { integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== } 1039 | engines: { node: '>=0.12.0' } 1040 | dev: true 1041 | 1042 | /js-tokens/4.0.0: 1043 | resolution: { integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== } 1044 | dev: true 1045 | 1046 | /json-parse-even-better-errors/2.3.1: 1047 | resolution: { integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w== } 1048 | dev: true 1049 | 1050 | /jsonfile/6.1.0: 1051 | resolution: { integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ== } 1052 | dependencies: 1053 | universalify: 2.0.0 1054 | optionalDependencies: 1055 | graceful-fs: 4.2.9 1056 | dev: true 1057 | 1058 | /kleur/4.1.4: 1059 | resolution: { integrity: sha512-8QADVssbrFjivHWQU7KkMgptGTl6WAcSdlbBPY4uNF+mWr6DGcKrvY2w4FQJoXch7+fKMjj0dRrL75vk3k23OA== } 1060 | engines: { node: '>=6' } 1061 | dev: true 1062 | 1063 | /lilconfig/2.0.4: 1064 | resolution: { integrity: sha512-bfTIN7lEsiooCocSISTWXkiWJkRqtL9wYtYy+8EK3Y41qh3mpwPU0ycTOgjdY9ErwXCc8QyrQp82bdL0Xkm9yA== } 1065 | engines: { node: '>=10' } 1066 | dev: true 1067 | 1068 | /lines-and-columns/1.2.4: 1069 | resolution: { integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg== } 1070 | dev: true 1071 | 1072 | /lodash.memoize/4.1.2: 1073 | resolution: { integrity: sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4= } 1074 | dev: true 1075 | 1076 | /lodash.topath/4.5.2: 1077 | resolution: { integrity: sha1-NhY1Hzu6YZlKCTGYlmC9AyVP0Ak= } 1078 | dev: true 1079 | 1080 | /lodash.uniq/4.5.0: 1081 | resolution: { integrity: sha1-0CJTc662Uq3BvILklFM5qEJ1R3M= } 1082 | dev: true 1083 | 1084 | /lodash/4.17.21: 1085 | resolution: { integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== } 1086 | dev: true 1087 | 1088 | /magic-string/0.25.9: 1089 | resolution: { integrity: sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ== } 1090 | dependencies: 1091 | sourcemap-codec: 1.4.8 1092 | dev: true 1093 | 1094 | /magic-string/0.26.1: 1095 | resolution: { integrity: sha512-ndThHmvgtieXe8J/VGPjG+Apu7v7ItcD5mhEIvOscWjPF/ccOiLxHaSuCAS2G+3x4GKsAbT8u7zdyamupui8Tg== } 1096 | engines: { node: '>=12' } 1097 | dependencies: 1098 | sourcemap-codec: 1.4.8 1099 | dev: true 1100 | 1101 | /mdn-data/2.0.14: 1102 | resolution: { integrity: sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow== } 1103 | dev: true 1104 | 1105 | /merge2/1.4.1: 1106 | resolution: { integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== } 1107 | engines: { node: '>= 8' } 1108 | dev: true 1109 | 1110 | /micromatch/4.0.4: 1111 | resolution: { integrity: sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg== } 1112 | engines: { node: '>=8.6' } 1113 | dependencies: 1114 | braces: 3.0.2 1115 | picomatch: 2.3.1 1116 | dev: true 1117 | 1118 | /min-indent/1.0.1: 1119 | resolution: { integrity: sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg== } 1120 | engines: { node: '>=4' } 1121 | dev: true 1122 | 1123 | /minimatch/3.1.2: 1124 | resolution: { integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== } 1125 | dependencies: 1126 | brace-expansion: 1.1.11 1127 | dev: true 1128 | 1129 | /minimist/1.2.5: 1130 | resolution: { integrity: sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw== } 1131 | dev: true 1132 | 1133 | /mkdirp/0.5.5: 1134 | resolution: { integrity: sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ== } 1135 | hasBin: true 1136 | dependencies: 1137 | minimist: 1.2.5 1138 | dev: true 1139 | 1140 | /modern-normalize/1.1.0: 1141 | resolution: { integrity: sha512-2lMlY1Yc1+CUy0gw4H95uNN7vjbpoED7NNRSBHE25nWfLBdmMzFCsPshlzbxHz+gYMcBEUN8V4pU16prcdPSgA== } 1142 | engines: { node: '>=6' } 1143 | dev: true 1144 | 1145 | /mri/1.2.0: 1146 | resolution: { integrity: sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA== } 1147 | engines: { node: '>=4' } 1148 | dev: true 1149 | 1150 | /ms/2.1.2: 1151 | resolution: { integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== } 1152 | dev: true 1153 | 1154 | /nanoid/3.3.1: 1155 | resolution: { integrity: sha512-n6Vs/3KGyxPQd6uO0eH4Bv0ojGSUvuLlIHtC3Y0kEO23YRge8H9x1GCzLn28YX0H66pMkxuaeESFq4tKISKwdw== } 1156 | engines: { node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1 } 1157 | hasBin: true 1158 | dev: true 1159 | 1160 | /node-emoji/1.11.0: 1161 | resolution: { integrity: sha512-wo2DpQkQp7Sjm2A0cq+sN7EHKO6Sl0ctXeBdFZrL9T9+UywORbufTcTZxom8YqpLQt/FqNMUkOpkZrJVYSKD3A== } 1162 | dependencies: 1163 | lodash: 4.17.21 1164 | dev: true 1165 | 1166 | /node-releases/2.0.2: 1167 | resolution: { integrity: sha512-XxYDdcQ6eKqp/YjI+tb2C5WM2LgjnZrfYg4vgQt49EK268b6gYCHsBLrK2qvJo4FmCtqmKezb0WZFK4fkrZNsg== } 1168 | dev: true 1169 | 1170 | /normalize-path/3.0.0: 1171 | resolution: { integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== } 1172 | engines: { node: '>=0.10.0' } 1173 | dev: true 1174 | 1175 | /normalize-range/0.1.2: 1176 | resolution: { integrity: sha1-LRDAa9/TEuqXd2laTShDlFa3WUI= } 1177 | engines: { node: '>=0.10.0' } 1178 | dev: true 1179 | 1180 | /normalize-url/6.1.0: 1181 | resolution: { integrity: sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A== } 1182 | engines: { node: '>=10' } 1183 | dev: true 1184 | 1185 | /nth-check/2.0.1: 1186 | resolution: { integrity: sha512-it1vE95zF6dTT9lBsYbxvqh0Soy4SPowchj0UBGj/V6cTPnXXtQOPUbhZ6CmGzAD/rW22LQK6E96pcdJXk4A4w== } 1187 | dependencies: 1188 | boolbase: 1.0.0 1189 | dev: true 1190 | 1191 | /object-hash/2.2.0: 1192 | resolution: { integrity: sha512-gScRMn0bS5fH+IuwyIFgnh9zBdo4DV+6GhygmWM9HyNJSgS0hScp1f5vjtm7oIIOiT9trXrShAkLFSc2IqKNgw== } 1193 | engines: { node: '>= 6' } 1194 | dev: true 1195 | 1196 | /once/1.4.0: 1197 | resolution: { integrity: sha1-WDsap3WWHUsROsF9nFC6753Xa9E= } 1198 | dependencies: 1199 | wrappy: 1.0.2 1200 | dev: true 1201 | 1202 | /parent-module/1.0.1: 1203 | resolution: { integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g== } 1204 | engines: { node: '>=6' } 1205 | dependencies: 1206 | callsites: 3.1.0 1207 | dev: true 1208 | 1209 | /parse-json/5.2.0: 1210 | resolution: { integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg== } 1211 | engines: { node: '>=8' } 1212 | dependencies: 1213 | '@babel/code-frame': 7.16.7 1214 | error-ex: 1.3.2 1215 | json-parse-even-better-errors: 2.3.1 1216 | lines-and-columns: 1.2.4 1217 | dev: true 1218 | 1219 | /path-is-absolute/1.0.1: 1220 | resolution: { integrity: sha1-F0uSaHNVNP+8es5r9TpanhtcX18= } 1221 | engines: { node: '>=0.10.0' } 1222 | dev: true 1223 | 1224 | /path-parse/1.0.7: 1225 | resolution: { integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== } 1226 | dev: true 1227 | 1228 | /path-type/4.0.0: 1229 | resolution: { integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== } 1230 | engines: { node: '>=8' } 1231 | dev: true 1232 | 1233 | /picocolors/1.0.0: 1234 | resolution: { integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ== } 1235 | dev: true 1236 | 1237 | /picomatch/2.3.1: 1238 | resolution: { integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== } 1239 | engines: { node: '>=8.6' } 1240 | dev: true 1241 | 1242 | /postcss-calc/8.2.4_postcss@8.4.12: 1243 | resolution: { integrity: sha512-SmWMSJmB8MRnnULldx0lQIyhSNvuDl9HfrZkaqqE/WHAhToYsAvDq+yAsA/kIyINDszOp3Rh0GFoNuH5Ypsm3Q== } 1244 | peerDependencies: 1245 | postcss: ^8.2.2 1246 | dependencies: 1247 | postcss: 8.4.12 1248 | postcss-selector-parser: 6.0.9 1249 | postcss-value-parser: 4.2.0 1250 | dev: true 1251 | 1252 | /postcss-colormin/5.3.0_postcss@8.4.12: 1253 | resolution: { integrity: sha512-WdDO4gOFG2Z8n4P8TWBpshnL3JpmNmJwdnfP2gbk2qBA8PWwOYcmjmI/t3CmMeL72a7Hkd+x/Mg9O2/0rD54Pg== } 1254 | engines: { node: ^10 || ^12 || >=14.0 } 1255 | peerDependencies: 1256 | postcss: ^8.2.15 1257 | dependencies: 1258 | browserslist: 4.20.2 1259 | caniuse-api: 3.0.0 1260 | colord: 2.9.2 1261 | postcss: 8.4.12 1262 | postcss-value-parser: 4.2.0 1263 | dev: true 1264 | 1265 | /postcss-convert-values/5.1.0_postcss@8.4.12: 1266 | resolution: { integrity: sha512-GkyPbZEYJiWtQB0KZ0X6qusqFHUepguBCNFi9t5JJc7I2OTXG7C0twbTLvCfaKOLl3rSXmpAwV7W5txd91V84g== } 1267 | engines: { node: ^10 || ^12 || >=14.0 } 1268 | peerDependencies: 1269 | postcss: ^8.2.15 1270 | dependencies: 1271 | postcss: 8.4.12 1272 | postcss-value-parser: 4.2.0 1273 | dev: true 1274 | 1275 | /postcss-discard-comments/5.1.1_postcss@8.4.12: 1276 | resolution: { integrity: sha512-5JscyFmvkUxz/5/+TB3QTTT9Gi9jHkcn8dcmmuN68JQcv3aQg4y88yEHHhwFB52l/NkaJ43O0dbksGMAo49nfQ== } 1277 | engines: { node: ^10 || ^12 || >=14.0 } 1278 | peerDependencies: 1279 | postcss: ^8.2.15 1280 | dependencies: 1281 | postcss: 8.4.12 1282 | dev: true 1283 | 1284 | /postcss-discard-duplicates/5.1.0_postcss@8.4.12: 1285 | resolution: { integrity: sha512-zmX3IoSI2aoenxHV6C7plngHWWhUOV3sP1T8y2ifzxzbtnuhk1EdPwm0S1bIUNaJ2eNbWeGLEwzw8huPD67aQw== } 1286 | engines: { node: ^10 || ^12 || >=14.0 } 1287 | peerDependencies: 1288 | postcss: ^8.2.15 1289 | dependencies: 1290 | postcss: 8.4.12 1291 | dev: true 1292 | 1293 | /postcss-discard-empty/5.1.1_postcss@8.4.12: 1294 | resolution: { integrity: sha512-zPz4WljiSuLWsI0ir4Mcnr4qQQ5e1Ukc3i7UfE2XcrwKK2LIPIqE5jxMRxO6GbI3cv//ztXDsXwEWT3BHOGh3A== } 1295 | engines: { node: ^10 || ^12 || >=14.0 } 1296 | peerDependencies: 1297 | postcss: ^8.2.15 1298 | dependencies: 1299 | postcss: 8.4.12 1300 | dev: true 1301 | 1302 | /postcss-discard-overridden/5.1.0_postcss@8.4.12: 1303 | resolution: { integrity: sha512-21nOL7RqWR1kasIVdKs8HNqQJhFxLsyRfAnUDm4Fe4t4mCWL9OJiHvlHPjcd8zc5Myu89b/7wZDnOSjFgeWRtw== } 1304 | engines: { node: ^10 || ^12 || >=14.0 } 1305 | peerDependencies: 1306 | postcss: ^8.2.15 1307 | dependencies: 1308 | postcss: 8.4.12 1309 | dev: true 1310 | 1311 | /postcss-js/3.0.3: 1312 | resolution: { integrity: sha512-gWnoWQXKFw65Hk/mi2+WTQTHdPD5UJdDXZmX073EY/B3BWnYjO4F4t0VneTCnCGQ5E5GsCdMkzPaTXwl3r5dJw== } 1313 | engines: { node: '>=10.0' } 1314 | dependencies: 1315 | camelcase-css: 2.0.1 1316 | postcss: 8.4.12 1317 | dev: true 1318 | 1319 | /postcss-load-config/3.1.3: 1320 | resolution: { integrity: sha512-5EYgaM9auHGtO//ljHH+v/aC/TQ5LHXtL7bQajNAUBKUVKiYE8rYpFms7+V26D9FncaGe2zwCoPQsFKb5zF/Hw== } 1321 | engines: { node: '>= 10' } 1322 | peerDependencies: 1323 | ts-node: '>=9.0.0' 1324 | peerDependenciesMeta: 1325 | ts-node: 1326 | optional: true 1327 | dependencies: 1328 | lilconfig: 2.0.4 1329 | yaml: 1.10.2 1330 | dev: true 1331 | 1332 | /postcss-merge-longhand/5.1.2_postcss@8.4.12: 1333 | resolution: { integrity: sha512-18/bp9DZnY1ai9RlahOfLBbmIUKfKFPASxRCiZ1vlpZqWPCn8qWPFlEozqmWL+kBtcEQmG8W9YqGCstDImvp/Q== } 1334 | engines: { node: ^10 || ^12 || >=14.0 } 1335 | peerDependencies: 1336 | postcss: ^8.2.15 1337 | dependencies: 1338 | postcss: 8.4.12 1339 | postcss-value-parser: 4.2.0 1340 | stylehacks: 5.1.0_postcss@8.4.12 1341 | dev: true 1342 | 1343 | /postcss-merge-rules/5.1.0_postcss@8.4.12: 1344 | resolution: { integrity: sha512-NecukEJovQ0mG7h7xV8wbYAkXGTO3MPKnXvuiXzOKcxoOodfTTKYjeo8TMhAswlSkjcPIBlnKbSFcTuVSDaPyQ== } 1345 | engines: { node: ^10 || ^12 || >=14.0 } 1346 | peerDependencies: 1347 | postcss: ^8.2.15 1348 | dependencies: 1349 | browserslist: 4.20.2 1350 | caniuse-api: 3.0.0 1351 | cssnano-utils: 3.1.0_postcss@8.4.12 1352 | postcss: 8.4.12 1353 | postcss-selector-parser: 6.0.9 1354 | dev: true 1355 | 1356 | /postcss-minify-font-values/5.1.0_postcss@8.4.12: 1357 | resolution: { integrity: sha512-el3mYTgx13ZAPPirSVsHqFzl+BBBDrXvbySvPGFnQcTI4iNslrPaFq4muTkLZmKlGk4gyFAYUBMH30+HurREyA== } 1358 | engines: { node: ^10 || ^12 || >=14.0 } 1359 | peerDependencies: 1360 | postcss: ^8.2.15 1361 | dependencies: 1362 | postcss: 8.4.12 1363 | postcss-value-parser: 4.2.0 1364 | dev: true 1365 | 1366 | /postcss-minify-gradients/5.1.0_postcss@8.4.12: 1367 | resolution: { integrity: sha512-J/TMLklkONn3LuL8wCwfwU8zKC1hpS6VcxFkNUNjmVt53uKqrrykR3ov11mdUYyqVMEx67slMce0tE14cE4DTg== } 1368 | engines: { node: ^10 || ^12 || >=14.0 } 1369 | peerDependencies: 1370 | postcss: ^8.2.15 1371 | dependencies: 1372 | colord: 2.9.2 1373 | cssnano-utils: 3.1.0_postcss@8.4.12 1374 | postcss: 8.4.12 1375 | postcss-value-parser: 4.2.0 1376 | dev: true 1377 | 1378 | /postcss-minify-params/5.1.1_postcss@8.4.12: 1379 | resolution: { integrity: sha512-WCpr+J9Uz8XzMpAfg3UL8z5rde6MifBbh5L8bn8S2F5hq/YDJJzASYCnCHvAB4Fqb94ys8v95ULQkW2EhCFvNg== } 1380 | engines: { node: ^10 || ^12 || >=14.0 } 1381 | peerDependencies: 1382 | postcss: ^8.2.15 1383 | dependencies: 1384 | browserslist: 4.20.2 1385 | cssnano-utils: 3.1.0_postcss@8.4.12 1386 | postcss: 8.4.12 1387 | postcss-value-parser: 4.2.0 1388 | dev: true 1389 | 1390 | /postcss-minify-selectors/5.2.0_postcss@8.4.12: 1391 | resolution: { integrity: sha512-vYxvHkW+iULstA+ctVNx0VoRAR4THQQRkG77o0oa4/mBS0OzGvvzLIvHDv/nNEM0crzN2WIyFU5X7wZhaUK3RA== } 1392 | engines: { node: ^10 || ^12 || >=14.0 } 1393 | peerDependencies: 1394 | postcss: ^8.2.15 1395 | dependencies: 1396 | postcss: 8.4.12 1397 | postcss-selector-parser: 6.0.9 1398 | dev: true 1399 | 1400 | /postcss-nested/5.0.6_postcss@8.4.12: 1401 | resolution: { integrity: sha512-rKqm2Fk0KbA8Vt3AdGN0FB9OBOMDVajMG6ZCf/GoHgdxUJ4sBFp0A/uMIRm+MJUdo33YXEtjqIz8u7DAp8B7DA== } 1402 | engines: { node: '>=12.0' } 1403 | peerDependencies: 1404 | postcss: ^8.2.14 1405 | dependencies: 1406 | postcss: 8.4.12 1407 | postcss-selector-parser: 6.0.9 1408 | dev: true 1409 | 1410 | /postcss-normalize-charset/5.1.0_postcss@8.4.12: 1411 | resolution: { integrity: sha512-mSgUJ+pd/ldRGVx26p2wz9dNZ7ji6Pn8VWBajMXFf8jk7vUoSrZ2lt/wZR7DtlZYKesmZI680qjr2CeFF2fbUg== } 1412 | engines: { node: ^10 || ^12 || >=14.0 } 1413 | peerDependencies: 1414 | postcss: ^8.2.15 1415 | dependencies: 1416 | postcss: 8.4.12 1417 | dev: true 1418 | 1419 | /postcss-normalize-display-values/5.1.0_postcss@8.4.12: 1420 | resolution: { integrity: sha512-WP4KIM4o2dazQXWmFaqMmcvsKmhdINFblgSeRgn8BJ6vxaMyaJkwAzpPpuvSIoG/rmX3M+IrRZEz2H0glrQNEA== } 1421 | engines: { node: ^10 || ^12 || >=14.0 } 1422 | peerDependencies: 1423 | postcss: ^8.2.15 1424 | dependencies: 1425 | postcss: 8.4.12 1426 | postcss-value-parser: 4.2.0 1427 | dev: true 1428 | 1429 | /postcss-normalize-positions/5.1.0_postcss@8.4.12: 1430 | resolution: { integrity: sha512-8gmItgA4H5xiUxgN/3TVvXRoJxkAWLW6f/KKhdsH03atg0cB8ilXnrB5PpSshwVu/dD2ZsRFQcR1OEmSBDAgcQ== } 1431 | engines: { node: ^10 || ^12 || >=14.0 } 1432 | peerDependencies: 1433 | postcss: ^8.2.15 1434 | dependencies: 1435 | postcss: 8.4.12 1436 | postcss-value-parser: 4.2.0 1437 | dev: true 1438 | 1439 | /postcss-normalize-repeat-style/5.1.0_postcss@8.4.12: 1440 | resolution: { integrity: sha512-IR3uBjc+7mcWGL6CtniKNQ4Rr5fTxwkaDHwMBDGGs1x9IVRkYIT/M4NelZWkAOBdV6v3Z9S46zqaKGlyzHSchw== } 1441 | engines: { node: ^10 || ^12 || >=14.0 } 1442 | peerDependencies: 1443 | postcss: ^8.2.15 1444 | dependencies: 1445 | postcss: 8.4.12 1446 | postcss-value-parser: 4.2.0 1447 | dev: true 1448 | 1449 | /postcss-normalize-string/5.1.0_postcss@8.4.12: 1450 | resolution: { integrity: sha512-oYiIJOf4T9T1N4i+abeIc7Vgm/xPCGih4bZz5Nm0/ARVJ7K6xrDlLwvwqOydvyL3RHNf8qZk6vo3aatiw/go3w== } 1451 | engines: { node: ^10 || ^12 || >=14.0 } 1452 | peerDependencies: 1453 | postcss: ^8.2.15 1454 | dependencies: 1455 | postcss: 8.4.12 1456 | postcss-value-parser: 4.2.0 1457 | dev: true 1458 | 1459 | /postcss-normalize-timing-functions/5.1.0_postcss@8.4.12: 1460 | resolution: { integrity: sha512-DOEkzJ4SAXv5xkHl0Wa9cZLF3WCBhF3o1SKVxKQAa+0pYKlueTpCgvkFAHfk+Y64ezX9+nITGrDZeVGgITJXjg== } 1461 | engines: { node: ^10 || ^12 || >=14.0 } 1462 | peerDependencies: 1463 | postcss: ^8.2.15 1464 | dependencies: 1465 | postcss: 8.4.12 1466 | postcss-value-parser: 4.2.0 1467 | dev: true 1468 | 1469 | /postcss-normalize-unicode/5.1.0_postcss@8.4.12: 1470 | resolution: { integrity: sha512-J6M3MizAAZ2dOdSjy2caayJLQT8E8K9XjLce8AUQMwOrCvjCHv24aLC/Lps1R1ylOfol5VIDMaM/Lo9NGlk1SQ== } 1471 | engines: { node: ^10 || ^12 || >=14.0 } 1472 | peerDependencies: 1473 | postcss: ^8.2.15 1474 | dependencies: 1475 | browserslist: 4.20.2 1476 | postcss: 8.4.12 1477 | postcss-value-parser: 4.2.0 1478 | dev: true 1479 | 1480 | /postcss-normalize-url/5.1.0_postcss@8.4.12: 1481 | resolution: { integrity: sha512-5upGeDO+PVthOxSmds43ZeMeZfKH+/DKgGRD7TElkkyS46JXAUhMzIKiCa7BabPeIy3AQcTkXwVVN7DbqsiCew== } 1482 | engines: { node: ^10 || ^12 || >=14.0 } 1483 | peerDependencies: 1484 | postcss: ^8.2.15 1485 | dependencies: 1486 | normalize-url: 6.1.0 1487 | postcss: 8.4.12 1488 | postcss-value-parser: 4.2.0 1489 | dev: true 1490 | 1491 | /postcss-normalize-whitespace/5.1.1_postcss@8.4.12: 1492 | resolution: { integrity: sha512-83ZJ4t3NUDETIHTa3uEg6asWjSBYL5EdkVB0sDncx9ERzOKBVJIUeDO9RyA9Zwtig8El1d79HBp0JEi8wvGQnA== } 1493 | engines: { node: ^10 || ^12 || >=14.0 } 1494 | peerDependencies: 1495 | postcss: ^8.2.15 1496 | dependencies: 1497 | postcss: 8.4.12 1498 | postcss-value-parser: 4.2.0 1499 | dev: true 1500 | 1501 | /postcss-ordered-values/5.1.0_postcss@8.4.12: 1502 | resolution: { integrity: sha512-wU4Z4D4uOIH+BUKkYid36gGDJNQtkVJT7Twv8qH6UyfttbbJWyw4/xIPuVEkkCtQLAJ0EdsNSh8dlvqkXb49TA== } 1503 | engines: { node: ^10 || ^12 || >=14.0 } 1504 | peerDependencies: 1505 | postcss: ^8.2.15 1506 | dependencies: 1507 | cssnano-utils: 3.1.0_postcss@8.4.12 1508 | postcss: 8.4.12 1509 | postcss-value-parser: 4.2.0 1510 | dev: true 1511 | 1512 | /postcss-reduce-initial/5.1.0_postcss@8.4.12: 1513 | resolution: { integrity: sha512-5OgTUviz0aeH6MtBjHfbr57tml13PuedK/Ecg8szzd4XRMbYxH4572JFG067z+FqBIf6Zp/d+0581glkvvWMFw== } 1514 | engines: { node: ^10 || ^12 || >=14.0 } 1515 | peerDependencies: 1516 | postcss: ^8.2.15 1517 | dependencies: 1518 | browserslist: 4.20.2 1519 | caniuse-api: 3.0.0 1520 | postcss: 8.4.12 1521 | dev: true 1522 | 1523 | /postcss-reduce-transforms/5.1.0_postcss@8.4.12: 1524 | resolution: { integrity: sha512-2fbdbmgir5AvpW9RLtdONx1QoYG2/EtqpNQbFASDlixBbAYuTcJ0dECwlqNqH7VbaUnEnh8SrxOe2sRIn24XyQ== } 1525 | engines: { node: ^10 || ^12 || >=14.0 } 1526 | peerDependencies: 1527 | postcss: ^8.2.15 1528 | dependencies: 1529 | postcss: 8.4.12 1530 | postcss-value-parser: 4.2.0 1531 | dev: true 1532 | 1533 | /postcss-selector-parser/6.0.9: 1534 | resolution: { integrity: sha512-UO3SgnZOVTwu4kyLR22UQ1xZh086RyNZppb7lLAKBFK8a32ttG5i87Y/P3+2bRSjZNyJ1B7hfFNo273tKe9YxQ== } 1535 | engines: { node: '>=4' } 1536 | dependencies: 1537 | cssesc: 3.0.0 1538 | util-deprecate: 1.0.2 1539 | dev: true 1540 | 1541 | /postcss-svgo/5.1.0_postcss@8.4.12: 1542 | resolution: { integrity: sha512-D75KsH1zm5ZrHyxPakAxJWtkyXew5qwS70v56exwvw542d9CRtTo78K0WeFxZB4G7JXKKMbEZtZayTGdIky/eA== } 1543 | engines: { node: ^10 || ^12 || >=14.0 } 1544 | peerDependencies: 1545 | postcss: ^8.2.15 1546 | dependencies: 1547 | postcss: 8.4.12 1548 | postcss-value-parser: 4.2.0 1549 | svgo: 2.8.0 1550 | dev: true 1551 | 1552 | /postcss-unique-selectors/5.1.1_postcss@8.4.12: 1553 | resolution: { integrity: sha512-5JiODlELrz8L2HwxfPnhOWZYWDxVHWL83ufOv84NrcgipI7TaeRsatAhK4Tr2/ZiYldpK/wBvw5BD3qfaK96GA== } 1554 | engines: { node: ^10 || ^12 || >=14.0 } 1555 | peerDependencies: 1556 | postcss: ^8.2.15 1557 | dependencies: 1558 | postcss: 8.4.12 1559 | postcss-selector-parser: 6.0.9 1560 | dev: true 1561 | 1562 | /postcss-value-parser/3.3.1: 1563 | resolution: { integrity: sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ== } 1564 | dev: true 1565 | 1566 | /postcss-value-parser/4.2.0: 1567 | resolution: { integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ== } 1568 | dev: true 1569 | 1570 | /postcss/8.4.12: 1571 | resolution: { integrity: sha512-lg6eITwYe9v6Hr5CncVbK70SoioNQIq81nsaG86ev5hAidQvmOeETBqs7jm43K2F5/Ley3ytDtriImV6TpNiSg== } 1572 | engines: { node: ^10 || ^12 || >=14 } 1573 | dependencies: 1574 | nanoid: 3.3.1 1575 | picocolors: 1.0.0 1576 | source-map-js: 1.0.2 1577 | dev: true 1578 | 1579 | /pretty-hrtime/1.0.3: 1580 | resolution: { integrity: sha1-t+PqQkNaTJsnWdmeDyAesZWALuE= } 1581 | engines: { node: '>= 0.8' } 1582 | dev: true 1583 | 1584 | /purgecss/4.1.3: 1585 | resolution: { integrity: sha512-99cKy4s+VZoXnPxaoM23e5ABcP851nC2y2GROkkjS8eJaJtlciGavd7iYAw2V84WeBqggZ12l8ef44G99HmTaw== } 1586 | hasBin: true 1587 | dependencies: 1588 | commander: 8.3.0 1589 | glob: 7.2.0 1590 | postcss: 8.4.12 1591 | postcss-selector-parser: 6.0.9 1592 | dev: true 1593 | 1594 | /queue-microtask/1.2.3: 1595 | resolution: { integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A== } 1596 | dev: true 1597 | 1598 | /quick-lru/5.1.1: 1599 | resolution: { integrity: sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA== } 1600 | engines: { node: '>=10' } 1601 | dev: true 1602 | 1603 | /readdirp/3.6.0: 1604 | resolution: { integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA== } 1605 | engines: { node: '>=8.10.0' } 1606 | dependencies: 1607 | picomatch: 2.3.1 1608 | dev: true 1609 | 1610 | /reduce-css-calc/2.1.8: 1611 | resolution: { integrity: sha512-8liAVezDmUcH+tdzoEGrhfbGcP7nOV4NkGE3a74+qqvE7nt9i4sKLGBuZNOnpI4WiGksiNPklZxva80061QiPg== } 1612 | dependencies: 1613 | css-unit-converter: 1.1.2 1614 | postcss-value-parser: 3.3.1 1615 | dev: true 1616 | 1617 | /resolve-from/4.0.0: 1618 | resolution: { integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== } 1619 | engines: { node: '>=4' } 1620 | dev: true 1621 | 1622 | /resolve/1.22.0: 1623 | resolution: { integrity: sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw== } 1624 | hasBin: true 1625 | dependencies: 1626 | is-core-module: 2.8.1 1627 | path-parse: 1.0.7 1628 | supports-preserve-symlinks-flag: 1.0.0 1629 | dev: true 1630 | 1631 | /reusify/1.0.4: 1632 | resolution: { integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw== } 1633 | engines: { iojs: '>=1.0.0', node: '>=0.10.0' } 1634 | dev: true 1635 | 1636 | /rgb-regex/1.0.1: 1637 | resolution: { integrity: sha1-wODWiC3w4jviVKR16O3UGRX+rrE= } 1638 | dev: true 1639 | 1640 | /rgba-regex/1.0.0: 1641 | resolution: { integrity: sha1-QzdOLiyglosO8VI0YLfXMP8i7rM= } 1642 | dev: true 1643 | 1644 | /rimraf/2.7.1: 1645 | resolution: { integrity: sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w== } 1646 | hasBin: true 1647 | dependencies: 1648 | glob: 7.2.0 1649 | dev: true 1650 | 1651 | /rimraf/3.0.2: 1652 | resolution: { integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== } 1653 | hasBin: true 1654 | dependencies: 1655 | glob: 7.2.0 1656 | dev: true 1657 | 1658 | /rollup/2.70.1: 1659 | resolution: { integrity: sha512-CRYsI5EuzLbXdxC6RnYhOuRdtz4bhejPMSWjsFLfVM/7w/85n2szZv6yExqUXsBdz5KT8eoubeyDUDjhLHEslA== } 1660 | engines: { node: '>=10.0.0' } 1661 | hasBin: true 1662 | optionalDependencies: 1663 | fsevents: 2.3.2 1664 | dev: true 1665 | 1666 | /run-parallel/1.2.0: 1667 | resolution: { integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA== } 1668 | dependencies: 1669 | queue-microtask: 1.2.3 1670 | dev: true 1671 | 1672 | /sade/1.8.1: 1673 | resolution: { integrity: sha512-xal3CZX1Xlo/k4ApwCFrHVACi9fBqJ7V+mwhBsuf/1IOKbBy098Fex+Wa/5QMubw09pSZ/u8EY8PWgevJsXp1A== } 1674 | engines: { node: '>=6' } 1675 | dependencies: 1676 | mri: 1.2.0 1677 | dev: true 1678 | 1679 | /sander/0.5.1: 1680 | resolution: { integrity: sha1-dB4kXiMfB8r7b98PEzrfohalAq0= } 1681 | dependencies: 1682 | es6-promise: 3.3.1 1683 | graceful-fs: 4.2.9 1684 | mkdirp: 0.5.5 1685 | rimraf: 2.7.1 1686 | dev: true 1687 | 1688 | /simple-swizzle/0.2.2: 1689 | resolution: { integrity: sha1-pNprY1/8zMoz9w0Xy5JZLeleVXo= } 1690 | dependencies: 1691 | is-arrayish: 0.3.2 1692 | dev: true 1693 | 1694 | /sorcery/0.10.0: 1695 | resolution: { integrity: sha1-iukK19fLBfxZ8asMY3hF1cFaUrc= } 1696 | hasBin: true 1697 | dependencies: 1698 | buffer-crc32: 0.2.13 1699 | minimist: 1.2.5 1700 | sander: 0.5.1 1701 | sourcemap-codec: 1.4.8 1702 | dev: true 1703 | 1704 | /source-map-js/1.0.2: 1705 | resolution: { integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw== } 1706 | engines: { node: '>=0.10.0' } 1707 | dev: true 1708 | 1709 | /source-map/0.6.1: 1710 | resolution: { integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== } 1711 | engines: { node: '>=0.10.0' } 1712 | dev: true 1713 | 1714 | /sourcemap-codec/1.4.8: 1715 | resolution: { integrity: sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA== } 1716 | dev: true 1717 | 1718 | /stable/0.1.8: 1719 | resolution: { integrity: sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w== } 1720 | dev: true 1721 | 1722 | /strip-indent/3.0.0: 1723 | resolution: { integrity: sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ== } 1724 | engines: { node: '>=8' } 1725 | dependencies: 1726 | min-indent: 1.0.1 1727 | dev: true 1728 | 1729 | /stylehacks/5.1.0_postcss@8.4.12: 1730 | resolution: { integrity: sha512-SzLmvHQTrIWfSgljkQCw2++C9+Ne91d/6Sp92I8c5uHTcy/PgeHamwITIbBW9wnFTY/3ZfSXR9HIL6Ikqmcu6Q== } 1731 | engines: { node: ^10 || ^12 || >=14.0 } 1732 | peerDependencies: 1733 | postcss: ^8.2.15 1734 | dependencies: 1735 | browserslist: 4.20.2 1736 | postcss: 8.4.12 1737 | postcss-selector-parser: 6.0.9 1738 | dev: true 1739 | 1740 | /supports-color/5.5.0: 1741 | resolution: { integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== } 1742 | engines: { node: '>=4' } 1743 | dependencies: 1744 | has-flag: 3.0.0 1745 | dev: true 1746 | 1747 | /supports-color/7.2.0: 1748 | resolution: { integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== } 1749 | engines: { node: '>=8' } 1750 | dependencies: 1751 | has-flag: 4.0.0 1752 | dev: true 1753 | 1754 | /supports-preserve-symlinks-flag/1.0.0: 1755 | resolution: { integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== } 1756 | engines: { node: '>= 0.4' } 1757 | dev: true 1758 | 1759 | /svelte-hmr/0.14.11_svelte@3.46.4: 1760 | resolution: { integrity: sha512-R9CVfX6DXxW1Kn45Jtmx+yUe+sPhrbYSUp7TkzbW0jI5fVPn6lsNG9NEs5dFg5qRhFNAoVdRw5qQDLALNKhwbQ== } 1761 | engines: { node: ^12.20 || ^14.13.1 || >= 16 } 1762 | peerDependencies: 1763 | svelte: '>=3.19.0' 1764 | dependencies: 1765 | svelte: 3.46.4 1766 | dev: true 1767 | 1768 | /svelte-preprocess/4.10.4_d61f7298692c4dce2f25e1ef74e972be: 1769 | resolution: { integrity: sha512-fuwol0N4UoHsNQolLFbMqWivqcJ9N0vfWO9IuPAiX/5okfoGXURyJ6nECbuEIv0nU3M8Xe2I1ONNje2buk7l6A== } 1770 | engines: { node: '>= 9.11.2' } 1771 | requiresBuild: true 1772 | peerDependencies: 1773 | '@babel/core': ^7.10.2 1774 | coffeescript: ^2.5.1 1775 | less: ^3.11.3 || ^4.0.0 1776 | node-sass: '*' 1777 | postcss: ^7 || ^8 1778 | postcss-load-config: ^2.1.0 || ^3.0.0 1779 | pug: ^3.0.0 1780 | sass: ^1.26.8 1781 | stylus: ^0.55.0 1782 | sugarss: ^2.0.0 1783 | svelte: ^3.23.0 1784 | typescript: ^3.9.5 || ^4.0.0 1785 | peerDependenciesMeta: 1786 | '@babel/core': 1787 | optional: true 1788 | coffeescript: 1789 | optional: true 1790 | less: 1791 | optional: true 1792 | node-sass: 1793 | optional: true 1794 | postcss: 1795 | optional: true 1796 | postcss-load-config: 1797 | optional: true 1798 | pug: 1799 | optional: true 1800 | sass: 1801 | optional: true 1802 | stylus: 1803 | optional: true 1804 | sugarss: 1805 | optional: true 1806 | typescript: 1807 | optional: true 1808 | dependencies: 1809 | '@types/pug': 2.0.6 1810 | '@types/sass': 1.43.1 1811 | detect-indent: 6.1.0 1812 | magic-string: 0.25.9 1813 | postcss: 8.4.12 1814 | postcss-load-config: 3.1.3 1815 | sorcery: 0.10.0 1816 | strip-indent: 3.0.0 1817 | svelte: 3.46.4 1818 | typescript: 4.6.2 1819 | dev: true 1820 | 1821 | /svelte/3.46.4: 1822 | resolution: { integrity: sha512-qKJzw6DpA33CIa+C/rGp4AUdSfii0DOTCzj/2YpSKKayw5WGSS624Et9L1nU1k2OVRS9vaENQXp2CVZNU+xvIg== } 1823 | engines: { node: '>= 8' } 1824 | dev: true 1825 | 1826 | /svgo/2.8.0: 1827 | resolution: { integrity: sha512-+N/Q9kV1+F+UeWYoSiULYo4xYSDQlTgb+ayMobAXPwMnLvop7oxKMo9OzIrX5x3eS4L4f2UHhc9axXwY8DpChg== } 1828 | engines: { node: '>=10.13.0' } 1829 | hasBin: true 1830 | dependencies: 1831 | '@trysound/sax': 0.2.0 1832 | commander: 7.2.0 1833 | css-select: 4.2.1 1834 | css-tree: 1.1.3 1835 | csso: 4.2.0 1836 | picocolors: 1.0.0 1837 | stable: 0.1.8 1838 | dev: true 1839 | 1840 | /tailwindcss/2.2.19_081650f2f4dba35b17265937ab2a2ec0: 1841 | resolution: { integrity: sha512-6Ui7JSVtXadtTUo2NtkBBacobzWiQYVjYW0ZnKaP9S1ZCKQ0w7KVNz+YSDI/j7O7KCMHbOkz94ZMQhbT9pOqjw== } 1842 | engines: { node: '>=12.13.0' } 1843 | hasBin: true 1844 | peerDependencies: 1845 | autoprefixer: ^10.0.2 1846 | postcss: ^8.0.9 1847 | dependencies: 1848 | arg: 5.0.1 1849 | autoprefixer: 10.4.4_postcss@8.4.12 1850 | bytes: 3.1.2 1851 | chalk: 4.1.2 1852 | chokidar: 3.5.3 1853 | color: 4.2.1 1854 | cosmiconfig: 7.0.1 1855 | detective: 5.2.0 1856 | didyoumean: 1.2.2 1857 | dlv: 1.1.3 1858 | fast-glob: 3.2.11 1859 | fs-extra: 10.0.1 1860 | glob-parent: 6.0.2 1861 | html-tags: 3.1.0 1862 | is-color-stop: 1.1.0 1863 | is-glob: 4.0.3 1864 | lodash: 4.17.21 1865 | lodash.topath: 4.5.2 1866 | modern-normalize: 1.1.0 1867 | node-emoji: 1.11.0 1868 | normalize-path: 3.0.0 1869 | object-hash: 2.2.0 1870 | postcss: 8.4.12 1871 | postcss-js: 3.0.3 1872 | postcss-load-config: 3.1.3 1873 | postcss-nested: 5.0.6_postcss@8.4.12 1874 | postcss-selector-parser: 6.0.9 1875 | postcss-value-parser: 4.2.0 1876 | pretty-hrtime: 1.0.3 1877 | purgecss: 4.1.3 1878 | quick-lru: 5.1.1 1879 | reduce-css-calc: 2.1.8 1880 | resolve: 1.22.0 1881 | tmp: 0.2.1 1882 | transitivePeerDependencies: 1883 | - ts-node 1884 | dev: true 1885 | 1886 | /timsort/0.3.0: 1887 | resolution: { integrity: sha1-QFQRqOfmM5/mTbmiNN4R3DHgK9Q= } 1888 | dev: true 1889 | 1890 | /tiny-glob/0.2.9: 1891 | resolution: { integrity: sha512-g/55ssRPUjShh+xkfx9UPDXqhckHEsHr4Vd9zX55oSdGZc/MD0m3sferOkwWtp98bv+kcVfEHtRJgBVJzelrzg== } 1892 | dependencies: 1893 | globalyzer: 0.1.0 1894 | globrex: 0.1.2 1895 | dev: true 1896 | 1897 | /tmp/0.2.1: 1898 | resolution: { integrity: sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ== } 1899 | engines: { node: '>=8.17.0' } 1900 | dependencies: 1901 | rimraf: 3.0.2 1902 | dev: true 1903 | 1904 | /to-regex-range/5.0.1: 1905 | resolution: { integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ== } 1906 | engines: { node: '>=8.0' } 1907 | dependencies: 1908 | is-number: 7.0.0 1909 | dev: true 1910 | 1911 | /tslib/2.3.1: 1912 | resolution: { integrity: sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw== } 1913 | dev: true 1914 | 1915 | /typescript/4.6.2: 1916 | resolution: { integrity: sha512-HM/hFigTBHZhLXshn9sN37H085+hQGeJHJ/X7LpBWLID/fbc2acUMfU+lGD98X81sKP+pFa9f0DZmCwB9GnbAg== } 1917 | engines: { node: '>=4.2.0' } 1918 | hasBin: true 1919 | dev: true 1920 | 1921 | /universalify/2.0.0: 1922 | resolution: { integrity: sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ== } 1923 | engines: { node: '>= 10.0.0' } 1924 | dev: true 1925 | 1926 | /util-deprecate/1.0.2: 1927 | resolution: { integrity: sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= } 1928 | dev: true 1929 | 1930 | /vite/2.8.6: 1931 | resolution: { integrity: sha512-e4H0QpludOVKkmOsRyqQ7LTcMUDF3mcgyNU4lmi0B5JUbe0ZxeBBl8VoZ8Y6Rfn9eFKYtdXNPcYK97ZwH+K2ug== } 1932 | engines: { node: '>=12.2.0' } 1933 | hasBin: true 1934 | peerDependencies: 1935 | less: '*' 1936 | sass: '*' 1937 | stylus: '*' 1938 | peerDependenciesMeta: 1939 | less: 1940 | optional: true 1941 | sass: 1942 | optional: true 1943 | stylus: 1944 | optional: true 1945 | dependencies: 1946 | esbuild: 0.14.27 1947 | postcss: 8.4.12 1948 | resolve: 1.22.0 1949 | rollup: 2.70.1 1950 | optionalDependencies: 1951 | fsevents: 2.3.2 1952 | dev: true 1953 | 1954 | /wrappy/1.0.2: 1955 | resolution: { integrity: sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= } 1956 | dev: true 1957 | 1958 | /xtend/4.0.2: 1959 | resolution: { integrity: sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ== } 1960 | engines: { node: '>=0.4' } 1961 | dev: true 1962 | 1963 | /yaml/1.10.2: 1964 | resolution: { integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg== } 1965 | engines: { node: '>= 6' } 1966 | dev: true --------------------------------------------------------------------------------