├── .gitignore ├── LICENSE ├── README.md ├── demo ├── .gitignore ├── index.html ├── package.json ├── src │ └── my-component.webc └── vite.config.mjs ├── package.json ├── plugin ├── LICENSE ├── README.md ├── index.mjs └── package.json ├── pnpm-lock.yaml ├── pnpm-workspace.yaml └── turbo.json /.gitignore: -------------------------------------------------------------------------------- 1 | # See https://help.github.com/articles/ignoring-files/ for more about ignoring files. 2 | 3 | # dependencies 4 | node_modules 5 | .pnp 6 | .pnp.js 7 | 8 | # testing 9 | coverage 10 | 11 | # next.js 12 | .next/ 13 | out/ 14 | build 15 | 16 | # misc 17 | .DS_Store 18 | *.pem 19 | 20 | # debug 21 | npm-debug.log* 22 | yarn-debug.log* 23 | yarn-error.log* 24 | .pnpm-debug.log* 25 | 26 | # local env files 27 | .env.local 28 | .env.development.local 29 | .env.test.local 30 | .env.production.local 31 | 32 | # turbo 33 | .turbo 34 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | plugin/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | plugin/README.md -------------------------------------------------------------------------------- /demo/.gitignore: -------------------------------------------------------------------------------- 1 | # Logs 2 | logs 3 | *.log 4 | npm-debug.log* 5 | yarn-debug.log* 6 | yarn-error.log* 7 | pnpm-debug.log* 8 | lerna-debug.log* 9 | 10 | node_modules 11 | dist 12 | dist-ssr 13 | *.local 14 | 15 | # Editor directories and files 16 | .vscode/* 17 | !.vscode/extensions.json 18 | .idea 19 | .DS_Store 20 | *.suo 21 | *.ntvs* 22 | *.njsproj 23 | *.sln 24 | *.sw? 25 | -------------------------------------------------------------------------------- /demo/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | Vite App 8 | 13 | 14 | 15 |

Hello

16 | 17 | 18 | 19 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /demo/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "vite-plugin-webc-demo", 3 | "private": true, 4 | "version": "0.0.0", 5 | "type": "module", 6 | "scripts": { 7 | "dev": "vite", 8 | "build": "vite build", 9 | "preview": "vite preview" 10 | }, 11 | "dependencies": { 12 | "open-props": "1.4.16" 13 | }, 14 | "devDependencies": { 15 | "postcss": "^8.4.18", 16 | "postcss-preset-env": "^7.8.2", 17 | "vite": "^3.1.0", 18 | "vite-plugin-webc": "*" 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /demo/src/my-component.webc: -------------------------------------------------------------------------------- 1 | hello world 2 | 3 | 22 | 23 | 26 | -------------------------------------------------------------------------------- /demo/vite.config.mjs: -------------------------------------------------------------------------------- 1 | import { defineConfig } from 'vite'; 2 | import VitePluginWebc from 'vite-plugin-webc'; 3 | import postcssPresetEnv from 'postcss-preset-env'; 4 | 5 | export default defineConfig({ 6 | plugins: [VitePluginWebc()], 7 | css: { 8 | postcss: { 9 | plugins: [postcssPresetEnv({ features: { 'nesting-rules': true } })], 10 | }, 11 | }, 12 | }); 13 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "vite-plugin-webc-monorepo", 3 | "version": "0.0.0", 4 | "private": true, 5 | "workspaces": [ 6 | "demo", 7 | "plugin" 8 | ], 9 | "scripts": { 10 | "build": "turbo run build", 11 | "preview": "turbo run preview", 12 | "dev": "turbo run dev --parallel" 13 | }, 14 | "devDependencies": { 15 | "turbo": "latest" 16 | }, 17 | "engines": { 18 | "node": ">=16.0.0" 19 | }, 20 | "dependencies": {}, 21 | "packageManager": "pnpm@7.11.0" 22 | } 23 | -------------------------------------------------------------------------------- /plugin/LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2022 Mayank 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /plugin/README.md: -------------------------------------------------------------------------------- 1 | # vite-plugin-webc 2 | 3 | A vite plugin for [WebC](https://github.com/11ty/webc). 4 | 5 | 1. Install webc and the plugin: 6 | 7 | ```shell 8 | npm i -D vite-plugin-webc @11ty/webc 9 | ``` 10 | 11 | 2. Add the plugin to the vite config: 12 | 13 | ```js 14 | import { defineConfig } from 'vite'; 15 | import VitePluginWebc from 'vite-plugin-webc'; 16 | 17 | export default defineConfig({ 18 | plugins: [VitePluginWebc()], 19 | }); 20 | ``` 21 | 22 | 3. Define your .webc files anywhere in the `src/` directory and start using them in your html! 23 | -------------------------------------------------------------------------------- /plugin/index.mjs: -------------------------------------------------------------------------------- 1 | import { WebC } from '@11ty/webc'; 2 | 3 | /** @returns {import('vite').Plugin} */ 4 | export default function VitePluginWebc() { 5 | const virtualCssId = 'virtual:webc-generated.css'; 6 | const virtualJsId = 'virtual:webc-generated.js'; 7 | 8 | let externalCss = ''; 9 | let externalJs = ''; 10 | 11 | return { 12 | name: 'vite-plugin-webc', 13 | enforce: 'pre', 14 | transformIndexHtml: { 15 | enforce: 'pre', 16 | transform: async (code, { server }) => { 17 | // HACK: exit early in prod build, but need a more reliable way 18 | if (!server) return code; 19 | 20 | const webc = new WebC(); 21 | webc.setContent(code); 22 | webc.defineComponents('src/**/*.webc'); 23 | const { html, components } = await webc.compile(); 24 | 25 | return { 26 | html, 27 | // HACK: importing all components so that vite knows to reload the page when they change 28 | tags: [ 29 | { 30 | tag: 'script', 31 | attrs: { type: 'module' }, 32 | children: components.map((c) => `import '${c}?url';`).join('\n'), 33 | injectTo: 'body', 34 | }, 35 | ], 36 | }; 37 | }, 38 | }, 39 | async transform(code, id, options) { 40 | // HACK: exit early in dev server, but need a more reliable way 41 | const isDev = options?.hasOwnProperty('ssr'); 42 | if (isDev) return; 43 | 44 | if (!id.endsWith('.html')) return; 45 | 46 | const webc = new WebC(); 47 | webc.setBundlerMode(true); 48 | 49 | // HACK: prevent webc from processing unrelated styles and scripts 50 | const _code = code 51 | .replaceAll(' decodeURI(_js)).join('\n'); 64 | 65 | html = html.replace( 66 | '', 67 | // Vite will automatically externalize these virtual imports into real files 68 | ` 72 | ` 73 | ); 74 | 75 | return { 76 | code: html, 77 | map: null, 78 | }; 79 | }, 80 | resolveId(id) { 81 | if (id === virtualCssId) return `\0${id}`; 82 | if (id === virtualJsId) return `\0${id}`; 83 | }, 84 | load(id) { 85 | if (id === `\0${virtualCssId}`) return externalCss; 86 | if (id === `\0${virtualJsId}`) return externalJs; 87 | }, 88 | }; 89 | } 90 | -------------------------------------------------------------------------------- /plugin/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "vite-plugin-webc", 3 | "version": "0.2.0", 4 | "license": "MIT", 5 | "type": "module", 6 | "exports": { 7 | ".": "./index.mjs" 8 | }, 9 | "files": [ 10 | "index.mjs", 11 | "LICENSE" 12 | ], 13 | "dependencies": {}, 14 | "peerDependencies": { 15 | "@11ty/webc": "^0.5.3" 16 | }, 17 | "devDependencies": { 18 | "@11ty/webc": "^0.5.3", 19 | "vite": "^3.1.0" 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /pnpm-lock.yaml: -------------------------------------------------------------------------------- 1 | lockfileVersion: 5.4 2 | 3 | importers: 4 | 5 | .: 6 | specifiers: 7 | turbo: latest 8 | devDependencies: 9 | turbo: 1.5.6 10 | 11 | demo: 12 | specifiers: 13 | open-props: 1.4.16 14 | postcss: ^8.4.18 15 | postcss-preset-env: ^7.8.2 16 | vite: ^3.1.0 17 | vite-plugin-webc: '*' 18 | dependencies: 19 | open-props: 1.4.16 20 | devDependencies: 21 | postcss: 8.4.18 22 | postcss-preset-env: 7.8.2_postcss@8.4.18 23 | vite: 3.1.4 24 | vite-plugin-webc: link:../plugin 25 | 26 | plugin: 27 | specifiers: 28 | '@11ty/webc': ^0.5.3 29 | vite: ^3.1.0 30 | devDependencies: 31 | '@11ty/webc': 0.5.3 32 | vite: 3.1.4 33 | 34 | packages: 35 | 36 | /@11ty/eleventy-utils/1.0.1: 37 | resolution: {integrity: sha512-HPpCTz4PzudcQU+i+x6GSNHVqgnvRhnVYg5dLKaAoRWLN966odAGsBxKSyhF8i1MdlOPtsytYb2AGWP7jISC5w==} 38 | engines: {node: '>=12'} 39 | dependencies: 40 | normalize-path: 3.0.0 41 | dev: true 42 | 43 | /@11ty/webc/0.5.3: 44 | resolution: {integrity: sha512-cJSpRGofYI+xiX6Mxh5Y1j5BBkZrwECYk5y3V6UiD5G0tb4krrTV11v/aGwf47sOdSHLuCf8e308/Nn0bivkPQ==} 45 | engines: {node: '>=14.18'} 46 | dependencies: 47 | '@11ty/eleventy-utils': 1.0.1 48 | css-tree: 2.2.1 49 | dependency-graph: 0.11.0 50 | entities: 4.4.0 51 | fast-glob: 3.2.12 52 | nanoid: 4.0.0 53 | parse5: 7.1.1 54 | dev: true 55 | 56 | /@csstools/postcss-cascade-layers/1.1.1_postcss@8.4.18: 57 | resolution: {integrity: sha512-+KdYrpKC5TgomQr2DlZF4lDEpHcoxnj5IGddYYfBWJAKfj1JtuHUIqMa+E1pJJ+z3kvDViWMqyqPlG4Ja7amQA==} 58 | engines: {node: ^12 || ^14 || >=16} 59 | peerDependencies: 60 | postcss: ^8.2 61 | dependencies: 62 | '@csstools/selector-specificity': 2.0.2_dvkg4kkb622mvceygg47xxdz3a 63 | postcss: 8.4.18 64 | postcss-selector-parser: 6.0.10 65 | dev: true 66 | 67 | /@csstools/postcss-color-function/1.1.1_postcss@8.4.18: 68 | resolution: {integrity: sha512-Bc0f62WmHdtRDjf5f3e2STwRAl89N2CLb+9iAwzrv4L2hncrbDwnQD9PCq0gtAt7pOI2leIV08HIBUd4jxD8cw==} 69 | engines: {node: ^12 || ^14 || >=16} 70 | peerDependencies: 71 | postcss: ^8.2 72 | dependencies: 73 | '@csstools/postcss-progressive-custom-properties': 1.3.0_postcss@8.4.18 74 | postcss: 8.4.18 75 | postcss-value-parser: 4.2.0 76 | dev: true 77 | 78 | /@csstools/postcss-font-format-keywords/1.0.1_postcss@8.4.18: 79 | resolution: {integrity: sha512-ZgrlzuUAjXIOc2JueK0X5sZDjCtgimVp/O5CEqTcs5ShWBa6smhWYbS0x5cVc/+rycTDbjjzoP0KTDnUneZGOg==} 80 | engines: {node: ^12 || ^14 || >=16} 81 | peerDependencies: 82 | postcss: ^8.2 83 | dependencies: 84 | postcss: 8.4.18 85 | postcss-value-parser: 4.2.0 86 | dev: true 87 | 88 | /@csstools/postcss-hwb-function/1.0.2_postcss@8.4.18: 89 | resolution: {integrity: sha512-YHdEru4o3Rsbjmu6vHy4UKOXZD+Rn2zmkAmLRfPet6+Jz4Ojw8cbWxe1n42VaXQhD3CQUXXTooIy8OkVbUcL+w==} 90 | engines: {node: ^12 || ^14 || >=16} 91 | peerDependencies: 92 | postcss: ^8.2 93 | dependencies: 94 | postcss: 8.4.18 95 | postcss-value-parser: 4.2.0 96 | dev: true 97 | 98 | /@csstools/postcss-ic-unit/1.0.1_postcss@8.4.18: 99 | resolution: {integrity: sha512-Ot1rcwRAaRHNKC9tAqoqNZhjdYBzKk1POgWfhN4uCOE47ebGcLRqXjKkApVDpjifL6u2/55ekkpnFcp+s/OZUw==} 100 | engines: {node: ^12 || ^14 || >=16} 101 | peerDependencies: 102 | postcss: ^8.2 103 | dependencies: 104 | '@csstools/postcss-progressive-custom-properties': 1.3.0_postcss@8.4.18 105 | postcss: 8.4.18 106 | postcss-value-parser: 4.2.0 107 | dev: true 108 | 109 | /@csstools/postcss-is-pseudo-class/2.0.7_postcss@8.4.18: 110 | resolution: {integrity: sha512-7JPeVVZHd+jxYdULl87lvjgvWldYu+Bc62s9vD/ED6/QTGjy0jy0US/f6BG53sVMTBJ1lzKZFpYmofBN9eaRiA==} 111 | engines: {node: ^12 || ^14 || >=16} 112 | peerDependencies: 113 | postcss: ^8.2 114 | dependencies: 115 | '@csstools/selector-specificity': 2.0.2_dvkg4kkb622mvceygg47xxdz3a 116 | postcss: 8.4.18 117 | postcss-selector-parser: 6.0.10 118 | dev: true 119 | 120 | /@csstools/postcss-nested-calc/1.0.0_postcss@8.4.18: 121 | resolution: {integrity: sha512-JCsQsw1wjYwv1bJmgjKSoZNvf7R6+wuHDAbi5f/7MbFhl2d/+v+TvBTU4BJH3G1X1H87dHl0mh6TfYogbT/dJQ==} 122 | engines: {node: ^12 || ^14 || >=16} 123 | peerDependencies: 124 | postcss: ^8.2 125 | dependencies: 126 | postcss: 8.4.18 127 | postcss-value-parser: 4.2.0 128 | dev: true 129 | 130 | /@csstools/postcss-normalize-display-values/1.0.1_postcss@8.4.18: 131 | resolution: {integrity: sha512-jcOanIbv55OFKQ3sYeFD/T0Ti7AMXc9nM1hZWu8m/2722gOTxFg7xYu4RDLJLeZmPUVQlGzo4jhzvTUq3x4ZUw==} 132 | engines: {node: ^12 || ^14 || >=16} 133 | peerDependencies: 134 | postcss: ^8.2 135 | dependencies: 136 | postcss: 8.4.18 137 | postcss-value-parser: 4.2.0 138 | dev: true 139 | 140 | /@csstools/postcss-oklab-function/1.1.1_postcss@8.4.18: 141 | resolution: {integrity: sha512-nJpJgsdA3dA9y5pgyb/UfEzE7W5Ka7u0CX0/HIMVBNWzWemdcTH3XwANECU6anWv/ao4vVNLTMxhiPNZsTK6iA==} 142 | engines: {node: ^12 || ^14 || >=16} 143 | peerDependencies: 144 | postcss: ^8.2 145 | dependencies: 146 | '@csstools/postcss-progressive-custom-properties': 1.3.0_postcss@8.4.18 147 | postcss: 8.4.18 148 | postcss-value-parser: 4.2.0 149 | dev: true 150 | 151 | /@csstools/postcss-progressive-custom-properties/1.3.0_postcss@8.4.18: 152 | resolution: {integrity: sha512-ASA9W1aIy5ygskZYuWams4BzafD12ULvSypmaLJT2jvQ8G0M3I8PRQhC0h7mG0Z3LI05+agZjqSR9+K9yaQQjA==} 153 | engines: {node: ^12 || ^14 || >=16} 154 | peerDependencies: 155 | postcss: ^8.3 156 | dependencies: 157 | postcss: 8.4.18 158 | postcss-value-parser: 4.2.0 159 | dev: true 160 | 161 | /@csstools/postcss-stepped-value-functions/1.0.1_postcss@8.4.18: 162 | resolution: {integrity: sha512-dz0LNoo3ijpTOQqEJLY8nyaapl6umbmDcgj4AD0lgVQ572b2eqA1iGZYTTWhrcrHztWDDRAX2DGYyw2VBjvCvQ==} 163 | engines: {node: ^12 || ^14 || >=16} 164 | peerDependencies: 165 | postcss: ^8.2 166 | dependencies: 167 | postcss: 8.4.18 168 | postcss-value-parser: 4.2.0 169 | dev: true 170 | 171 | /@csstools/postcss-text-decoration-shorthand/1.0.0_postcss@8.4.18: 172 | resolution: {integrity: sha512-c1XwKJ2eMIWrzQenN0XbcfzckOLLJiczqy+YvfGmzoVXd7pT9FfObiSEfzs84bpE/VqfpEuAZ9tCRbZkZxxbdw==} 173 | engines: {node: ^12 || ^14 || >=16} 174 | peerDependencies: 175 | postcss: ^8.2 176 | dependencies: 177 | postcss: 8.4.18 178 | postcss-value-parser: 4.2.0 179 | dev: true 180 | 181 | /@csstools/postcss-trigonometric-functions/1.0.2_postcss@8.4.18: 182 | resolution: {integrity: sha512-woKaLO///4bb+zZC2s80l+7cm07M7268MsyG3M0ActXXEFi6SuhvriQYcb58iiKGbjwwIU7n45iRLEHypB47Og==} 183 | engines: {node: ^14 || >=16} 184 | peerDependencies: 185 | postcss: ^8.2 186 | dependencies: 187 | postcss: 8.4.18 188 | postcss-value-parser: 4.2.0 189 | dev: true 190 | 191 | /@csstools/postcss-unset-value/1.0.2_postcss@8.4.18: 192 | resolution: {integrity: sha512-c8J4roPBILnelAsdLr4XOAR/GsTm0GJi4XpcfvoWk3U6KiTCqiFYc63KhRMQQX35jYMp4Ao8Ij9+IZRgMfJp1g==} 193 | engines: {node: ^12 || ^14 || >=16} 194 | peerDependencies: 195 | postcss: ^8.2 196 | dependencies: 197 | postcss: 8.4.18 198 | dev: true 199 | 200 | /@csstools/selector-specificity/2.0.2_dvkg4kkb622mvceygg47xxdz3a: 201 | resolution: {integrity: sha512-IkpVW/ehM1hWKln4fCA3NzJU8KwD+kIOvPZA4cqxoJHtE21CCzjyp+Kxbu0i5I4tBNOlXPL9mjwnWlL0VEG4Fg==} 202 | engines: {node: ^12 || ^14 || >=16} 203 | peerDependencies: 204 | postcss: ^8.2 205 | postcss-selector-parser: ^6.0.10 206 | dependencies: 207 | postcss: 8.4.18 208 | postcss-selector-parser: 6.0.10 209 | dev: true 210 | 211 | /@esbuild/android-arm/0.15.10: 212 | resolution: {integrity: sha512-FNONeQPy/ox+5NBkcSbYJxoXj9GWu8gVGJTVmUyoOCKQFDTrHVKgNSzChdNt0I8Aj/iKcsDf2r9BFwv+FSNUXg==} 213 | engines: {node: '>=12'} 214 | cpu: [arm] 215 | os: [android] 216 | requiresBuild: true 217 | dev: true 218 | optional: true 219 | 220 | /@esbuild/linux-loong64/0.15.10: 221 | resolution: {integrity: sha512-w0Ou3Z83LOYEkwaui2M8VwIp+nLi/NA60lBLMvaJ+vXVMcsARYdEzLNE7RSm4+lSg4zq4d7fAVuzk7PNQ5JFgg==} 222 | engines: {node: '>=12'} 223 | cpu: [loong64] 224 | os: [linux] 225 | requiresBuild: true 226 | dev: true 227 | optional: true 228 | 229 | /@nodelib/fs.scandir/2.1.5: 230 | resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} 231 | engines: {node: '>= 8'} 232 | dependencies: 233 | '@nodelib/fs.stat': 2.0.5 234 | run-parallel: 1.2.0 235 | dev: true 236 | 237 | /@nodelib/fs.stat/2.0.5: 238 | resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} 239 | engines: {node: '>= 8'} 240 | dev: true 241 | 242 | /@nodelib/fs.walk/1.2.8: 243 | resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} 244 | engines: {node: '>= 8'} 245 | dependencies: 246 | '@nodelib/fs.scandir': 2.1.5 247 | fastq: 1.13.0 248 | dev: true 249 | 250 | /autoprefixer/10.4.12_postcss@8.4.18: 251 | resolution: {integrity: sha512-WrCGV9/b97Pa+jtwf5UGaRjgQIg7OK3D06GnoYoZNcG1Xb8Gt3EfuKjlhh9i/VtT16g6PYjZ69jdJ2g8FxSC4Q==} 252 | engines: {node: ^10 || ^12 || >=14} 253 | hasBin: true 254 | peerDependencies: 255 | postcss: ^8.1.0 256 | dependencies: 257 | browserslist: 4.21.4 258 | caniuse-lite: 1.0.30001419 259 | fraction.js: 4.2.0 260 | normalize-range: 0.1.2 261 | picocolors: 1.0.0 262 | postcss: 8.4.18 263 | postcss-value-parser: 4.2.0 264 | dev: true 265 | 266 | /braces/3.0.2: 267 | resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==} 268 | engines: {node: '>=8'} 269 | dependencies: 270 | fill-range: 7.0.1 271 | dev: true 272 | 273 | /browserslist/4.21.4: 274 | resolution: {integrity: sha512-CBHJJdDmgjl3daYjN5Cp5kbTf1mUhZoS+beLklHIvkOWscs83YAhLlF3Wsh/lciQYAcbBJgTOD44VtG31ZM4Hw==} 275 | engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} 276 | hasBin: true 277 | dependencies: 278 | caniuse-lite: 1.0.30001419 279 | electron-to-chromium: 1.4.283 280 | node-releases: 2.0.6 281 | update-browserslist-db: 1.0.10_browserslist@4.21.4 282 | dev: true 283 | 284 | /caniuse-lite/1.0.30001419: 285 | resolution: {integrity: sha512-aFO1r+g6R7TW+PNQxKzjITwLOyDhVRLjW0LcwS/HCZGUUKTGNp9+IwLC4xyDSZBygVL/mxaFR3HIV6wEKQuSzw==} 286 | dev: true 287 | 288 | /css-blank-pseudo/3.0.3_postcss@8.4.18: 289 | resolution: {integrity: sha512-VS90XWtsHGqoM0t4KpH053c4ehxZ2E6HtGI7x68YFV0pTo/QmkV/YFA+NnlvK8guxZVNWGQhVNJGC39Q8XF4OQ==} 290 | engines: {node: ^12 || ^14 || >=16} 291 | hasBin: true 292 | peerDependencies: 293 | postcss: ^8.4 294 | dependencies: 295 | postcss: 8.4.18 296 | postcss-selector-parser: 6.0.10 297 | dev: true 298 | 299 | /css-has-pseudo/3.0.4_postcss@8.4.18: 300 | resolution: {integrity: sha512-Vse0xpR1K9MNlp2j5w1pgWIJtm1a8qS0JwS9goFYcImjlHEmywP9VUF05aGBXzGpDJF86QXk4L0ypBmwPhGArw==} 301 | engines: {node: ^12 || ^14 || >=16} 302 | hasBin: true 303 | peerDependencies: 304 | postcss: ^8.4 305 | dependencies: 306 | postcss: 8.4.18 307 | postcss-selector-parser: 6.0.10 308 | dev: true 309 | 310 | /css-prefers-color-scheme/6.0.3_postcss@8.4.18: 311 | resolution: {integrity: sha512-4BqMbZksRkJQx2zAjrokiGMd07RqOa2IxIrrN10lyBe9xhn9DEvjUK79J6jkeiv9D9hQFXKb6g1jwU62jziJZA==} 312 | engines: {node: ^12 || ^14 || >=16} 313 | hasBin: true 314 | peerDependencies: 315 | postcss: ^8.4 316 | dependencies: 317 | postcss: 8.4.18 318 | dev: true 319 | 320 | /css-tree/2.2.1: 321 | resolution: {integrity: sha512-OA0mILzGc1kCOCSJerOeqDxDQ4HOh+G8NbOJFOTgOCzpw7fCBubk0fEyxp8AgOL/jvLgYA/uV0cMbe43ElF1JA==} 322 | engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0, npm: '>=7.0.0'} 323 | dependencies: 324 | mdn-data: 2.0.28 325 | source-map-js: 1.0.2 326 | dev: true 327 | 328 | /cssdb/7.0.2: 329 | resolution: {integrity: sha512-Vm4b6P/PifADu0a76H0DKRNVWq3Rq9xa/Nx6oEMUBJlwTUuZoZ3dkZxo8Gob3UEL53Cq+Ma1GBgISed6XEBs3w==} 330 | dev: true 331 | 332 | /cssesc/3.0.0: 333 | resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==} 334 | engines: {node: '>=4'} 335 | hasBin: true 336 | dev: true 337 | 338 | /dependency-graph/0.11.0: 339 | resolution: {integrity: sha512-JeMq7fEshyepOWDfcfHK06N3MhyPhz++vtqWhMT5O9A3K42rdsEDpfdVqjaqaAhsw6a+ZqeDvQVtD0hFHQWrzg==} 340 | engines: {node: '>= 0.6.0'} 341 | dev: true 342 | 343 | /electron-to-chromium/1.4.283: 344 | resolution: {integrity: sha512-g6RQ9zCOV+U5QVHW9OpFR7rdk/V7xfopNXnyAamdpFgCHgZ1sjI8VuR1+zG2YG/TZk+tQ8mpNkug4P8FU0fuOA==} 345 | dev: true 346 | 347 | /entities/4.4.0: 348 | resolution: {integrity: sha512-oYp7156SP8LkeGD0GF85ad1X9Ai79WtRsZ2gxJqtBuzH+98YUV6jkHEKlZkMbcrjJjIVJNIDP/3WL9wQkoPbWA==} 349 | engines: {node: '>=0.12'} 350 | dev: true 351 | 352 | /esbuild-android-64/0.15.10: 353 | resolution: {integrity: sha512-UI7krF8OYO1N7JYTgLT9ML5j4+45ra3amLZKx7LO3lmLt1Ibn8t3aZbX5Pu4BjWiqDuJ3m/hsvhPhK/5Y/YpnA==} 354 | engines: {node: '>=12'} 355 | cpu: [x64] 356 | os: [android] 357 | requiresBuild: true 358 | dev: true 359 | optional: true 360 | 361 | /esbuild-android-arm64/0.15.10: 362 | resolution: {integrity: sha512-EOt55D6xBk5O05AK8brXUbZmoFj4chM8u3riGflLa6ziEoVvNjRdD7Cnp82NHQGfSHgYR06XsPI8/sMuA/cUwg==} 363 | engines: {node: '>=12'} 364 | cpu: [arm64] 365 | os: [android] 366 | requiresBuild: true 367 | dev: true 368 | optional: true 369 | 370 | /esbuild-darwin-64/0.15.10: 371 | resolution: {integrity: sha512-hbDJugTicqIm+WKZgp208d7FcXcaK8j2c0l+fqSJ3d2AzQAfjEYDRM3Z2oMeqSJ9uFxyj/muSACLdix7oTstRA==} 372 | engines: {node: '>=12'} 373 | cpu: [x64] 374 | os: [darwin] 375 | requiresBuild: true 376 | dev: true 377 | optional: true 378 | 379 | /esbuild-darwin-arm64/0.15.10: 380 | resolution: {integrity: sha512-M1t5+Kj4IgSbYmunf2BB6EKLkWUq+XlqaFRiGOk8bmBapu9bCDrxjf4kUnWn59Dka3I27EiuHBKd1rSO4osLFQ==} 381 | engines: {node: '>=12'} 382 | cpu: [arm64] 383 | os: [darwin] 384 | requiresBuild: true 385 | dev: true 386 | optional: true 387 | 388 | /esbuild-freebsd-64/0.15.10: 389 | resolution: {integrity: sha512-KMBFMa7C8oc97nqDdoZwtDBX7gfpolkk6Bcmj6YFMrtCMVgoU/x2DI1p74DmYl7CSS6Ppa3xgemrLrr5IjIn0w==} 390 | engines: {node: '>=12'} 391 | cpu: [x64] 392 | os: [freebsd] 393 | requiresBuild: true 394 | dev: true 395 | optional: true 396 | 397 | /esbuild-freebsd-arm64/0.15.10: 398 | resolution: {integrity: sha512-m2KNbuCX13yQqLlbSojFMHpewbn8wW5uDS6DxRpmaZKzyq8Dbsku6hHvh2U+BcLwWY4mpgXzFUoENEf7IcioGg==} 399 | engines: {node: '>=12'} 400 | cpu: [arm64] 401 | os: [freebsd] 402 | requiresBuild: true 403 | dev: true 404 | optional: true 405 | 406 | /esbuild-linux-32/0.15.10: 407 | resolution: {integrity: sha512-guXrwSYFAvNkuQ39FNeV4sNkNms1bLlA5vF1H0cazZBOLdLFIny6BhT+TUbK/hdByMQhtWQ5jI9VAmPKbVPu1w==} 408 | engines: {node: '>=12'} 409 | cpu: [ia32] 410 | os: [linux] 411 | requiresBuild: true 412 | dev: true 413 | optional: true 414 | 415 | /esbuild-linux-64/0.15.10: 416 | resolution: {integrity: sha512-jd8XfaSJeucMpD63YNMO1JCrdJhckHWcMv6O233bL4l6ogQKQOxBYSRP/XLWP+6kVTu0obXovuckJDcA0DKtQA==} 417 | engines: {node: '>=12'} 418 | cpu: [x64] 419 | os: [linux] 420 | requiresBuild: true 421 | dev: true 422 | optional: true 423 | 424 | /esbuild-linux-arm/0.15.10: 425 | resolution: {integrity: sha512-6N8vThLL/Lysy9y4Ex8XoLQAlbZKUyExCWyayGi2KgTBelKpPgj6RZnUaKri0dHNPGgReJriKVU6+KDGQwn10A==} 426 | engines: {node: '>=12'} 427 | cpu: [arm] 428 | os: [linux] 429 | requiresBuild: true 430 | dev: true 431 | optional: true 432 | 433 | /esbuild-linux-arm64/0.15.10: 434 | resolution: {integrity: sha512-GByBi4fgkvZFTHFDYNftu1DQ1GzR23jws0oWyCfhnI7eMOe+wgwWrc78dbNk709Ivdr/evefm2PJiUBMiusS1A==} 435 | engines: {node: '>=12'} 436 | cpu: [arm64] 437 | os: [linux] 438 | requiresBuild: true 439 | dev: true 440 | optional: true 441 | 442 | /esbuild-linux-mips64le/0.15.10: 443 | resolution: {integrity: sha512-BxP+LbaGVGIdQNJUNF7qpYjEGWb0YyHVSKqYKrn+pTwH/SiHUxFyJYSP3pqkku61olQiSBnSmWZ+YUpj78Tw7Q==} 444 | engines: {node: '>=12'} 445 | cpu: [mips64el] 446 | os: [linux] 447 | requiresBuild: true 448 | dev: true 449 | optional: true 450 | 451 | /esbuild-linux-ppc64le/0.15.10: 452 | resolution: {integrity: sha512-LoSQCd6498PmninNgqd/BR7z3Bsk/mabImBWuQ4wQgmQEeanzWd5BQU2aNi9mBURCLgyheuZS6Xhrw5luw3OkQ==} 453 | engines: {node: '>=12'} 454 | cpu: [ppc64] 455 | os: [linux] 456 | requiresBuild: true 457 | dev: true 458 | optional: true 459 | 460 | /esbuild-linux-riscv64/0.15.10: 461 | resolution: {integrity: sha512-Lrl9Cr2YROvPV4wmZ1/g48httE8z/5SCiXIyebiB5N8VT7pX3t6meI7TQVHw/wQpqP/AF4SksDuFImPTM7Z32Q==} 462 | engines: {node: '>=12'} 463 | cpu: [riscv64] 464 | os: [linux] 465 | requiresBuild: true 466 | dev: true 467 | optional: true 468 | 469 | /esbuild-linux-s390x/0.15.10: 470 | resolution: {integrity: sha512-ReP+6q3eLVVP2lpRrvl5EodKX7EZ1bS1/z5j6hsluAlZP5aHhk6ghT6Cq3IANvvDdscMMCB4QEbI+AjtvoOFpA==} 471 | engines: {node: '>=12'} 472 | cpu: [s390x] 473 | os: [linux] 474 | requiresBuild: true 475 | dev: true 476 | optional: true 477 | 478 | /esbuild-netbsd-64/0.15.10: 479 | resolution: {integrity: sha512-iGDYtJCMCqldMskQ4eIV+QSS/CuT7xyy9i2/FjpKvxAuCzrESZXiA1L64YNj6/afuzfBe9i8m/uDkFHy257hTw==} 480 | engines: {node: '>=12'} 481 | cpu: [x64] 482 | os: [netbsd] 483 | requiresBuild: true 484 | dev: true 485 | optional: true 486 | 487 | /esbuild-openbsd-64/0.15.10: 488 | resolution: {integrity: sha512-ftMMIwHWrnrYnvuJQRJs/Smlcb28F9ICGde/P3FUTCgDDM0N7WA0o9uOR38f5Xe2/OhNCgkjNeb7QeaE3cyWkQ==} 489 | engines: {node: '>=12'} 490 | cpu: [x64] 491 | os: [openbsd] 492 | requiresBuild: true 493 | dev: true 494 | optional: true 495 | 496 | /esbuild-sunos-64/0.15.10: 497 | resolution: {integrity: sha512-mf7hBL9Uo2gcy2r3rUFMjVpTaGpFJJE5QTDDqUFf1632FxteYANffDZmKbqX0PfeQ2XjUDE604IcE7OJeoHiyg==} 498 | engines: {node: '>=12'} 499 | cpu: [x64] 500 | os: [sunos] 501 | requiresBuild: true 502 | dev: true 503 | optional: true 504 | 505 | /esbuild-windows-32/0.15.10: 506 | resolution: {integrity: sha512-ttFVo+Cg8b5+qHmZHbEc8Vl17kCleHhLzgT8X04y8zudEApo0PxPg9Mz8Z2cKH1bCYlve1XL8LkyXGFjtUYeGg==} 507 | engines: {node: '>=12'} 508 | cpu: [ia32] 509 | os: [win32] 510 | requiresBuild: true 511 | dev: true 512 | optional: true 513 | 514 | /esbuild-windows-64/0.15.10: 515 | resolution: {integrity: sha512-2H0gdsyHi5x+8lbng3hLbxDWR7mKHWh5BXZGKVG830KUmXOOWFE2YKJ4tHRkejRduOGDrBvHBriYsGtmTv3ntA==} 516 | engines: {node: '>=12'} 517 | cpu: [x64] 518 | os: [win32] 519 | requiresBuild: true 520 | dev: true 521 | optional: true 522 | 523 | /esbuild-windows-arm64/0.15.10: 524 | resolution: {integrity: sha512-S+th4F+F8VLsHLR0zrUcG+Et4hx0RKgK1eyHc08kztmLOES8BWwMiaGdoW9hiXuzznXQ0I/Fg904MNbr11Nktw==} 525 | engines: {node: '>=12'} 526 | cpu: [arm64] 527 | os: [win32] 528 | requiresBuild: true 529 | dev: true 530 | optional: true 531 | 532 | /esbuild/0.15.10: 533 | resolution: {integrity: sha512-N7wBhfJ/E5fzn/SpNgX+oW2RLRjwaL8Y0ezqNqhjD6w0H2p0rDuEz2FKZqpqLnO8DCaWumKe8dsC/ljvVSSxng==} 534 | engines: {node: '>=12'} 535 | hasBin: true 536 | requiresBuild: true 537 | optionalDependencies: 538 | '@esbuild/android-arm': 0.15.10 539 | '@esbuild/linux-loong64': 0.15.10 540 | esbuild-android-64: 0.15.10 541 | esbuild-android-arm64: 0.15.10 542 | esbuild-darwin-64: 0.15.10 543 | esbuild-darwin-arm64: 0.15.10 544 | esbuild-freebsd-64: 0.15.10 545 | esbuild-freebsd-arm64: 0.15.10 546 | esbuild-linux-32: 0.15.10 547 | esbuild-linux-64: 0.15.10 548 | esbuild-linux-arm: 0.15.10 549 | esbuild-linux-arm64: 0.15.10 550 | esbuild-linux-mips64le: 0.15.10 551 | esbuild-linux-ppc64le: 0.15.10 552 | esbuild-linux-riscv64: 0.15.10 553 | esbuild-linux-s390x: 0.15.10 554 | esbuild-netbsd-64: 0.15.10 555 | esbuild-openbsd-64: 0.15.10 556 | esbuild-sunos-64: 0.15.10 557 | esbuild-windows-32: 0.15.10 558 | esbuild-windows-64: 0.15.10 559 | esbuild-windows-arm64: 0.15.10 560 | dev: true 561 | 562 | /escalade/3.1.1: 563 | resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==} 564 | engines: {node: '>=6'} 565 | dev: true 566 | 567 | /fast-glob/3.2.12: 568 | resolution: {integrity: sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==} 569 | engines: {node: '>=8.6.0'} 570 | dependencies: 571 | '@nodelib/fs.stat': 2.0.5 572 | '@nodelib/fs.walk': 1.2.8 573 | glob-parent: 5.1.2 574 | merge2: 1.4.1 575 | micromatch: 4.0.5 576 | dev: true 577 | 578 | /fastq/1.13.0: 579 | resolution: {integrity: sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==} 580 | dependencies: 581 | reusify: 1.0.4 582 | dev: true 583 | 584 | /fill-range/7.0.1: 585 | resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==} 586 | engines: {node: '>=8'} 587 | dependencies: 588 | to-regex-range: 5.0.1 589 | dev: true 590 | 591 | /fraction.js/4.2.0: 592 | resolution: {integrity: sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==} 593 | dev: true 594 | 595 | /fsevents/2.3.2: 596 | resolution: {integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==} 597 | engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} 598 | os: [darwin] 599 | requiresBuild: true 600 | dev: true 601 | optional: true 602 | 603 | /function-bind/1.1.1: 604 | resolution: {integrity: sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==} 605 | dev: true 606 | 607 | /glob-parent/5.1.2: 608 | resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} 609 | engines: {node: '>= 6'} 610 | dependencies: 611 | is-glob: 4.0.3 612 | dev: true 613 | 614 | /has/1.0.3: 615 | resolution: {integrity: sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==} 616 | engines: {node: '>= 0.4.0'} 617 | dependencies: 618 | function-bind: 1.1.1 619 | dev: true 620 | 621 | /is-core-module/2.10.0: 622 | resolution: {integrity: sha512-Erxj2n/LDAZ7H8WNJXd9tw38GYM3dv8rk8Zcs+jJuxYTW7sozH+SS8NtrSjVL1/vpLvWi1hxy96IzjJ3EHTJJg==} 623 | dependencies: 624 | has: 1.0.3 625 | dev: true 626 | 627 | /is-extglob/2.1.1: 628 | resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} 629 | engines: {node: '>=0.10.0'} 630 | dev: true 631 | 632 | /is-glob/4.0.3: 633 | resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} 634 | engines: {node: '>=0.10.0'} 635 | dependencies: 636 | is-extglob: 2.1.1 637 | dev: true 638 | 639 | /is-number/7.0.0: 640 | resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} 641 | engines: {node: '>=0.12.0'} 642 | dev: true 643 | 644 | /mdn-data/2.0.28: 645 | resolution: {integrity: sha512-aylIc7Z9y4yzHYAJNuESG3hfhC+0Ibp/MAMiaOZgNv4pmEdFyfZhhhny4MNiAfWdBQ1RQ2mfDWmM1x8SvGyp8g==} 646 | dev: true 647 | 648 | /merge2/1.4.1: 649 | resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} 650 | engines: {node: '>= 8'} 651 | dev: true 652 | 653 | /micromatch/4.0.5: 654 | resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==} 655 | engines: {node: '>=8.6'} 656 | dependencies: 657 | braces: 3.0.2 658 | picomatch: 2.3.1 659 | dev: true 660 | 661 | /nanoid/3.3.4: 662 | resolution: {integrity: sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==} 663 | engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} 664 | hasBin: true 665 | dev: true 666 | 667 | /nanoid/4.0.0: 668 | resolution: {integrity: sha512-IgBP8piMxe/gf73RTQx7hmnhwz0aaEXYakvqZyE302IXW3HyVNhdNGC+O2MwMAVhLEnvXlvKtGbtJf6wvHihCg==} 669 | engines: {node: ^14 || ^16 || >=18} 670 | hasBin: true 671 | dev: true 672 | 673 | /node-releases/2.0.6: 674 | resolution: {integrity: sha512-PiVXnNuFm5+iYkLBNeq5211hvO38y63T0i2KKh2KnUs3RpzJ+JtODFjkD8yjLwnDkTYF1eKXheUwdssR+NRZdg==} 675 | dev: true 676 | 677 | /normalize-path/3.0.0: 678 | resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} 679 | engines: {node: '>=0.10.0'} 680 | dev: true 681 | 682 | /normalize-range/0.1.2: 683 | resolution: {integrity: sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==} 684 | engines: {node: '>=0.10.0'} 685 | dev: true 686 | 687 | /open-props/1.4.16: 688 | resolution: {integrity: sha512-kPIgGYjan1aKl3Vp1pG9V5TgH7CTaDWm3ndllTgr5gBQ3tu+F11dZKpZiP1+o/aCSCx8WMo15ARsFYxCAJXxHg==} 689 | dev: false 690 | 691 | /parse5/7.1.1: 692 | resolution: {integrity: sha512-kwpuwzB+px5WUg9pyK0IcK/shltJN5/OVhQagxhCQNtT9Y9QRZqNY2e1cmbu/paRh5LMnz/oVTVLBpjFmMZhSg==} 693 | dependencies: 694 | entities: 4.4.0 695 | dev: true 696 | 697 | /path-parse/1.0.7: 698 | resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} 699 | dev: true 700 | 701 | /picocolors/1.0.0: 702 | resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==} 703 | dev: true 704 | 705 | /picomatch/2.3.1: 706 | resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} 707 | engines: {node: '>=8.6'} 708 | dev: true 709 | 710 | /postcss-attribute-case-insensitive/5.0.2_postcss@8.4.18: 711 | resolution: {integrity: sha512-XIidXV8fDr0kKt28vqki84fRK8VW8eTuIa4PChv2MqKuT6C9UjmSKzen6KaWhWEoYvwxFCa7n/tC1SZ3tyq4SQ==} 712 | engines: {node: ^12 || ^14 || >=16} 713 | peerDependencies: 714 | postcss: ^8.2 715 | dependencies: 716 | postcss: 8.4.18 717 | postcss-selector-parser: 6.0.10 718 | dev: true 719 | 720 | /postcss-clamp/4.1.0_postcss@8.4.18: 721 | resolution: {integrity: sha512-ry4b1Llo/9zz+PKC+030KUnPITTJAHeOwjfAyyB60eT0AorGLdzp52s31OsPRHRf8NchkgFoG2y6fCfn1IV1Ow==} 722 | engines: {node: '>=7.6.0'} 723 | peerDependencies: 724 | postcss: ^8.4.6 725 | dependencies: 726 | postcss: 8.4.18 727 | postcss-value-parser: 4.2.0 728 | dev: true 729 | 730 | /postcss-color-functional-notation/4.2.4_postcss@8.4.18: 731 | resolution: {integrity: sha512-2yrTAUZUab9s6CpxkxC4rVgFEVaR6/2Pipvi6qcgvnYiVqZcbDHEoBDhrXzyb7Efh2CCfHQNtcqWcIruDTIUeg==} 732 | engines: {node: ^12 || ^14 || >=16} 733 | peerDependencies: 734 | postcss: ^8.2 735 | dependencies: 736 | postcss: 8.4.18 737 | postcss-value-parser: 4.2.0 738 | dev: true 739 | 740 | /postcss-color-hex-alpha/8.0.4_postcss@8.4.18: 741 | resolution: {integrity: sha512-nLo2DCRC9eE4w2JmuKgVA3fGL3d01kGq752pVALF68qpGLmx2Qrk91QTKkdUqqp45T1K1XV8IhQpcu1hoAQflQ==} 742 | engines: {node: ^12 || ^14 || >=16} 743 | peerDependencies: 744 | postcss: ^8.4 745 | dependencies: 746 | postcss: 8.4.18 747 | postcss-value-parser: 4.2.0 748 | dev: true 749 | 750 | /postcss-color-rebeccapurple/7.1.1_postcss@8.4.18: 751 | resolution: {integrity: sha512-pGxkuVEInwLHgkNxUc4sdg4g3py7zUeCQ9sMfwyHAT+Ezk8a4OaaVZ8lIY5+oNqA/BXXgLyXv0+5wHP68R79hg==} 752 | engines: {node: ^12 || ^14 || >=16} 753 | peerDependencies: 754 | postcss: ^8.2 755 | dependencies: 756 | postcss: 8.4.18 757 | postcss-value-parser: 4.2.0 758 | dev: true 759 | 760 | /postcss-custom-media/8.0.2_postcss@8.4.18: 761 | resolution: {integrity: sha512-7yi25vDAoHAkbhAzX9dHx2yc6ntS4jQvejrNcC+csQJAXjj15e7VcWfMgLqBNAbOvqi5uIa9huOVwdHbf+sKqg==} 762 | engines: {node: ^12 || ^14 || >=16} 763 | peerDependencies: 764 | postcss: ^8.3 765 | dependencies: 766 | postcss: 8.4.18 767 | postcss-value-parser: 4.2.0 768 | dev: true 769 | 770 | /postcss-custom-properties/12.1.9_postcss@8.4.18: 771 | resolution: {integrity: sha512-/E7PRvK8DAVljBbeWrcEQJPG72jaImxF3vvCNFwv9cC8CzigVoNIpeyfnJzphnN3Fd8/auBf5wvkw6W9MfmTyg==} 772 | engines: {node: ^12 || ^14 || >=16} 773 | peerDependencies: 774 | postcss: ^8.2 775 | dependencies: 776 | postcss: 8.4.18 777 | postcss-value-parser: 4.2.0 778 | dev: true 779 | 780 | /postcss-custom-selectors/6.0.3_postcss@8.4.18: 781 | resolution: {integrity: sha512-fgVkmyiWDwmD3JbpCmB45SvvlCD6z9CG6Ie6Iere22W5aHea6oWa7EM2bpnv2Fj3I94L3VbtvX9KqwSi5aFzSg==} 782 | engines: {node: ^12 || ^14 || >=16} 783 | peerDependencies: 784 | postcss: ^8.3 785 | dependencies: 786 | postcss: 8.4.18 787 | postcss-selector-parser: 6.0.10 788 | dev: true 789 | 790 | /postcss-dir-pseudo-class/6.0.5_postcss@8.4.18: 791 | resolution: {integrity: sha512-eqn4m70P031PF7ZQIvSgy9RSJ5uI2171O/OO/zcRNYpJbvaeKFUlar1aJ7rmgiQtbm0FSPsRewjpdS0Oew7MPA==} 792 | engines: {node: ^12 || ^14 || >=16} 793 | peerDependencies: 794 | postcss: ^8.2 795 | dependencies: 796 | postcss: 8.4.18 797 | postcss-selector-parser: 6.0.10 798 | dev: true 799 | 800 | /postcss-double-position-gradients/3.1.2_postcss@8.4.18: 801 | resolution: {integrity: sha512-GX+FuE/uBR6eskOK+4vkXgT6pDkexLokPaz/AbJna9s5Kzp/yl488pKPjhy0obB475ovfT1Wv8ho7U/cHNaRgQ==} 802 | engines: {node: ^12 || ^14 || >=16} 803 | peerDependencies: 804 | postcss: ^8.2 805 | dependencies: 806 | '@csstools/postcss-progressive-custom-properties': 1.3.0_postcss@8.4.18 807 | postcss: 8.4.18 808 | postcss-value-parser: 4.2.0 809 | dev: true 810 | 811 | /postcss-env-function/4.0.6_postcss@8.4.18: 812 | resolution: {integrity: sha512-kpA6FsLra+NqcFnL81TnsU+Z7orGtDTxcOhl6pwXeEq1yFPpRMkCDpHhrz8CFQDr/Wfm0jLiNQ1OsGGPjlqPwA==} 813 | engines: {node: ^12 || ^14 || >=16} 814 | peerDependencies: 815 | postcss: ^8.4 816 | dependencies: 817 | postcss: 8.4.18 818 | postcss-value-parser: 4.2.0 819 | dev: true 820 | 821 | /postcss-focus-visible/6.0.4_postcss@8.4.18: 822 | resolution: {integrity: sha512-QcKuUU/dgNsstIK6HELFRT5Y3lbrMLEOwG+A4s5cA+fx3A3y/JTq3X9LaOj3OC3ALH0XqyrgQIgey/MIZ8Wczw==} 823 | engines: {node: ^12 || ^14 || >=16} 824 | peerDependencies: 825 | postcss: ^8.4 826 | dependencies: 827 | postcss: 8.4.18 828 | postcss-selector-parser: 6.0.10 829 | dev: true 830 | 831 | /postcss-focus-within/5.0.4_postcss@8.4.18: 832 | resolution: {integrity: sha512-vvjDN++C0mu8jz4af5d52CB184ogg/sSxAFS+oUJQq2SuCe7T5U2iIsVJtsCp2d6R4j0jr5+q3rPkBVZkXD9fQ==} 833 | engines: {node: ^12 || ^14 || >=16} 834 | peerDependencies: 835 | postcss: ^8.4 836 | dependencies: 837 | postcss: 8.4.18 838 | postcss-selector-parser: 6.0.10 839 | dev: true 840 | 841 | /postcss-font-variant/5.0.0_postcss@8.4.18: 842 | resolution: {integrity: sha512-1fmkBaCALD72CK2a9i468mA/+tr9/1cBxRRMXOUaZqO43oWPR5imcyPjXwuv7PXbCid4ndlP5zWhidQVVa3hmA==} 843 | peerDependencies: 844 | postcss: ^8.1.0 845 | dependencies: 846 | postcss: 8.4.18 847 | dev: true 848 | 849 | /postcss-gap-properties/3.0.5_postcss@8.4.18: 850 | resolution: {integrity: sha512-IuE6gKSdoUNcvkGIqdtjtcMtZIFyXZhmFd5RUlg97iVEvp1BZKV5ngsAjCjrVy+14uhGBQl9tzmi1Qwq4kqVOg==} 851 | engines: {node: ^12 || ^14 || >=16} 852 | peerDependencies: 853 | postcss: ^8.2 854 | dependencies: 855 | postcss: 8.4.18 856 | dev: true 857 | 858 | /postcss-image-set-function/4.0.7_postcss@8.4.18: 859 | resolution: {integrity: sha512-9T2r9rsvYzm5ndsBE8WgtrMlIT7VbtTfE7b3BQnudUqnBcBo7L758oc+o+pdj/dUV0l5wjwSdjeOH2DZtfv8qw==} 860 | engines: {node: ^12 || ^14 || >=16} 861 | peerDependencies: 862 | postcss: ^8.2 863 | dependencies: 864 | postcss: 8.4.18 865 | postcss-value-parser: 4.2.0 866 | dev: true 867 | 868 | /postcss-initial/4.0.1_postcss@8.4.18: 869 | resolution: {integrity: sha512-0ueD7rPqX8Pn1xJIjay0AZeIuDoF+V+VvMt/uOnn+4ezUKhZM/NokDeP6DwMNyIoYByuN/94IQnt5FEkaN59xQ==} 870 | peerDependencies: 871 | postcss: ^8.0.0 872 | dependencies: 873 | postcss: 8.4.18 874 | dev: true 875 | 876 | /postcss-lab-function/4.2.1_postcss@8.4.18: 877 | resolution: {integrity: sha512-xuXll4isR03CrQsmxyz92LJB2xX9n+pZJ5jE9JgcnmsCammLyKdlzrBin+25dy6wIjfhJpKBAN80gsTlCgRk2w==} 878 | engines: {node: ^12 || ^14 || >=16} 879 | peerDependencies: 880 | postcss: ^8.2 881 | dependencies: 882 | '@csstools/postcss-progressive-custom-properties': 1.3.0_postcss@8.4.18 883 | postcss: 8.4.18 884 | postcss-value-parser: 4.2.0 885 | dev: true 886 | 887 | /postcss-logical/5.0.4_postcss@8.4.18: 888 | resolution: {integrity: sha512-RHXxplCeLh9VjinvMrZONq7im4wjWGlRJAqmAVLXyZaXwfDWP73/oq4NdIp+OZwhQUMj0zjqDfM5Fj7qby+B4g==} 889 | engines: {node: ^12 || ^14 || >=16} 890 | peerDependencies: 891 | postcss: ^8.4 892 | dependencies: 893 | postcss: 8.4.18 894 | dev: true 895 | 896 | /postcss-media-minmax/5.0.0_postcss@8.4.18: 897 | resolution: {integrity: sha512-yDUvFf9QdFZTuCUg0g0uNSHVlJ5X1lSzDZjPSFaiCWvjgsvu8vEVxtahPrLMinIDEEGnx6cBe6iqdx5YWz08wQ==} 898 | engines: {node: '>=10.0.0'} 899 | peerDependencies: 900 | postcss: ^8.1.0 901 | dependencies: 902 | postcss: 8.4.18 903 | dev: true 904 | 905 | /postcss-nesting/10.2.0_postcss@8.4.18: 906 | resolution: {integrity: sha512-EwMkYchxiDiKUhlJGzWsD9b2zvq/r2SSubcRrgP+jujMXFzqvANLt16lJANC+5uZ6hjI7lpRmI6O8JIl+8l1KA==} 907 | engines: {node: ^12 || ^14 || >=16} 908 | peerDependencies: 909 | postcss: ^8.2 910 | dependencies: 911 | '@csstools/selector-specificity': 2.0.2_dvkg4kkb622mvceygg47xxdz3a 912 | postcss: 8.4.18 913 | postcss-selector-parser: 6.0.10 914 | dev: true 915 | 916 | /postcss-opacity-percentage/1.1.2: 917 | resolution: {integrity: sha512-lyUfF7miG+yewZ8EAk9XUBIlrHyUE6fijnesuz+Mj5zrIHIEw6KcIZSOk/elVMqzLvREmXB83Zi/5QpNRYd47w==} 918 | engines: {node: ^12 || ^14 || >=16} 919 | dev: true 920 | 921 | /postcss-overflow-shorthand/3.0.4_postcss@8.4.18: 922 | resolution: {integrity: sha512-otYl/ylHK8Y9bcBnPLo3foYFLL6a6Ak+3EQBPOTR7luMYCOsiVTUk1iLvNf6tVPNGXcoL9Hoz37kpfriRIFb4A==} 923 | engines: {node: ^12 || ^14 || >=16} 924 | peerDependencies: 925 | postcss: ^8.2 926 | dependencies: 927 | postcss: 8.4.18 928 | postcss-value-parser: 4.2.0 929 | dev: true 930 | 931 | /postcss-page-break/3.0.4_postcss@8.4.18: 932 | resolution: {integrity: sha512-1JGu8oCjVXLa9q9rFTo4MbeeA5FMe00/9C7lN4va606Rdb+HkxXtXsmEDrIraQ11fGz/WvKWa8gMuCKkrXpTsQ==} 933 | peerDependencies: 934 | postcss: ^8 935 | dependencies: 936 | postcss: 8.4.18 937 | dev: true 938 | 939 | /postcss-place/7.0.5_postcss@8.4.18: 940 | resolution: {integrity: sha512-wR8igaZROA6Z4pv0d+bvVrvGY4GVHihBCBQieXFY3kuSuMyOmEnnfFzHl/tQuqHZkfkIVBEbDvYcFfHmpSet9g==} 941 | engines: {node: ^12 || ^14 || >=16} 942 | peerDependencies: 943 | postcss: ^8.2 944 | dependencies: 945 | postcss: 8.4.18 946 | postcss-value-parser: 4.2.0 947 | dev: true 948 | 949 | /postcss-preset-env/7.8.2_postcss@8.4.18: 950 | resolution: {integrity: sha512-rSMUEaOCnovKnwc5LvBDHUDzpGP+nrUeWZGWt9M72fBvckCi45JmnJigUr4QG4zZeOHmOCNCZnd2LKDvP++ZuQ==} 951 | engines: {node: ^12 || ^14 || >=16} 952 | peerDependencies: 953 | postcss: ^8.2 954 | dependencies: 955 | '@csstools/postcss-cascade-layers': 1.1.1_postcss@8.4.18 956 | '@csstools/postcss-color-function': 1.1.1_postcss@8.4.18 957 | '@csstools/postcss-font-format-keywords': 1.0.1_postcss@8.4.18 958 | '@csstools/postcss-hwb-function': 1.0.2_postcss@8.4.18 959 | '@csstools/postcss-ic-unit': 1.0.1_postcss@8.4.18 960 | '@csstools/postcss-is-pseudo-class': 2.0.7_postcss@8.4.18 961 | '@csstools/postcss-nested-calc': 1.0.0_postcss@8.4.18 962 | '@csstools/postcss-normalize-display-values': 1.0.1_postcss@8.4.18 963 | '@csstools/postcss-oklab-function': 1.1.1_postcss@8.4.18 964 | '@csstools/postcss-progressive-custom-properties': 1.3.0_postcss@8.4.18 965 | '@csstools/postcss-stepped-value-functions': 1.0.1_postcss@8.4.18 966 | '@csstools/postcss-text-decoration-shorthand': 1.0.0_postcss@8.4.18 967 | '@csstools/postcss-trigonometric-functions': 1.0.2_postcss@8.4.18 968 | '@csstools/postcss-unset-value': 1.0.2_postcss@8.4.18 969 | autoprefixer: 10.4.12_postcss@8.4.18 970 | browserslist: 4.21.4 971 | css-blank-pseudo: 3.0.3_postcss@8.4.18 972 | css-has-pseudo: 3.0.4_postcss@8.4.18 973 | css-prefers-color-scheme: 6.0.3_postcss@8.4.18 974 | cssdb: 7.0.2 975 | postcss: 8.4.18 976 | postcss-attribute-case-insensitive: 5.0.2_postcss@8.4.18 977 | postcss-clamp: 4.1.0_postcss@8.4.18 978 | postcss-color-functional-notation: 4.2.4_postcss@8.4.18 979 | postcss-color-hex-alpha: 8.0.4_postcss@8.4.18 980 | postcss-color-rebeccapurple: 7.1.1_postcss@8.4.18 981 | postcss-custom-media: 8.0.2_postcss@8.4.18 982 | postcss-custom-properties: 12.1.9_postcss@8.4.18 983 | postcss-custom-selectors: 6.0.3_postcss@8.4.18 984 | postcss-dir-pseudo-class: 6.0.5_postcss@8.4.18 985 | postcss-double-position-gradients: 3.1.2_postcss@8.4.18 986 | postcss-env-function: 4.0.6_postcss@8.4.18 987 | postcss-focus-visible: 6.0.4_postcss@8.4.18 988 | postcss-focus-within: 5.0.4_postcss@8.4.18 989 | postcss-font-variant: 5.0.0_postcss@8.4.18 990 | postcss-gap-properties: 3.0.5_postcss@8.4.18 991 | postcss-image-set-function: 4.0.7_postcss@8.4.18 992 | postcss-initial: 4.0.1_postcss@8.4.18 993 | postcss-lab-function: 4.2.1_postcss@8.4.18 994 | postcss-logical: 5.0.4_postcss@8.4.18 995 | postcss-media-minmax: 5.0.0_postcss@8.4.18 996 | postcss-nesting: 10.2.0_postcss@8.4.18 997 | postcss-opacity-percentage: 1.1.2 998 | postcss-overflow-shorthand: 3.0.4_postcss@8.4.18 999 | postcss-page-break: 3.0.4_postcss@8.4.18 1000 | postcss-place: 7.0.5_postcss@8.4.18 1001 | postcss-pseudo-class-any-link: 7.1.6_postcss@8.4.18 1002 | postcss-replace-overflow-wrap: 4.0.0_postcss@8.4.18 1003 | postcss-selector-not: 6.0.1_postcss@8.4.18 1004 | postcss-value-parser: 4.2.0 1005 | dev: true 1006 | 1007 | /postcss-pseudo-class-any-link/7.1.6_postcss@8.4.18: 1008 | resolution: {integrity: sha512-9sCtZkO6f/5ML9WcTLcIyV1yz9D1rf0tWc+ulKcvV30s0iZKS/ONyETvoWsr6vnrmW+X+KmuK3gV/w5EWnT37w==} 1009 | engines: {node: ^12 || ^14 || >=16} 1010 | peerDependencies: 1011 | postcss: ^8.2 1012 | dependencies: 1013 | postcss: 8.4.18 1014 | postcss-selector-parser: 6.0.10 1015 | dev: true 1016 | 1017 | /postcss-replace-overflow-wrap/4.0.0_postcss@8.4.18: 1018 | resolution: {integrity: sha512-KmF7SBPphT4gPPcKZc7aDkweHiKEEO8cla/GjcBK+ckKxiZslIu3C4GCRW3DNfL0o7yW7kMQu9xlZ1kXRXLXtw==} 1019 | peerDependencies: 1020 | postcss: ^8.0.3 1021 | dependencies: 1022 | postcss: 8.4.18 1023 | dev: true 1024 | 1025 | /postcss-selector-not/6.0.1_postcss@8.4.18: 1026 | resolution: {integrity: sha512-1i9affjAe9xu/y9uqWH+tD4r6/hDaXJruk8xn2x1vzxC2U3J3LKO3zJW4CyxlNhA56pADJ/djpEwpH1RClI2rQ==} 1027 | engines: {node: ^12 || ^14 || >=16} 1028 | peerDependencies: 1029 | postcss: ^8.2 1030 | dependencies: 1031 | postcss: 8.4.18 1032 | postcss-selector-parser: 6.0.10 1033 | dev: true 1034 | 1035 | /postcss-selector-parser/6.0.10: 1036 | resolution: {integrity: sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w==} 1037 | engines: {node: '>=4'} 1038 | dependencies: 1039 | cssesc: 3.0.0 1040 | util-deprecate: 1.0.2 1041 | dev: true 1042 | 1043 | /postcss-value-parser/4.2.0: 1044 | resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==} 1045 | dev: true 1046 | 1047 | /postcss/8.4.16: 1048 | resolution: {integrity: sha512-ipHE1XBvKzm5xI7hiHCZJCSugxvsdq2mPnsq5+UF+VHCjiBvtDrlxJfMBToWaP9D5XlgNmcFGqoHmUn0EYEaRQ==} 1049 | engines: {node: ^10 || ^12 || >=14} 1050 | dependencies: 1051 | nanoid: 3.3.4 1052 | picocolors: 1.0.0 1053 | source-map-js: 1.0.2 1054 | dev: true 1055 | 1056 | /postcss/8.4.18: 1057 | resolution: {integrity: sha512-Wi8mWhncLJm11GATDaQKobXSNEYGUHeQLiQqDFG1qQ5UTDPTEvKw0Xt5NsTpktGTwLps3ByrWsBrG0rB8YQ9oA==} 1058 | engines: {node: ^10 || ^12 || >=14} 1059 | dependencies: 1060 | nanoid: 3.3.4 1061 | picocolors: 1.0.0 1062 | source-map-js: 1.0.2 1063 | dev: true 1064 | 1065 | /queue-microtask/1.2.3: 1066 | resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} 1067 | dev: true 1068 | 1069 | /resolve/1.22.1: 1070 | resolution: {integrity: sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==} 1071 | hasBin: true 1072 | dependencies: 1073 | is-core-module: 2.10.0 1074 | path-parse: 1.0.7 1075 | supports-preserve-symlinks-flag: 1.0.0 1076 | dev: true 1077 | 1078 | /reusify/1.0.4: 1079 | resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} 1080 | engines: {iojs: '>=1.0.0', node: '>=0.10.0'} 1081 | dev: true 1082 | 1083 | /rollup/2.78.1: 1084 | resolution: {integrity: sha512-VeeCgtGi4P+o9hIg+xz4qQpRl6R401LWEXBmxYKOV4zlF82lyhgh2hTZnheFUbANE8l2A41F458iwj2vEYaXJg==} 1085 | engines: {node: '>=10.0.0'} 1086 | hasBin: true 1087 | optionalDependencies: 1088 | fsevents: 2.3.2 1089 | dev: true 1090 | 1091 | /run-parallel/1.2.0: 1092 | resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} 1093 | dependencies: 1094 | queue-microtask: 1.2.3 1095 | dev: true 1096 | 1097 | /source-map-js/1.0.2: 1098 | resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==} 1099 | engines: {node: '>=0.10.0'} 1100 | dev: true 1101 | 1102 | /supports-preserve-symlinks-flag/1.0.0: 1103 | resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} 1104 | engines: {node: '>= 0.4'} 1105 | dev: true 1106 | 1107 | /to-regex-range/5.0.1: 1108 | resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} 1109 | engines: {node: '>=8.0'} 1110 | dependencies: 1111 | is-number: 7.0.0 1112 | dev: true 1113 | 1114 | /turbo-darwin-64/1.5.6: 1115 | resolution: {integrity: sha512-CWdXMwenBS2+QXIR2Czx7JPnAcoMzWx/QwTDcHVxZyeayMHgz8Oq5AHCtfaHDSfV8YhD3xa0GLSk6+cFt+W8BQ==} 1116 | cpu: [x64] 1117 | os: [darwin] 1118 | requiresBuild: true 1119 | dev: true 1120 | optional: true 1121 | 1122 | /turbo-darwin-arm64/1.5.6: 1123 | resolution: {integrity: sha512-c/aXgW9JuXT2bJSKf01pdSDQKnrdcdj3WFKmKiVldb9We6eqFzI0fLHBK97k5LM/OesmRMfCMQ2Cv2DU8RqBAA==} 1124 | cpu: [arm64] 1125 | os: [darwin] 1126 | requiresBuild: true 1127 | dev: true 1128 | optional: true 1129 | 1130 | /turbo-linux-64/1.5.6: 1131 | resolution: {integrity: sha512-y/jNF7SG+XJEwk2GxIqy3g4dj/a0PgZKDGyOkp24qp4KBRcHBl6dI1ZEfNed30EhEqmW4F5Dr7IpeCZoqgbrMg==} 1132 | cpu: [x64] 1133 | os: [linux] 1134 | requiresBuild: true 1135 | dev: true 1136 | optional: true 1137 | 1138 | /turbo-linux-arm64/1.5.6: 1139 | resolution: {integrity: sha512-FRcxPtW7eFrbR3QaYBVX8cK7i+2Cerqi6F0t5ulcq+d1OGSdSW3l35rPPyJdwCzCy+k/S9sBcyCV0RtbS6RKCQ==} 1140 | cpu: [arm64] 1141 | os: [linux] 1142 | requiresBuild: true 1143 | dev: true 1144 | optional: true 1145 | 1146 | /turbo-windows-64/1.5.6: 1147 | resolution: {integrity: sha512-/5KIExY7zbrbeL5fhKGuO85u5VtJ3Ue4kI0MbYCNnTGe7a10yTYkwswgtGihsgEF4AW0Nm0159aHmXZS2Le8IA==} 1148 | cpu: [x64] 1149 | os: [win32] 1150 | requiresBuild: true 1151 | dev: true 1152 | optional: true 1153 | 1154 | /turbo-windows-arm64/1.5.6: 1155 | resolution: {integrity: sha512-p+LQN9O39+rZuOAyc6BzyVGvdEKo+v+XmtdeyZsZpfj4xuOLtsEptW1w6cUD439u0YcPknuccGq1MQ0lXQ6Xuw==} 1156 | cpu: [arm64] 1157 | os: [win32] 1158 | requiresBuild: true 1159 | dev: true 1160 | optional: true 1161 | 1162 | /turbo/1.5.6: 1163 | resolution: {integrity: sha512-xJO/fhiMo4lI62iGR9OgUfJTC9tnnuoMwNC52IfvvBDEPlA8RWGMS8SFpDVG9bNCXvVRrtUTNJXMe6pJWBiOTA==} 1164 | hasBin: true 1165 | requiresBuild: true 1166 | optionalDependencies: 1167 | turbo-darwin-64: 1.5.6 1168 | turbo-darwin-arm64: 1.5.6 1169 | turbo-linux-64: 1.5.6 1170 | turbo-linux-arm64: 1.5.6 1171 | turbo-windows-64: 1.5.6 1172 | turbo-windows-arm64: 1.5.6 1173 | dev: true 1174 | 1175 | /update-browserslist-db/1.0.10_browserslist@4.21.4: 1176 | resolution: {integrity: sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==} 1177 | hasBin: true 1178 | peerDependencies: 1179 | browserslist: '>= 4.21.0' 1180 | dependencies: 1181 | browserslist: 4.21.4 1182 | escalade: 3.1.1 1183 | picocolors: 1.0.0 1184 | dev: true 1185 | 1186 | /util-deprecate/1.0.2: 1187 | resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} 1188 | dev: true 1189 | 1190 | /vite/3.1.4: 1191 | resolution: {integrity: sha512-JoQI08aBjY9lycL7jcEq4p9o1xUjq5aRvdH4KWaXtkSx7e7RpAh9D3IjzDWRD4Fg44LS3oDAIOG/Kq1L+82psA==} 1192 | engines: {node: ^14.18.0 || >=16.0.0} 1193 | hasBin: true 1194 | peerDependencies: 1195 | less: '*' 1196 | sass: '*' 1197 | stylus: '*' 1198 | terser: ^5.4.0 1199 | peerDependenciesMeta: 1200 | less: 1201 | optional: true 1202 | sass: 1203 | optional: true 1204 | stylus: 1205 | optional: true 1206 | terser: 1207 | optional: true 1208 | dependencies: 1209 | esbuild: 0.15.10 1210 | postcss: 8.4.16 1211 | resolve: 1.22.1 1212 | rollup: 2.78.1 1213 | optionalDependencies: 1214 | fsevents: 2.3.2 1215 | dev: true 1216 | -------------------------------------------------------------------------------- /pnpm-workspace.yaml: -------------------------------------------------------------------------------- 1 | packages: 2 | - 'demo' 3 | - 'plugin' 4 | -------------------------------------------------------------------------------- /turbo.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://turborepo.org/schema.json", 3 | "pipeline": { 4 | "build": { 5 | "dependsOn": ["^build"], 6 | "outputs": ["dist/**"], 7 | "cache": false 8 | }, 9 | "preview": { 10 | "dependsOn": ["build"] 11 | }, 12 | "dev": { 13 | "cache": false 14 | } 15 | } 16 | } 17 | --------------------------------------------------------------------------------