├── .editorconfig ├── .github ├── FUNDING.yml └── workflows │ └── test.yml ├── .gitignore ├── .npmignore ├── CHANGELOG.md ├── LICENSE ├── README.md ├── index.d.ts ├── index.js ├── index.test.js ├── package.json └── pnpm-lock.yaml /.editorconfig: -------------------------------------------------------------------------------- 1 | root = true 2 | 3 | [*] 4 | indent_style = space 5 | indent_size = 2 6 | end_of_line = lf 7 | charset = utf-8 8 | trim_trailing_whitespace = true 9 | insert_final_newline = true 10 | -------------------------------------------------------------------------------- /.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | open_collective: postcss 2 | github: ai 3 | -------------------------------------------------------------------------------- /.github/workflows/test.yml: -------------------------------------------------------------------------------- 1 | name: Test 2 | on: 3 | push: 4 | branches: 5 | - main 6 | pull_request: 7 | permissions: 8 | contents: read 9 | jobs: 10 | full: 11 | name: Node.js Latest Full 12 | runs-on: ubuntu-latest 13 | steps: 14 | - name: Checkout the repository 15 | uses: actions/checkout@v4 16 | - name: Install pnpm 17 | uses: pnpm/action-setup@v2 18 | with: 19 | version: 8 20 | - name: Install Node.js 21 | uses: actions/setup-node@v3 22 | with: 23 | node-version: 20 24 | cache: pnpm 25 | - name: Install dependencies 26 | run: pnpm install --frozen-lockfile --ignore-scripts 27 | - name: Run tests 28 | run: pnpm test 29 | short: 30 | runs-on: ubuntu-latest 31 | strategy: 32 | matrix: 33 | node-version: 34 | - 18 35 | - 16 36 | name: Node.js ${{ matrix.node-version }} Quick 37 | steps: 38 | - name: Checkout the repository 39 | uses: actions/checkout@v4 40 | - name: Install pnpm 41 | uses: pnpm/action-setup@v2 42 | with: 43 | version: 8 44 | - name: Install Node.js ${{ matrix.node-version }} 45 | uses: actions/setup-node@v3 46 | with: 47 | node-version: ${{ matrix.node-version }} 48 | cache: pnpm 49 | - name: Install dependencies 50 | run: pnpm install --frozen-lockfile --ignore-scripts 51 | - name: Run unit tests 52 | run: pnpm unit 53 | old: 54 | runs-on: ubuntu-latest 55 | name: Node.js 14 Quick 56 | steps: 57 | - name: Checkout the repository 58 | uses: actions/checkout@v4 59 | - name: Install pnpm 60 | uses: pnpm/action-setup@v2 61 | with: 62 | version: 7 63 | - name: Install Node.js 14 64 | uses: actions/setup-node@v3 65 | with: 66 | node-version: 14 67 | cache: pnpm 68 | - name: Install dependencies 69 | run: pnpm install --no-frozen-lockfile --ignore-scripts 70 | - name: Run unit tests 71 | run: pnpm unit 72 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules/ 2 | 3 | coverage/ 4 | -------------------------------------------------------------------------------- /.npmignore: -------------------------------------------------------------------------------- 1 | *.test.js 2 | coverage/ 3 | -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # Change Log 2 | This project adheres to [Semantic Versioning](http://semver.org/). 3 | 4 | ## 7.0.1 5 | * Fixed types (by @Kaciras). 6 | 7 | ## 7.0 8 | * Added escape sequences support (by @FelixZY). 9 | * Removed Node.js 12 support. 10 | * Removed Node.js 10 support. 11 | 12 | ## 6.0.3 13 | * Fixed compatibility with `@define-mixin` (by Sam Pullman). 14 | 15 | ## 6.0.2 16 | * Fixed compatibility with `postcss-mixins`. 17 | 18 | ## 6.0.1 19 | * Fixed PostCSS 8.1 compatability. 20 | * Added funding links. 21 | 22 | ## 6.0 23 | * Moved to PostCSS 8. 24 | * Moved `postcss` to `peerDependencies`. 25 | 26 | ## 5.0.2 27 | * Add `keep` option (by Mikhail Novikov). 28 | 29 | ## 5.0.1 30 | * Remove test files from npm package. 31 | 32 | ## 5.0 33 | * Use PostCSS 7 (by Douglas Duteil). 34 | * Remove Node.js 4 support. 35 | 36 | ## 4.1 37 | * Pass all variables to `result.messages` (by Carl Hopf). 38 | 39 | ## 4.0 40 | * Use PostCSS 6.0 API. 41 | 42 | ## 3.1 43 | * Add TypeScript definitions (by Paolo Roth). 44 | 45 | ## 3.0 46 | * Comment variables now must have special `<<$(syntax)>>`. 47 | * Add nested variables support like `$(color$(idx))`. 48 | 49 | ## 2.0 50 | * Support variables inside comments (by Vince Speelman). 51 | 52 | ## 1.2.0 53 | * Add `onVariables` option (by Duncan Beevers). 54 | 55 | ## 1.1.0 56 | * Allow to use variables in property names. 57 | 58 | ## 1.0.1 59 | * Fix variables with lead `$` in `variables` option. 60 | 61 | ## 1.0 62 | * Use PostCSS 5.0 API. 63 | * Add `unknown` option. 64 | 65 | ## 0.3 66 | * Allow to use variables in variables values. 67 | * Accept function in `variables` option. 68 | * Support PostCSS 4.1 API. 69 | * Fix falling on non-string values in AST (by Anton Telesh). 70 | 71 | ## 0.2.4 72 | * Fix simple syntax variables in at-rule parameters. 73 | 74 | ## 0.2.3 75 | * Fix extra space on variables ignoring. 76 | 77 | ## 0.2.2 78 | * Fix undefined variable error message. 79 | 80 | ## 0.2.1 81 | * Fix look-behind regexp in simple syntax. 82 | 83 | ## 0.2 84 | * Allow to use simple syntax with minus like `-$width`. 85 | * Add support for multiple variables in one value. 86 | * Do not remove space before `$var`. 87 | 88 | ## 0.1 89 | * Initial release. 90 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright 2015 Andrey Sitnik 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy of 6 | this software and associated documentation files (the "Software"), to deal in 7 | the Software without restriction, including without limitation the rights to 8 | use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of 9 | the Software, and to permit persons to whom the Software is furnished to do so, 10 | 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, FITNESS 17 | FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR 18 | COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER 19 | IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 20 | CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 21 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # PostCSS Simple Variables 2 | 3 | 6 | 7 | [PostCSS] plugin for Sass-like variables. 8 | 9 | You can use variables inside values, selectors and at-rule parameters. 10 | 11 | ```pcss 12 | $dir: top; 13 | $blue: #056ef0; 14 | $column: 200px; 15 | 16 | .menu_link { 17 | background: $blue; 18 | width: $column; 19 | } 20 | .menu { 21 | width: calc(4 * $column); 22 | margin-$(dir): 10px; 23 | } 24 | ``` 25 | 26 | ```css 27 | .menu_link { 28 | background: #056ef0; 29 | width: 200px; 30 | } 31 | .menu { 32 | width: calc(4 * 200px); 33 | margin-top: 10px; 34 | } 35 | ``` 36 | 37 | If you want be closer to W3C spec, 38 | you should use [postcss-custom-properties] and [postcss-at-rules-variables] plugins. 39 | 40 | Look at [postcss-map] for big complicated configs. 41 | 42 | [postcss-at-rules-variables]: https://github.com/GitScrum/postcss-at-rules-variables 43 | [postcss-custom-properties]: https://github.com/postcss/postcss-custom-properties 44 | [postcss-map]: https://github.com/pascalduez/postcss-map 45 | [PostCSS]: https://github.com/postcss/postcss 46 | 47 | 48 | Sponsored by Evil Martians 50 | 51 | 52 | 53 | ## Interpolation 54 | 55 | There is special syntax for using variables inside CSS words: 56 | 57 | ```pcss 58 | $prefix: my-company-widget 59 | 60 | $prefix { } 61 | $(prefix)_button { } 62 | ``` 63 | 64 | 65 | ## Comments 66 | 67 | You can use variables in comments too (for example, to generate special 68 | [mdcss] comments). Syntax for comment variables is different to separate 69 | them from PreCSS code examples: 70 | 71 | ```pcss 72 | $width: 100px; 73 | /* $width: <<$(width)>> */ 74 | ``` 75 | 76 | compiles to: 77 | 78 | ```css 79 | /* $width: 100px */ 80 | ``` 81 | 82 | [mdcss]: https://github.com/jonathantneal/mdcss 83 | 84 | 85 | ## Escaping 86 | 87 | If you want to escape `$` in the `content` property, use Unicode escape syntax. 88 | 89 | ```css 90 | .foo::before { 91 | content: "\0024x"; 92 | } 93 | ``` 94 | 95 | If you want to use e.g. `:` in a selector variable, use the corresponding unicode escape sequence: 96 | 97 | ```css 98 | /* Given */ 99 | $selector: .my-component[data-emoji="\U0001f389"]\u003Adisabled; 100 | 101 | $selector { 102 | width: 1px; 103 | } 104 | 105 | /* Generates */ 106 | .my-component[data-emoji="🎉"]:disabled { 107 | width: 1px; 108 | } 109 | ``` 110 | 111 | Note: Use `\u` for 4-digit sequences and `\U` for 8-digit sequences. 112 | 113 | ## Usage 114 | 115 | **Step 1:** Install plugin: 116 | 117 | ```sh 118 | npm install --save-dev postcss postcss-simple-vars 119 | ``` 120 | 121 | **Step 2:** Check your project for existing PostCSS config: `postcss.config.js` 122 | in the project root, `"postcss"` section in `package.json` 123 | or `postcss` in bundle config. 124 | 125 | If you do not use PostCSS, add it according to [official docs] 126 | and set this plugin in settings. 127 | 128 | **Step 3:** Add the plugin to plugins list: 129 | 130 | ```diff 131 | module.exports = { 132 | plugins: [ 133 | + require('postcss-simple-vars'), 134 | require('autoprefixer') 135 | ] 136 | } 137 | ``` 138 | 139 | [official docs]: https://github.com/postcss/postcss#usage 140 | 141 | 142 | ## Options 143 | 144 | Call plugin function to set options: 145 | 146 | ```js 147 | require('postcss-simple-vars')({ silent: true }) 148 | ``` 149 | 150 | 151 | ### `variables` 152 | 153 | Set default variables. It is useful to store colors or other constants 154 | in a common file: 155 | 156 | ```js 157 | // config/colors.js 158 | 159 | module.exports = { 160 | blue: '#056ef0' 161 | } 162 | 163 | // postcss.config.js 164 | 165 | const colors = require('./config/colors') 166 | const vars = require('postcss-simple-vars') 167 | 168 | module.exports = { 169 | plugins: [ 170 | require('postcss-simple-vars')({ variables: colors }) 171 | ] 172 | } 173 | ``` 174 | 175 | You can use a function return an object, if you want to update default 176 | variables in webpack hot reload: 177 | 178 | ```js 179 | require('postcss-simple-vars')({ 180 | variables: function () { 181 | return require('./config/colors'); 182 | } 183 | }) 184 | ``` 185 | 186 | 187 | ### `onVariables` 188 | 189 | Callback invoked once all variables in css are known. The callback receives 190 | an object representing the known variables, including those explicitly declared 191 | by the [`variables`](#variables) option. 192 | 193 | ```js 194 | require('postcss-simple-vars')({ 195 | onVariables (variables) { 196 | console.log('CSS Variables'); 197 | console.log(JSON.stringify(variables, null, 2)); 198 | } 199 | }) 200 | ``` 201 | 202 | 203 | ### `unknown` 204 | 205 | Callback on unknown variable name. It receives the node instance, variable name 206 | and PostCSS Result object. 207 | 208 | ```js 209 | require('postcss-simple-vars')({ 210 | unknown (node, name, result) { 211 | node.warn(result, 'Unknown variable ' + name); 212 | } 213 | }) 214 | ]) 215 | ``` 216 | 217 | 218 | ### `silent` 219 | 220 | Leave unknown variables in CSS and do not throw an error. Default is `false`. 221 | 222 | 223 | ### `only` 224 | 225 | Set value only for variables from this object. 226 | Other variables will not be changed. It is useful for PostCSS plugin developers. 227 | 228 | 229 | ### `keep` 230 | 231 | Keep variables as is and not delete them. Default is `false`. 232 | 233 | 234 | ## Messages 235 | 236 | This plugin passes `result.messages` for each variable: 237 | 238 | ```js 239 | const result = await postcss([vars]).process('$one: 1; $two: 2') 240 | console.log(result.messages) 241 | ``` 242 | 243 | will output: 244 | 245 | ```js 246 | [ 247 | { 248 | plugin: 'postcss-simple-vars', 249 | type: 'variable', 250 | name: 'one' 251 | value: '1' 252 | }, 253 | { 254 | plugin: 'postcss-simple-vars', 255 | type: 'variable', 256 | name: 'two' 257 | value: '2' 258 | } 259 | ] 260 | ``` 261 | 262 | You can access this in `result.messages` and 263 | in any plugin that included after `postcss-simple-vars`. 264 | -------------------------------------------------------------------------------- /index.d.ts: -------------------------------------------------------------------------------- 1 | declare module 'postcss-simple-vars' { 2 | /** 3 | * imports postcss 4 | */ 5 | import * as postcss from 'postcss' 6 | 7 | /** 8 | * Simple vars namespace 9 | */ 10 | namespace simpleVars { 11 | /** 12 | * variables Argument 13 | * @interface IArgument 14 | */ 15 | type IArgument = { 16 | [index: string]: any 17 | } 18 | 19 | /** 20 | * Callable argument 21 | * @type {function} 22 | * @interface ICallableArgument 23 | */ 24 | type ICallableArgument = () => IArgument 25 | 26 | /** 27 | * Vars argument 28 | * @export 29 | * @interface ISimpleVarsArgument 30 | */ 31 | export interface ISimpleVarsArgument extends ISimpleVarsBase { 32 | variables?: IArgument 33 | } 34 | 35 | /** 36 | * Base options interface 37 | * @interface ISimpleVarsBase 38 | */ 39 | interface ISimpleVarsBase { 40 | /** 41 | * Set value only for variables from this object. Other variables will not be changed. 42 | * It is useful for PostCSS plugin developers. 43 | * @type {*} 44 | * @memberOf ISimpleVarsBase 45 | */ 46 | only?: any 47 | 48 | /** 49 | * Callback invoked once all variables in css are known. 50 | * The callback receives an object representing the known variables, 51 | * including those explicitly-declared by the variables option. 52 | */ 53 | onVariables?: (vars: string) => void 54 | 55 | /** 56 | * Left unknown variables in CSS and do not throw an error. 57 | * @default {false} 58 | * @type {boolean} 59 | */ 60 | silent?: boolean 61 | 62 | /** 63 | * Keep variables as is and not delete them. 64 | * @default {false} 65 | * @type {boolean} 66 | */ 67 | keep?: boolean 68 | 69 | /** 70 | * Callback on unknown variable name. It receives node instance, variable name and PostCSS Result object. 71 | * @memberOf ISimpleVarsBase 72 | */ 73 | unknown?: ( 74 | node: postcss.Node, 75 | name: string, 76 | result: postcss.Result 77 | ) => void 78 | } 79 | 80 | /** 81 | * Callable variables argument 82 | * @export 83 | * @interface ISimpleVarsCallableArgument 84 | */ 85 | export interface ISimpleVarsCallableArgument extends ISimpleVarsBase { 86 | variables: ICallableArgument 87 | } 88 | } 89 | 90 | /** 91 | * Exported function 92 | * @param {simpleVars.ISimpleVarsArgument} arg 93 | * @returns {*} 94 | */ 95 | function simpleVars(arg?: simpleVars.ISimpleVarsArgument): any 96 | 97 | /** 98 | * Exported function 99 | * @param {simpleVars.ISimpleVarsArgument} arg 100 | * @returns {*} 101 | */ 102 | function simpleVars(arg: simpleVars.ISimpleVarsCallableArgument): any 103 | 104 | /** 105 | * Default export 106 | */ 107 | export = simpleVars 108 | } 109 | -------------------------------------------------------------------------------- /index.js: -------------------------------------------------------------------------------- 1 | const IGNORE = Symbol('ignore') 2 | 3 | function definition (variables, node, opts) { 4 | let name = node.prop.slice(1) 5 | variables[name] = transformBackslashSequences(node.value) 6 | 7 | if (!opts.keep) { 8 | node.remove() 9 | } 10 | } 11 | 12 | function variable (variables, node, str, name, opts, result) { 13 | if (isIgnore(node, name)) return str 14 | 15 | if (opts.only) { 16 | if (typeof opts.only[name] !== 'undefined') { 17 | return opts.only[name] 18 | } 19 | 20 | return str 21 | } 22 | 23 | if (typeof variables[name] !== 'undefined') { 24 | return variables[name] 25 | } 26 | 27 | if (opts.silent) { 28 | return str 29 | } 30 | 31 | let fix = opts.unknown(node, name, result) 32 | 33 | if (fix) { 34 | return fix 35 | } 36 | 37 | return str 38 | } 39 | 40 | const UNICODE_8_CODE = /(?<=[^\\]|^)\\U([0-9abcdefABCDEF]{8})/g 41 | const UNICODE_4_CODE = /(?<=[^\\]|^)\\u([0-9abcdefABCDEF]{4})/g 42 | 43 | function transformBackslashSequences(value) { 44 | if (typeof value !== 'string') return value 45 | if (!value.includes('\\')) return value 46 | return value 47 | .replace(UNICODE_8_CODE, (_, cp) => String.fromCodePoint(`0x${cp}`)) 48 | .replace(UNICODE_4_CODE, (_, cp) => String.fromCodePoint(`0x${cp}`)) 49 | .replace(/\\\\/g, '\\') 50 | } 51 | 52 | function simpleSyntax (variables, node, str, opts, result) { 53 | return str.replace(/(^|[^\w])\$([\w\d-_]+)/g, (_, bef, name) => { 54 | return bef + variable(variables, node, '$' + name, name, opts, result) 55 | }) 56 | } 57 | 58 | function inStringSyntax (variables, node, str, opts, result) { 59 | return str.replace(/\$\(\s*([\w\d-_]+)\s*\)/g, (all, name) => { 60 | return variable(variables, node, all, name, opts, result) 61 | }) 62 | } 63 | 64 | function bothSyntaxes (variables, node, str, opts, result) { 65 | str = simpleSyntax(variables, node, str, opts, result) 66 | str = inStringSyntax(variables, node, str, opts, result) 67 | return str 68 | } 69 | 70 | function repeat (value, callback) { 71 | let oldValue 72 | let newValue = value 73 | do { 74 | oldValue = newValue 75 | newValue = callback(oldValue) 76 | } while (newValue !== oldValue && newValue.includes('$')) 77 | return newValue 78 | } 79 | 80 | function declValue (variables, node, opts, result) { 81 | node.value = repeat(node.value, value => { 82 | return bothSyntaxes(variables, node, value, opts, result) 83 | }) 84 | } 85 | 86 | function declProp (variables, node, opts, result) { 87 | node.prop = repeat(node.prop, value => { 88 | return inStringSyntax(variables, node, value, opts, result) 89 | }) 90 | } 91 | 92 | function ruleSelector (variables, node, opts, result) { 93 | node.selector = repeat(node.selector, value => { 94 | return bothSyntaxes(variables, node, value, opts, result) 95 | }) 96 | } 97 | 98 | function atruleParams (variables, node, opts, result) { 99 | node.params = repeat(node.params, value => { 100 | return bothSyntaxes(variables, node, value, opts, result) 101 | }) 102 | } 103 | 104 | function comment (variables, node, opts, result) { 105 | node.text = node.text.replace(/<<\$\(\s*(\w+)\s*\)>>/g, (all, name) => { 106 | return variable(variables, node, all, name, opts, result) 107 | }) 108 | } 109 | 110 | function mixin (helpers, node) { 111 | let name = node.params.split(/\s/, 1)[0] 112 | let vars = node.params.slice(name.length).trim() 113 | 114 | if (vars.length) { 115 | node[IGNORE] = helpers.list.comma(vars).map(str => { 116 | let arg = str.split(':', 1)[0] 117 | return arg.slice(1).trim() 118 | }) 119 | } 120 | } 121 | 122 | function isIgnore (node, value) { 123 | if (node[IGNORE] && node[IGNORE].includes(value)) { 124 | return true 125 | } else if (node.parent) { 126 | return isIgnore(node.parent, value) 127 | } else { 128 | return false 129 | } 130 | } 131 | 132 | module.exports = (opts = {}) => { 133 | if (!opts.unknown) { 134 | opts.unknown = (node, name) => { 135 | throw node.error('Undefined variable $' + name) 136 | } 137 | } 138 | 139 | if (typeof opts.keep === 'undefined') { 140 | opts.keep = false 141 | } 142 | 143 | return { 144 | postcssPlugin: 'postcss-simple-vars', 145 | prepare () { 146 | let variables = {} 147 | if (typeof opts.variables === 'function') { 148 | variables = opts.variables() 149 | } else if (typeof opts.variables === 'object') { 150 | variables = { ...opts.variables } 151 | } 152 | 153 | for (let name in variables) { 154 | if (name[0] === '$') { 155 | name = name.slice(1) 156 | variables[name] = variables[`$${name}`] 157 | delete variables[`$${name}`] 158 | } 159 | variables[name] = transformBackslashSequences(variables[name]) 160 | } 161 | return { 162 | AtRule (node, helpers) { 163 | if (node.name === 'define-mixin') { 164 | mixin(helpers, node) 165 | } else if (node.params && node.params.includes('$')) { 166 | atruleParams(variables, node, opts, helpers.result) 167 | } 168 | }, 169 | Comment (node, { result }) { 170 | if (node.text.includes('$')) { 171 | comment(variables, node, opts, result) 172 | } 173 | }, 174 | Declaration (node, { result }) { 175 | if (node.value.includes('$')) { 176 | declValue(variables, node, opts, result) 177 | } 178 | if (node.prop[0] === '$' && node.prop[1] !== '(') { 179 | if (!opts.only) definition(variables, node, opts) 180 | } else if (node.prop.includes('$(')) { 181 | declProp(variables, node, opts, result) 182 | } 183 | }, 184 | OnceExit (_, { result }) { 185 | Object.keys(variables).forEach(key => { 186 | result.messages.push({ 187 | name: key, 188 | plugin: 'postcss-simple-vars', 189 | type: 'variable', 190 | value: variables[key] 191 | }) 192 | }) 193 | if (opts.onVariables) { 194 | opts.onVariables(variables) 195 | } 196 | }, 197 | Rule (node, { result }) { 198 | if (node.selector.includes('$')) { 199 | ruleSelector(variables, node, opts, result) 200 | } 201 | } 202 | } 203 | } 204 | } 205 | } 206 | module.exports.postcss = true 207 | -------------------------------------------------------------------------------- /index.test.js: -------------------------------------------------------------------------------- 1 | let { equal, throws } = require('uvu/assert') 2 | let { test } = require('uvu') 3 | let postcss = require('postcss') 4 | 5 | let plugin = require('./') 6 | 7 | function checkResult(result, expected) { 8 | equal(result.css, expected) 9 | equal(result.warnings().length, 0) 10 | return result 11 | } 12 | 13 | function runWithPlugins(plugins, input, output) { 14 | let result = postcss(plugins).process(input, { from: '/test.css' }) 15 | return checkResult(result, output) 16 | } 17 | 18 | function run(input, output, opts) { 19 | let result = postcss([plugin(opts)]).process(input, { from: '/test.css' }) 20 | return checkResult(result, output) 21 | } 22 | 23 | test('works with postcss-mixin variables', () => { 24 | runWithPlugins( 25 | [plugin(), require('postcss-mixins')], 26 | '$b: 1; @define-mixin b $a: $b {width: $a; height: $b;}\n.a{@mixin b;}', 27 | '.a{width: 1;height: 1;}' 28 | ) 29 | }) 30 | 31 | test('works with postcss-for', () => { 32 | runWithPlugins( 33 | [plugin(), require('postcss-for')], 34 | '$a: 1; $i: 5; @for $i from 1 to 3 {.b-$i {width: calc($i + $a);}}', 35 | '.b-1 {width: calc(1 + 1);} .b-2 {width: calc(2 + 1);} ' + 36 | '.b-3 {width: calc(3 + 1);}' 37 | ) 38 | }) 39 | 40 | test('works with postcss-each', () => { 41 | runWithPlugins( 42 | [require('postcss-each')({ plugins: { afterEach: plugin() } })], 43 | '@each $n, $w in (a, b, c), (1, 2, 3) {.a-$n {width: $w;}}', 44 | '.a-a {width: 1;}\n.a-b {width: 2;}\n.a-c {width: 3;}' 45 | ) 46 | }) 47 | 48 | test('replaces variables in values', () => { 49 | run( 50 | '$size: 10px;\na{ width: $size; height: $size }', 51 | 'a{ width: 10px; height: 10px }' 52 | ) 53 | }) 54 | 55 | test('replaces vars in property names', () => { 56 | run('$prop: width; a{ $(prop): 1px }', 'a{ width: 1px }') 57 | }) 58 | 59 | test('replaces vars inside property names', () => { 60 | run('$dir: top; a{ margin-$(dir): 1px }', 'a{ margin-top: 1px }') 61 | }) 62 | 63 | test('replaces vars in comments', () => { 64 | run('$prop: width; /* <<$(prop)>>: 1px */', '/* width: 1px */') 65 | }) 66 | 67 | test('allows dashes and digits in variable name', () => { 68 | run('$a-b_10: 1;\na{ one: $a-b_10 a$(a-b_10) }', 'a{ one: 1 a1 }') 69 | }) 70 | 71 | test('needs space before variable', () => { 72 | run('$size: 10px; a { width: one$size }', 'a { width: one$size }') 73 | }) 74 | 75 | test('does not remove first symbol', () => { 76 | run('a{ a: 1 $a }', 'a{ a: 1 1 }', { variables: { a: 1 } }) 77 | }) 78 | 79 | test('allows to use in negative numbers', () => { 80 | run('a{ a: -$a }', 'a{ a: -1 }', { variables: { a: 1 } }) 81 | }) 82 | 83 | test('transforms unicode escapes', () => { 84 | run( 85 | String.raw`$a: b[c="\U0001F389"]\u003Afocus\u003Ahover; $a { width: 1px }`, 86 | 'b[c="🎉"]:focus:hover { width: 1px }' 87 | ) 88 | }) 89 | 90 | test('does not transform escaped backslashes', () => { 91 | run( 92 | String.raw`$a: b[c="\\U0001F389"]\\u003Afocus\\u003Ahover; $a { d:1 }`, 93 | String.raw`b[c="\U0001F389"]\u003Afocus\u003Ahover { d:1 }` 94 | ) 95 | run( 96 | String.raw`$a: b[c="\\\\U0001F389"]\\\\u003Afocus\\\\u003Ahover; $a{ d:1 }`, 97 | String.raw`b[c="\\U0001F389"]\\u003Afocus\\u003Ahover{ d:1 }` 98 | ) 99 | }) 100 | 101 | test('replaces multiple variables', () => { 102 | run('a{ a: $a $a }', 'a{ a: 1 1 }', { variables: { a: 1 } }) 103 | }) 104 | 105 | test('has second syntax for varibles', () => { 106 | run('$size: 10; a { width: $(size)px }', 'a { width: 10px }') 107 | }) 108 | 109 | test('replaces variables in selector', () => { 110 | run('$name: a; $name $(name)b { }', 'a ab { }') 111 | }) 112 | 113 | test('replaces variables in at-rule params', () => { 114 | run('$name: a; @at $name; @at $(name)b { }', '@at a; @at ab { }') 115 | }) 116 | 117 | test('parses at-rule without params', () => { 118 | run('@atrule{}', '@atrule{}') 119 | }) 120 | 121 | test('overrides variables', () => { 122 | run( 123 | '$var: 1; a{ one: $var } b{ $var: 2; two: $var } c{ two: $var }', 124 | 'a{ one: 1 } b{ two: 2 } c{ two: 2 }' 125 | ) 126 | }) 127 | 128 | test('throws an error on unknown variable', () => { 129 | throws( 130 | () => run('a{ width: -$size }'), 131 | 'postcss-simple-vars: /test.css:1:4: Undefined variable $size' 132 | ) 133 | }) 134 | 135 | test('allows to silent errors', () => { 136 | run('a{ width: $size }', 'a{ width: $size }', { silent: true }) 137 | }) 138 | 139 | test('gets variables from options', () => { 140 | run('a{ width: $one }', 'a{ width: 1 }', { variables: { one: 1 } }) 141 | }) 142 | 143 | test('works with any syntax in option', () => { 144 | run('a{ width: $one }', 'a{ width: 1 }', { variables: { $one: 1 } }) 145 | }) 146 | 147 | test('cans get variables only from option', () => { 148 | run( 149 | '$one: 2; $two: 2; a{ one: $one $two }', 150 | '$one: 2; $two: 2; a{ one: 1 $two }', 151 | { only: { one: 1 } } 152 | ) 153 | }) 154 | 155 | test('works with false value', () => { 156 | run('a{ zero: $zero }', 'a{ zero: 0 }', { variables: { zero: 0 } }) 157 | }) 158 | 159 | test('allows to use var in other vars', () => { 160 | run('$one: 1; $two: $one 2; a{ value: $two }', 'a{ value: 1 2 }') 161 | }) 162 | 163 | test('set default values by function', () => { 164 | let value 165 | let config = () => ({ config: value }) 166 | 167 | value = 1 168 | run('a{ width: $config }', 'a{ width: 1 }', { variables: config }) 169 | 170 | value = 2 171 | run('a{ width: $config }', 'a{ width: 2 }', { variables: config }) 172 | }) 173 | 174 | test('has callback for unknown variable', () => { 175 | let result = [] 176 | let unknown = (node, name) => { 177 | result.push([node.prop, name]) 178 | } 179 | 180 | run('a{width:$one}', 'a{width:$one}', { unknown }) 181 | equal(result, [['width', 'one']]) 182 | }) 183 | 184 | test('has callback for exporting variables', () => { 185 | let result = [] 186 | run('$one: 1;', '', { 187 | onVariables(variables) { 188 | result.push(variables.one) 189 | } 190 | }) 191 | equal(result, ['1']) 192 | }) 193 | 194 | test('overrides unknown variable', () => { 195 | let unknown = function () { 196 | return 'unknown' 197 | } 198 | run('a{width:$one}', 'a{width:unknown}', { unknown }) 199 | }) 200 | 201 | test('supports nested vairables', () => { 202 | run('$one: 1; $p: on; test: $($(p)e)', 'test: 1') 203 | }) 204 | 205 | test('exports variables to messages', () => { 206 | equal(run('$one: 1; $p: on;', '').messages, [ 207 | { 208 | name: 'one', 209 | plugin: 'postcss-simple-vars', 210 | type: 'variable', 211 | value: '1' 212 | }, 213 | { 214 | name: 'p', 215 | plugin: 'postcss-simple-vars', 216 | type: 'variable', 217 | value: 'on' 218 | } 219 | ]) 220 | }) 221 | 222 | test('overrides default variables', () => { 223 | let variables = { a: 1 } 224 | run('a: $a; $a: 2; b: $a;', 'a: 1; b: 2;', { 225 | variables 226 | }) 227 | equal(variables, { a: 1 }) 228 | }) 229 | 230 | test('keep top level variables', () => { 231 | run('$a: 42; body { color: $a }', '$a: 42; body { color: 42 }', { 232 | keep: true 233 | }) 234 | }) 235 | 236 | test('keep nested variables', () => { 237 | run('body { $a: 42; color: $a }', 'body { $a: 42; color: 42 }', { 238 | keep: true 239 | }) 240 | }) 241 | 242 | test('ignores @define-mixin', () => { 243 | run('@define-mixin a $b { color: $b }', '@define-mixin a $b { color: $b }') 244 | }) 245 | 246 | test('works within @define-mixin', () => { 247 | run( 248 | '$a: 1; $b: 2; @define-mixin a $b { color: $b; width: $a }', 249 | '@define-mixin a $b { color: $b; width: 1 }' 250 | ) 251 | }) 252 | 253 | test('works inside function-like declarations', () => { 254 | run( 255 | '$a: 1; $b: 2; a{ color: a-fn($a nested($b)); }', 256 | 'a{ color: a-fn(1 nested(2)); }' 257 | ) 258 | }) 259 | 260 | test.run() 261 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "postcss-simple-vars", 3 | "version": "7.0.1", 4 | "description": "PostCSS plugin for Sass-like variables", 5 | "keywords": [ 6 | "postcss", 7 | "css", 8 | "postcss-plugin", 9 | "sass", 10 | "variables", 11 | "vars" 12 | ], 13 | "author": "Andrey Sitnik ", 14 | "license": "MIT", 15 | "repository": "postcss/postcss-simple-vars", 16 | "scripts": { 17 | "unit": "uvu . '\\.test\\.js$'", 18 | "test:coverage": "c8 pnpm unit", 19 | "test:lint": "eslint .", 20 | "test": "pnpm run /^test:/" 21 | }, 22 | "engines": { 23 | "node": ">=14.0" 24 | }, 25 | "funding": [ 26 | { 27 | "type": "opencollective", 28 | "url": "https://opencollective.com/postcss/" 29 | }, 30 | { 31 | "type": "github", 32 | "url": "https://github.com/sponsors/ai" 33 | } 34 | ], 35 | "peerDependencies": { 36 | "postcss": "^8.2.1" 37 | }, 38 | "devDependencies": { 39 | "@logux/eslint-config": "^52.0.1", 40 | "c8": "^8.0.1", 41 | "clean-publish": "^4.2.0", 42 | "eslint": "^8.51.0", 43 | "eslint-config-standard": "^17.1.0", 44 | "eslint-plugin-import": "^2.28.1", 45 | "eslint-plugin-n": "^16.1.0", 46 | "eslint-plugin-node-imports": "^1.0.2", 47 | "eslint-plugin-perfectionist": "^2.1.0", 48 | "eslint-plugin-prefer-let": "^3.0.1", 49 | "eslint-plugin-promise": "^6.1.1", 50 | "postcss": "^8.4.31", 51 | "postcss-each": "^1.1.0", 52 | "postcss-for": "^2.1.1", 53 | "postcss-mixins": "^9.0.4", 54 | "uvu": "^0.5.6" 55 | }, 56 | "prettier": { 57 | "arrowParens": "avoid", 58 | "jsxSingleQuote": false, 59 | "quoteProps": "consistent", 60 | "semi": false, 61 | "singleQuote": true, 62 | "trailingComma": "none" 63 | }, 64 | "eslintConfig": { 65 | "extends": "@logux/eslint-config" 66 | }, 67 | "c8": { 68 | "exclude": [ 69 | "**/*.test.*" 70 | ], 71 | "lines": 100, 72 | "reporter": "lcov", 73 | "check-coverage": true 74 | }, 75 | "clean-publish": { 76 | "cleanDocs": true 77 | } 78 | } 79 | -------------------------------------------------------------------------------- /pnpm-lock.yaml: -------------------------------------------------------------------------------- 1 | lockfileVersion: '9.0' 2 | 3 | settings: 4 | autoInstallPeers: true 5 | excludeLinksFromLockfile: false 6 | 7 | importers: 8 | 9 | .: 10 | devDependencies: 11 | '@logux/eslint-config': 12 | specifier: ^52.0.1 13 | version: 52.0.1(eslint-config-standard@17.1.0(eslint-plugin-import@2.28.1(eslint@8.51.0))(eslint-plugin-n@16.1.0(eslint@8.51.0))(eslint-plugin-promise@6.1.1(eslint@8.51.0))(eslint@8.51.0))(eslint-plugin-import@2.28.1(eslint@8.51.0))(eslint-plugin-n@16.1.0(eslint@8.51.0))(eslint-plugin-node-import@1.0.4(eslint@8.51.0))(eslint-plugin-perfectionist@2.1.0(eslint@8.51.0)(typescript@5.2.2))(eslint-plugin-prefer-let@3.0.1)(eslint-plugin-promise@6.1.1(eslint@8.51.0))(eslint@8.51.0) 14 | c8: 15 | specifier: ^8.0.1 16 | version: 8.0.1 17 | clean-publish: 18 | specifier: ^4.2.0 19 | version: 4.2.0 20 | eslint: 21 | specifier: ^8.51.0 22 | version: 8.51.0 23 | eslint-config-standard: 24 | specifier: ^17.1.0 25 | version: 17.1.0(eslint-plugin-import@2.28.1(eslint@8.51.0))(eslint-plugin-n@16.1.0(eslint@8.51.0))(eslint-plugin-promise@6.1.1(eslint@8.51.0))(eslint@8.51.0) 26 | eslint-plugin-import: 27 | specifier: ^2.28.1 28 | version: 2.28.1(eslint@8.51.0) 29 | eslint-plugin-n: 30 | specifier: ^16.1.0 31 | version: 16.1.0(eslint@8.51.0) 32 | eslint-plugin-node-imports: 33 | specifier: ^1.0.2 34 | version: 1.0.2(eslint@8.51.0) 35 | eslint-plugin-perfectionist: 36 | specifier: ^2.1.0 37 | version: 2.1.0(eslint@8.51.0)(typescript@5.2.2) 38 | eslint-plugin-prefer-let: 39 | specifier: ^3.0.1 40 | version: 3.0.1 41 | eslint-plugin-promise: 42 | specifier: ^6.1.1 43 | version: 6.1.1(eslint@8.51.0) 44 | postcss: 45 | specifier: ^8.4.31 46 | version: 8.4.31 47 | postcss-each: 48 | specifier: ^1.1.0 49 | version: 1.1.0(postcss@8.4.31) 50 | postcss-for: 51 | specifier: ^2.1.1 52 | version: 2.1.1 53 | postcss-mixins: 54 | specifier: ^9.0.4 55 | version: 9.0.4(postcss@8.4.31) 56 | uvu: 57 | specifier: ^0.5.6 58 | version: 0.5.6 59 | 60 | packages: 61 | 62 | '@aashutoshrathi/word-wrap@1.2.6': 63 | resolution: {integrity: sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==} 64 | engines: {node: '>=0.10.0'} 65 | 66 | '@bcoe/v8-coverage@0.2.3': 67 | resolution: {integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==} 68 | 69 | '@eslint-community/eslint-utils@4.4.0': 70 | resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==} 71 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 72 | peerDependencies: 73 | eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 74 | 75 | '@eslint-community/regexpp@4.9.1': 76 | resolution: {integrity: sha512-Y27x+MBLjXa+0JWDhykM3+JE+il3kHKAEqabfEWq3SDhZjLYb6/BHL/JKFnH3fe207JaXkyDo685Oc2Glt6ifA==} 77 | engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} 78 | 79 | '@eslint/eslintrc@2.1.2': 80 | resolution: {integrity: sha512-+wvgpDsrB1YqAMdEUCcnTlpfVBH7Vqn6A/NT3D8WVXFIaKMlErPIZT3oCIAVCOtarRpMtelZLqJeU3t7WY6X6g==} 81 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 82 | 83 | '@eslint/js@8.51.0': 84 | resolution: {integrity: sha512-HxjQ8Qn+4SI3/AFv6sOrDB+g6PpUTDwSJiQqOrnneEk8L71161srI9gjzzZvYVbzHiVg/BvcH95+cK/zfIt4pg==} 85 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 86 | 87 | '@humanwhocodes/config-array@0.11.11': 88 | resolution: {integrity: sha512-N2brEuAadi0CcdeMXUkhbZB84eskAc8MEX1By6qEchoVywSgXPIjou4rYsl0V3Hj0ZnuGycGCjdNgockbzeWNA==} 89 | engines: {node: '>=10.10.0'} 90 | deprecated: Use @eslint/config-array instead 91 | 92 | '@humanwhocodes/module-importer@1.0.1': 93 | resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} 94 | engines: {node: '>=12.22'} 95 | 96 | '@humanwhocodes/object-schema@1.2.1': 97 | resolution: {integrity: sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==} 98 | deprecated: Use @eslint/object-schema instead 99 | 100 | '@istanbuljs/schema@0.1.3': 101 | resolution: {integrity: sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==} 102 | engines: {node: '>=8'} 103 | 104 | '@jridgewell/resolve-uri@3.1.1': 105 | resolution: {integrity: sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==} 106 | engines: {node: '>=6.0.0'} 107 | 108 | '@jridgewell/sourcemap-codec@1.4.15': 109 | resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==} 110 | 111 | '@jridgewell/trace-mapping@0.3.19': 112 | resolution: {integrity: sha512-kf37QtfW+Hwx/buWGMPcR60iF9ziHa6r/CZJIHbmcm4+0qrXiVdxegAH0F6yddEVQ7zdkjcGCgCzUu+BcbhQxw==} 113 | 114 | '@logux/eslint-config@52.0.1': 115 | resolution: {integrity: sha512-VnphQAsUoP2gdlZScn0jESbeGXA3lyCTlPEPNpDGJU0/75Cmi6YVTQ6/ownBVN6ASAEcql2UcYroseQzv2t2dA==} 116 | engines: {node: '>=10.0.0'} 117 | peerDependencies: 118 | eslint: ^8.48.0 119 | eslint-config-standard: ^17.1.0 120 | eslint-plugin-import: ^2.28.1 121 | eslint-plugin-n: ^16.0.2 122 | eslint-plugin-node-import: ^1.0.1 123 | eslint-plugin-perfectionist: ^2.0.0 124 | eslint-plugin-prefer-let: ^3.0.1 125 | eslint-plugin-promise: ^6.1.1 126 | 127 | '@nodelib/fs.scandir@2.1.5': 128 | resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} 129 | engines: {node: '>= 8'} 130 | 131 | '@nodelib/fs.stat@2.0.5': 132 | resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} 133 | engines: {node: '>= 8'} 134 | 135 | '@nodelib/fs.walk@1.2.8': 136 | resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} 137 | engines: {node: '>= 8'} 138 | 139 | '@types/istanbul-lib-coverage@2.0.4': 140 | resolution: {integrity: sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g==} 141 | 142 | '@types/json-schema@7.0.13': 143 | resolution: {integrity: sha512-RbSSoHliUbnXj3ny0CNFOoxrIDV6SUGyStHsvDqosw6CkdPV8TtWGlfecuK4ToyMEAql6pzNxgCFKanovUzlgQ==} 144 | 145 | '@types/json5@0.0.29': 146 | resolution: {integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==} 147 | 148 | '@types/semver@7.5.3': 149 | resolution: {integrity: sha512-OxepLK9EuNEIPxWNME+C6WwbRAOOI2o2BaQEGzz5Lu2e4Z5eDnEo+/aVEDMIXywoJitJ7xWd641wrGLZdtwRyw==} 150 | 151 | '@typescript-eslint/scope-manager@6.7.4': 152 | resolution: {integrity: sha512-SdGqSLUPTXAXi7c3Ob7peAGVnmMoGzZ361VswK2Mqf8UOYcODiYvs8rs5ILqEdfvX1lE7wEZbLyELCW+Yrql1A==} 153 | engines: {node: ^16.0.0 || >=18.0.0} 154 | 155 | '@typescript-eslint/types@6.7.4': 156 | resolution: {integrity: sha512-o9XWK2FLW6eSS/0r/tgjAGsYasLAnOWg7hvZ/dGYSSNjCh+49k5ocPN8OmG5aZcSJ8pclSOyVKP2x03Sj+RrCA==} 157 | engines: {node: ^16.0.0 || >=18.0.0} 158 | 159 | '@typescript-eslint/typescript-estree@6.7.4': 160 | resolution: {integrity: sha512-ty8b5qHKatlNYd9vmpHooQz3Vki3gG+3PchmtsA4TgrZBKWHNjWfkQid7K7xQogBqqc7/BhGazxMD5vr6Ha+iQ==} 161 | engines: {node: ^16.0.0 || >=18.0.0} 162 | peerDependencies: 163 | typescript: '*' 164 | peerDependenciesMeta: 165 | typescript: 166 | optional: true 167 | 168 | '@typescript-eslint/utils@6.7.4': 169 | resolution: {integrity: sha512-PRQAs+HUn85Qdk+khAxsVV+oULy3VkbH3hQ8hxLRJXWBEd7iI+GbQxH5SEUSH7kbEoTp6oT1bOwyga24ELALTA==} 170 | engines: {node: ^16.0.0 || >=18.0.0} 171 | peerDependencies: 172 | eslint: ^7.0.0 || ^8.0.0 173 | 174 | '@typescript-eslint/visitor-keys@6.7.4': 175 | resolution: {integrity: sha512-pOW37DUhlTZbvph50x5zZCkFn3xzwkGtNoJHzIM3svpiSkJzwOYr/kVBaXmf+RAQiUDs1AHEZVNPg6UJCJpwRA==} 176 | engines: {node: ^16.0.0 || >=18.0.0} 177 | 178 | acorn-jsx@5.3.2: 179 | resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} 180 | peerDependencies: 181 | acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 182 | 183 | acorn@8.10.0: 184 | resolution: {integrity: sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==} 185 | engines: {node: '>=0.4.0'} 186 | hasBin: true 187 | 188 | ajv@6.12.6: 189 | resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} 190 | 191 | ansi-regex@2.1.1: 192 | resolution: {integrity: sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==} 193 | engines: {node: '>=0.10.0'} 194 | 195 | ansi-regex@5.0.1: 196 | resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} 197 | engines: {node: '>=8'} 198 | 199 | ansi-styles@2.2.1: 200 | resolution: {integrity: sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==} 201 | engines: {node: '>=0.10.0'} 202 | 203 | ansi-styles@4.3.0: 204 | resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} 205 | engines: {node: '>=8'} 206 | 207 | argparse@2.0.1: 208 | resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} 209 | 210 | array-buffer-byte-length@1.0.0: 211 | resolution: {integrity: sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==} 212 | 213 | array-includes@3.1.7: 214 | resolution: {integrity: sha512-dlcsNBIiWhPkHdOEEKnehA+RNUWDc4UqFtnIXU4uuYDPtA4LDkr7qip2p0VvFAEXNDr0yWZ9PJyIRiGjRLQzwQ==} 215 | engines: {node: '>= 0.4'} 216 | 217 | array-union@2.1.0: 218 | resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} 219 | engines: {node: '>=8'} 220 | 221 | array.prototype.findlastindex@1.2.3: 222 | resolution: {integrity: sha512-LzLoiOMAxvy+Gd3BAq3B7VeIgPdo+Q8hthvKtXybMvRV0jrXfJM/t8mw7nNlpEcVlVUnCnM2KSX4XU5HmpodOA==} 223 | engines: {node: '>= 0.4'} 224 | 225 | array.prototype.flat@1.3.2: 226 | resolution: {integrity: sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==} 227 | engines: {node: '>= 0.4'} 228 | 229 | array.prototype.flatmap@1.3.2: 230 | resolution: {integrity: sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==} 231 | engines: {node: '>= 0.4'} 232 | 233 | arraybuffer.prototype.slice@1.0.2: 234 | resolution: {integrity: sha512-yMBKppFur/fbHu9/6USUe03bZ4knMYiwFBcyiaXB8Go0qNehwX6inYPzK9U0NeQvGxKthcmHcaR8P5MStSRBAw==} 235 | engines: {node: '>= 0.4'} 236 | 237 | available-typed-arrays@1.0.5: 238 | resolution: {integrity: sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==} 239 | engines: {node: '>= 0.4'} 240 | 241 | balanced-match@1.0.2: 242 | resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} 243 | 244 | brace-expansion@1.1.11: 245 | resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} 246 | 247 | brace-expansion@2.0.1: 248 | resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==} 249 | 250 | braces@3.0.3: 251 | resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} 252 | engines: {node: '>=8'} 253 | 254 | builtins@5.0.1: 255 | resolution: {integrity: sha512-qwVpFEHNfhYJIzNRBvd2C1kyo6jz3ZSMPyyuR47OPdiKWlbYnZNyDWuyR175qDnAJLiCo5fBBqPb3RiXgWlkOQ==} 256 | 257 | c8@8.0.1: 258 | resolution: {integrity: sha512-EINpopxZNH1mETuI0DzRA4MZpAUH+IFiRhnmFD3vFr3vdrgxqi3VfE3KL0AIL+zDq8rC9bZqwM/VDmmoe04y7w==} 259 | engines: {node: '>=12'} 260 | hasBin: true 261 | 262 | call-bind@1.0.2: 263 | resolution: {integrity: sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==} 264 | 265 | callsites@3.1.0: 266 | resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} 267 | engines: {node: '>=6'} 268 | 269 | camelcase-css@2.0.1: 270 | resolution: {integrity: sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==} 271 | engines: {node: '>= 6'} 272 | 273 | chalk@1.1.3: 274 | resolution: {integrity: sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==} 275 | engines: {node: '>=0.10.0'} 276 | 277 | chalk@4.1.2: 278 | resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} 279 | engines: {node: '>=10'} 280 | 281 | clean-publish@4.2.0: 282 | resolution: {integrity: sha512-dqZF5y6KtlkYhbnJoXiOCP4L1TPdI7HtuDysslUrbI8vLPu65ZjVO3pu5xp4qH0X2cWdDN/La04woe6fg4LNSw==} 283 | engines: {node: '>= 16.0.0'} 284 | hasBin: true 285 | 286 | cliui@8.0.1: 287 | resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==} 288 | engines: {node: '>=12'} 289 | 290 | color-convert@2.0.1: 291 | resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} 292 | engines: {node: '>=7.0.0'} 293 | 294 | color-name@1.1.4: 295 | resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} 296 | 297 | concat-map@0.0.1: 298 | resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} 299 | 300 | convert-source-map@2.0.0: 301 | resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} 302 | 303 | cross-spawn@7.0.3: 304 | resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==} 305 | engines: {node: '>= 8'} 306 | 307 | debug@3.2.7: 308 | resolution: {integrity: sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==} 309 | peerDependencies: 310 | supports-color: '*' 311 | peerDependenciesMeta: 312 | supports-color: 313 | optional: true 314 | 315 | debug@4.3.4: 316 | resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==} 317 | engines: {node: '>=6.0'} 318 | peerDependencies: 319 | supports-color: '*' 320 | peerDependenciesMeta: 321 | supports-color: 322 | optional: true 323 | 324 | deep-is@0.1.4: 325 | resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} 326 | 327 | define-data-property@1.1.0: 328 | resolution: {integrity: sha512-UzGwzcjyv3OtAvolTj1GoyNYzfFR+iqbGjcnBEENZVCpM4/Ng1yhGNvS3lR/xDS74Tb2wGG9WzNSNIOS9UVb2g==} 329 | engines: {node: '>= 0.4'} 330 | 331 | define-properties@1.2.1: 332 | resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==} 333 | engines: {node: '>= 0.4'} 334 | 335 | dequal@2.0.3: 336 | resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==} 337 | engines: {node: '>=6'} 338 | 339 | diff@5.1.0: 340 | resolution: {integrity: sha512-D+mk+qE8VC/PAUrlAU34N+VfXev0ghe5ywmpqrawphmVZc1bEfn56uo9qpyGp1p4xpzOHkSW4ztBd6L7Xx4ACw==} 341 | engines: {node: '>=0.3.1'} 342 | 343 | dir-glob@3.0.1: 344 | resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} 345 | engines: {node: '>=8'} 346 | 347 | doctrine@2.1.0: 348 | resolution: {integrity: sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==} 349 | engines: {node: '>=0.10.0'} 350 | 351 | doctrine@3.0.0: 352 | resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==} 353 | engines: {node: '>=6.0.0'} 354 | 355 | emoji-regex@8.0.0: 356 | resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} 357 | 358 | es-abstract@1.22.2: 359 | resolution: {integrity: sha512-YoxfFcDmhjOgWPWsV13+2RNjq1F6UQnfs+8TftwNqtzlmFzEXvlUwdrNrYeaizfjQzRMxkZ6ElWMOJIFKdVqwA==} 360 | engines: {node: '>= 0.4'} 361 | 362 | es-set-tostringtag@2.0.1: 363 | resolution: {integrity: sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==} 364 | engines: {node: '>= 0.4'} 365 | 366 | es-shim-unscopables@1.0.0: 367 | resolution: {integrity: sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==} 368 | 369 | es-to-primitive@1.2.1: 370 | resolution: {integrity: sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==} 371 | engines: {node: '>= 0.4'} 372 | 373 | escalade@3.1.1: 374 | resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==} 375 | engines: {node: '>=6'} 376 | 377 | escape-string-regexp@1.0.5: 378 | resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==} 379 | engines: {node: '>=0.8.0'} 380 | 381 | escape-string-regexp@4.0.0: 382 | resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} 383 | engines: {node: '>=10'} 384 | 385 | eslint-config-standard@17.1.0: 386 | resolution: {integrity: sha512-IwHwmaBNtDK4zDHQukFDW5u/aTb8+meQWZvNFWkiGmbWjD6bqyuSSBxxXKkCftCUzc1zwCH2m/baCNDLGmuO5Q==} 387 | engines: {node: '>=12.0.0'} 388 | peerDependencies: 389 | eslint: ^8.0.1 390 | eslint-plugin-import: ^2.25.2 391 | eslint-plugin-n: '^15.0.0 || ^16.0.0 ' 392 | eslint-plugin-promise: ^6.0.0 393 | 394 | eslint-import-resolver-node@0.3.9: 395 | resolution: {integrity: sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==} 396 | 397 | eslint-module-utils@2.8.0: 398 | resolution: {integrity: sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==} 399 | engines: {node: '>=4'} 400 | peerDependencies: 401 | '@typescript-eslint/parser': '*' 402 | eslint: '*' 403 | eslint-import-resolver-node: '*' 404 | eslint-import-resolver-typescript: '*' 405 | eslint-import-resolver-webpack: '*' 406 | peerDependenciesMeta: 407 | '@typescript-eslint/parser': 408 | optional: true 409 | eslint: 410 | optional: true 411 | eslint-import-resolver-node: 412 | optional: true 413 | eslint-import-resolver-typescript: 414 | optional: true 415 | eslint-import-resolver-webpack: 416 | optional: true 417 | 418 | eslint-plugin-es-x@7.2.0: 419 | resolution: {integrity: sha512-9dvv5CcvNjSJPqnS5uZkqb3xmbeqRLnvXKK7iI5+oK/yTusyc46zbBZKENGsOfojm/mKfszyZb+wNqNPAPeGXA==} 420 | engines: {node: ^14.18.0 || >=16.0.0} 421 | peerDependencies: 422 | eslint: '>=8' 423 | 424 | eslint-plugin-import@2.28.1: 425 | resolution: {integrity: sha512-9I9hFlITvOV55alzoKBI+K9q74kv0iKMeY6av5+umsNwayt59fz692daGyjR+oStBQgx6nwR9rXldDev3Clw+A==} 426 | engines: {node: '>=4'} 427 | peerDependencies: 428 | '@typescript-eslint/parser': '*' 429 | eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 430 | peerDependenciesMeta: 431 | '@typescript-eslint/parser': 432 | optional: true 433 | 434 | eslint-plugin-n@16.1.0: 435 | resolution: {integrity: sha512-3wv/TooBst0N4ND+pnvffHuz9gNPmk/NkLwAxOt2JykTl/hcuECe6yhTtLJcZjIxtZwN+GX92ACp/QTLpHA3Hg==} 436 | engines: {node: '>=16.0.0'} 437 | peerDependencies: 438 | eslint: '>=7.0.0' 439 | 440 | eslint-plugin-node-import@1.0.4: 441 | resolution: {integrity: sha512-nn6EkM7+vJCDCXZiM0FDpYSekbhlk5LNoHJm9DlVSucGrsT9WoK+qOxIEm+SwoFBeH73cMHMavioDaHsu22b0Q==} 442 | engines: {node: ^14.18.0 || ^16.0.0 || >= 18.0.0} 443 | peerDependencies: 444 | eslint: '>=7' 445 | 446 | eslint-plugin-node-imports@1.0.2: 447 | resolution: {integrity: sha512-RK+dWVZDPYrMFa0PsvS3Ej9jqmOOoFqMehyoGPTmsu1kv36wMO4O95h1f10Ah1xhh4QLEaoqgBFOjYDTXk+aNg==} 448 | peerDependencies: 449 | eslint: ^8.0.0 450 | 451 | eslint-plugin-perfectionist@2.1.0: 452 | resolution: {integrity: sha512-KVA7H6J/qfmZH/WopNKFgYbKoX+ozKAOIeQvo/+jibn6k9e71Et+giIHEHrMICZ043CeGpRKrCRRhlmD7pjeRg==} 453 | peerDependencies: 454 | astro-eslint-parser: ^0.14.0 455 | eslint: '>=8.0.0' 456 | svelte: '>=3.0.0' 457 | svelte-eslint-parser: ^0.32.0 458 | vue-eslint-parser: '>=9.0.0' 459 | peerDependenciesMeta: 460 | astro-eslint-parser: 461 | optional: true 462 | svelte: 463 | optional: true 464 | svelte-eslint-parser: 465 | optional: true 466 | vue-eslint-parser: 467 | optional: true 468 | 469 | eslint-plugin-prefer-let@3.0.1: 470 | resolution: {integrity: sha512-vbznkkBSXB63d4o1o0NIm5C2ey3V5wKr/25dAvPdydQXdowAcnr69cbLgxd2YAG81IV5eddCO55Lp6gL7wSE4w==} 471 | engines: {node: '>=0.10.0'} 472 | 473 | eslint-plugin-promise@6.1.1: 474 | resolution: {integrity: sha512-tjqWDwVZQo7UIPMeDReOpUgHCmCiH+ePnVT+5zVapL0uuHnegBUs2smM13CzOs2Xb5+MHMRFTs9v24yjba4Oig==} 475 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 476 | peerDependencies: 477 | eslint: ^7.0.0 || ^8.0.0 478 | 479 | eslint-scope@7.2.2: 480 | resolution: {integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==} 481 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 482 | 483 | eslint-visitor-keys@3.4.3: 484 | resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} 485 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 486 | 487 | eslint@8.51.0: 488 | resolution: {integrity: sha512-2WuxRZBrlwnXi+/vFSJyjMqrNjtJqiasMzehF0shoLaW7DzS3/9Yvrmq5JiT66+pNjiX4UBnLDiKHcWAr/OInA==} 489 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 490 | hasBin: true 491 | 492 | espree@9.6.1: 493 | resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==} 494 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 495 | 496 | esquery@1.5.0: 497 | resolution: {integrity: sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==} 498 | engines: {node: '>=0.10'} 499 | 500 | esrecurse@4.3.0: 501 | resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==} 502 | engines: {node: '>=4.0'} 503 | 504 | estraverse@5.3.0: 505 | resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} 506 | engines: {node: '>=4.0'} 507 | 508 | esutils@2.0.3: 509 | resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} 510 | engines: {node: '>=0.10.0'} 511 | 512 | fast-deep-equal@3.1.3: 513 | resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} 514 | 515 | fast-glob@3.3.1: 516 | resolution: {integrity: sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==} 517 | engines: {node: '>=8.6.0'} 518 | 519 | fast-json-stable-stringify@2.1.0: 520 | resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} 521 | 522 | fast-levenshtein@2.0.6: 523 | resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} 524 | 525 | fastq@1.15.0: 526 | resolution: {integrity: sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==} 527 | 528 | file-entry-cache@6.0.1: 529 | resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==} 530 | engines: {node: ^10.12.0 || >=12.0.0} 531 | 532 | fill-range@7.1.1: 533 | resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} 534 | engines: {node: '>=8'} 535 | 536 | find-up@5.0.0: 537 | resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} 538 | engines: {node: '>=10'} 539 | 540 | flat-cache@3.1.1: 541 | resolution: {integrity: sha512-/qM2b3LUIaIgviBQovTLvijfyOQXPtSRnRK26ksj2J7rzPIecePUIpJsZ4T02Qg+xiAEKIs5K8dsHEd+VaKa/Q==} 542 | engines: {node: '>=12.0.0'} 543 | 544 | flatted@3.2.9: 545 | resolution: {integrity: sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ==} 546 | 547 | for-each@0.3.3: 548 | resolution: {integrity: sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==} 549 | 550 | foreground-child@2.0.0: 551 | resolution: {integrity: sha512-dCIq9FpEcyQyXKCkyzmlPTFNgrCzPudOe+mhvJU5zAtlBnGVy2yKxtfsxK2tQBThwq225jcvBjpw1Gr40uzZCA==} 552 | engines: {node: '>=8.0.0'} 553 | 554 | fs.realpath@1.0.0: 555 | resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} 556 | 557 | function-bind@1.1.1: 558 | resolution: {integrity: sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==} 559 | 560 | function.prototype.name@1.1.6: 561 | resolution: {integrity: sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==} 562 | engines: {node: '>= 0.4'} 563 | 564 | functions-have-names@1.2.3: 565 | resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==} 566 | 567 | get-caller-file@2.0.5: 568 | resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==} 569 | engines: {node: 6.* || 8.* || >= 10.*} 570 | 571 | get-intrinsic@1.2.1: 572 | resolution: {integrity: sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw==} 573 | 574 | get-symbol-description@1.0.0: 575 | resolution: {integrity: sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==} 576 | engines: {node: '>= 0.4'} 577 | 578 | get-tsconfig@4.7.2: 579 | resolution: {integrity: sha512-wuMsz4leaj5hbGgg4IvDU0bqJagpftG5l5cXIAvo8uZrqn0NJqwtfupTN00VnkQJPcIRrxYrm1Ue24btpCha2A==} 580 | 581 | glob-parent@5.1.2: 582 | resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} 583 | engines: {node: '>= 6'} 584 | 585 | glob-parent@6.0.2: 586 | resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} 587 | engines: {node: '>=10.13.0'} 588 | 589 | glob@7.2.3: 590 | resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} 591 | deprecated: Glob versions prior to v9 are no longer supported 592 | 593 | globals@13.23.0: 594 | resolution: {integrity: sha512-XAmF0RjlrjY23MA51q3HltdlGxUpXPvg0GioKiD9X6HD28iMjo2dKC8Vqwm7lne4GNr78+RHTfliktR6ZH09wA==} 595 | engines: {node: '>=8'} 596 | 597 | globalthis@1.0.3: 598 | resolution: {integrity: sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==} 599 | engines: {node: '>= 0.4'} 600 | 601 | globby@11.1.0: 602 | resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==} 603 | engines: {node: '>=10'} 604 | 605 | gopd@1.0.1: 606 | resolution: {integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==} 607 | 608 | graphemer@1.4.0: 609 | resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} 610 | 611 | has-ansi@2.0.0: 612 | resolution: {integrity: sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg==} 613 | engines: {node: '>=0.10.0'} 614 | 615 | has-bigints@1.0.2: 616 | resolution: {integrity: sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==} 617 | 618 | has-flag@1.0.0: 619 | resolution: {integrity: sha512-DyYHfIYwAJmjAjSSPKANxI8bFY9YtFrgkAfinBojQ8YJTOuOuav64tMUJv584SES4xl74PmuaevIyaLESHdTAA==} 620 | engines: {node: '>=0.10.0'} 621 | 622 | has-flag@4.0.0: 623 | resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} 624 | engines: {node: '>=8'} 625 | 626 | has-property-descriptors@1.0.0: 627 | resolution: {integrity: sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==} 628 | 629 | has-proto@1.0.1: 630 | resolution: {integrity: sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==} 631 | engines: {node: '>= 0.4'} 632 | 633 | has-symbols@1.0.3: 634 | resolution: {integrity: sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==} 635 | engines: {node: '>= 0.4'} 636 | 637 | has-tostringtag@1.0.0: 638 | resolution: {integrity: sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==} 639 | engines: {node: '>= 0.4'} 640 | 641 | has@1.0.4: 642 | resolution: {integrity: sha512-qdSAmqLF6209RFj4VVItywPMbm3vWylknmB3nvNiUIs72xAimcM8nVYxYr7ncvZq5qzk9MKIZR8ijqD/1QuYjQ==} 643 | engines: {node: '>= 0.4.0'} 644 | 645 | html-escaper@2.0.2: 646 | resolution: {integrity: sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==} 647 | 648 | ignore@5.2.4: 649 | resolution: {integrity: sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==} 650 | engines: {node: '>= 4'} 651 | 652 | import-fresh@3.3.0: 653 | resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} 654 | engines: {node: '>=6'} 655 | 656 | imurmurhash@0.1.4: 657 | resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} 658 | engines: {node: '>=0.8.19'} 659 | 660 | inflight@1.0.6: 661 | resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} 662 | deprecated: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful. 663 | 664 | inherits@2.0.4: 665 | resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} 666 | 667 | internal-slot@1.0.5: 668 | resolution: {integrity: sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ==} 669 | engines: {node: '>= 0.4'} 670 | 671 | is-array-buffer@3.0.2: 672 | resolution: {integrity: sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==} 673 | 674 | is-bigint@1.0.4: 675 | resolution: {integrity: sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==} 676 | 677 | is-boolean-object@1.1.2: 678 | resolution: {integrity: sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==} 679 | engines: {node: '>= 0.4'} 680 | 681 | is-callable@1.2.7: 682 | resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==} 683 | engines: {node: '>= 0.4'} 684 | 685 | is-core-module@2.13.0: 686 | resolution: {integrity: sha512-Z7dk6Qo8pOCp3l4tsX2C5ZVas4V+UxwQodwZhLopL91TX8UyyHEXafPcyoeeWuLrwzHcr3igO78wNLwHJHsMCQ==} 687 | 688 | is-date-object@1.0.5: 689 | resolution: {integrity: sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==} 690 | engines: {node: '>= 0.4'} 691 | 692 | is-extglob@2.1.1: 693 | resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} 694 | engines: {node: '>=0.10.0'} 695 | 696 | is-fullwidth-code-point@3.0.0: 697 | resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} 698 | engines: {node: '>=8'} 699 | 700 | is-glob@4.0.3: 701 | resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} 702 | engines: {node: '>=0.10.0'} 703 | 704 | is-negative-zero@2.0.2: 705 | resolution: {integrity: sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==} 706 | engines: {node: '>= 0.4'} 707 | 708 | is-number-object@1.0.7: 709 | resolution: {integrity: sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==} 710 | engines: {node: '>= 0.4'} 711 | 712 | is-number@7.0.0: 713 | resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} 714 | engines: {node: '>=0.12.0'} 715 | 716 | is-path-inside@3.0.3: 717 | resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==} 718 | engines: {node: '>=8'} 719 | 720 | is-regex@1.1.4: 721 | resolution: {integrity: sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==} 722 | engines: {node: '>= 0.4'} 723 | 724 | is-shared-array-buffer@1.0.2: 725 | resolution: {integrity: sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==} 726 | 727 | is-string@1.0.7: 728 | resolution: {integrity: sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==} 729 | engines: {node: '>= 0.4'} 730 | 731 | is-symbol@1.0.4: 732 | resolution: {integrity: sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==} 733 | engines: {node: '>= 0.4'} 734 | 735 | is-typed-array@1.1.12: 736 | resolution: {integrity: sha512-Z14TF2JNG8Lss5/HMqt0//T9JeHXttXy5pH/DBU4vi98ozO2btxzq9MwYDZYnKwU8nRsz/+GVFVRDq3DkVuSPg==} 737 | engines: {node: '>= 0.4'} 738 | 739 | is-weakref@1.0.2: 740 | resolution: {integrity: sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==} 741 | 742 | isarray@2.0.5: 743 | resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==} 744 | 745 | isexe@2.0.0: 746 | resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} 747 | 748 | istanbul-lib-coverage@3.2.0: 749 | resolution: {integrity: sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==} 750 | engines: {node: '>=8'} 751 | 752 | istanbul-lib-report@3.0.1: 753 | resolution: {integrity: sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==} 754 | engines: {node: '>=10'} 755 | 756 | istanbul-reports@3.1.6: 757 | resolution: {integrity: sha512-TLgnMkKg3iTDsQ9PbPTdpfAK2DzjF9mqUG7RMgcQl8oFjad8ob4laGxv5XV5U9MAfx8D6tSJiUyuAwzLicaxlg==} 758 | engines: {node: '>=8'} 759 | 760 | js-base64@2.6.4: 761 | resolution: {integrity: sha512-pZe//GGmwJndub7ZghVHz7vjb2LgC1m8B07Au3eYqeqv9emhESByMXxaEgkUkEqJe87oBbSniGYoQNIBklc7IQ==} 762 | 763 | js-yaml@4.1.0: 764 | resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} 765 | hasBin: true 766 | 767 | json-buffer@3.0.1: 768 | resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} 769 | 770 | json-schema-traverse@0.4.1: 771 | resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} 772 | 773 | json-stable-stringify-without-jsonify@1.0.1: 774 | resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} 775 | 776 | json5@1.0.2: 777 | resolution: {integrity: sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==} 778 | hasBin: true 779 | 780 | keyv@4.5.4: 781 | resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} 782 | 783 | kleur@4.1.5: 784 | resolution: {integrity: sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==} 785 | engines: {node: '>=6'} 786 | 787 | levn@0.4.1: 788 | resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} 789 | engines: {node: '>= 0.8.0'} 790 | 791 | lilconfig@2.1.0: 792 | resolution: {integrity: sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==} 793 | engines: {node: '>=10'} 794 | 795 | locate-path@6.0.0: 796 | resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} 797 | engines: {node: '>=10'} 798 | 799 | lodash.merge@4.6.2: 800 | resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} 801 | 802 | lru-cache@6.0.0: 803 | resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==} 804 | engines: {node: '>=10'} 805 | 806 | make-dir@4.0.0: 807 | resolution: {integrity: sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==} 808 | engines: {node: '>=10'} 809 | 810 | merge2@1.4.1: 811 | resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} 812 | engines: {node: '>= 8'} 813 | 814 | micromatch@4.0.5: 815 | resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==} 816 | engines: {node: '>=8.6'} 817 | 818 | minimatch@3.1.2: 819 | resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} 820 | 821 | minimatch@9.0.3: 822 | resolution: {integrity: sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==} 823 | engines: {node: '>=16 || 14 >=14.17'} 824 | 825 | minimist@1.2.8: 826 | resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} 827 | 828 | mri@1.2.0: 829 | resolution: {integrity: sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==} 830 | engines: {node: '>=4'} 831 | 832 | ms@2.1.2: 833 | resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} 834 | 835 | ms@2.1.3: 836 | resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} 837 | 838 | nanoid@3.3.6: 839 | resolution: {integrity: sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==} 840 | engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} 841 | hasBin: true 842 | 843 | natural-compare-lite@1.4.0: 844 | resolution: {integrity: sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==} 845 | 846 | natural-compare@1.4.0: 847 | resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} 848 | 849 | object-inspect@1.12.3: 850 | resolution: {integrity: sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==} 851 | 852 | object-keys@1.1.1: 853 | resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==} 854 | engines: {node: '>= 0.4'} 855 | 856 | object.assign@4.1.4: 857 | resolution: {integrity: sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==} 858 | engines: {node: '>= 0.4'} 859 | 860 | object.fromentries@2.0.7: 861 | resolution: {integrity: sha512-UPbPHML6sL8PI/mOqPwsH4G6iyXcCGzLin8KvEPenOZN5lpCNBZZQ+V62vdjB1mQHrmqGQt5/OJzemUA+KJmEA==} 862 | engines: {node: '>= 0.4'} 863 | 864 | object.groupby@1.0.1: 865 | resolution: {integrity: sha512-HqaQtqLnp/8Bn4GL16cj+CUYbnpe1bh0TtEaWvybszDG4tgxCJuRpV8VGuvNaI1fAnI4lUJzDG55MXcOH4JZcQ==} 866 | 867 | object.values@1.1.7: 868 | resolution: {integrity: sha512-aU6xnDFYT3x17e/f0IiiwlGPTy2jzMySGfUB4fq6z7CV8l85CWHDk5ErhyhpfDHhrOMwGFhSQkhMGHaIotA6Ng==} 869 | engines: {node: '>= 0.4'} 870 | 871 | once@1.4.0: 872 | resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} 873 | 874 | optionator@0.9.3: 875 | resolution: {integrity: sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==} 876 | engines: {node: '>= 0.8.0'} 877 | 878 | p-limit@3.1.0: 879 | resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} 880 | engines: {node: '>=10'} 881 | 882 | p-locate@5.0.0: 883 | resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} 884 | engines: {node: '>=10'} 885 | 886 | parent-module@1.0.1: 887 | resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} 888 | engines: {node: '>=6'} 889 | 890 | path-exists@4.0.0: 891 | resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} 892 | engines: {node: '>=8'} 893 | 894 | path-is-absolute@1.0.1: 895 | resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==} 896 | engines: {node: '>=0.10.0'} 897 | 898 | path-key@3.1.1: 899 | resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} 900 | engines: {node: '>=8'} 901 | 902 | path-parse@1.0.7: 903 | resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} 904 | 905 | path-type@4.0.0: 906 | resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} 907 | engines: {node: '>=8'} 908 | 909 | picocolors@1.0.0: 910 | resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==} 911 | 912 | picomatch@2.3.1: 913 | resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} 914 | engines: {node: '>=8.6'} 915 | 916 | postcss-each@1.1.0: 917 | resolution: {integrity: sha512-YfTPHHAPFVRgEJfLg9RM4R9WYEHVU9Rf1R8QgZfnObwV2dgNqzTLzTl0w5tF71ApFcYLiJAXiTpHAoqJFYcZVw==} 918 | peerDependencies: 919 | postcss: ^8.0.0 920 | 921 | postcss-for@2.1.1: 922 | resolution: {integrity: sha512-X0R84FCyr5cqzW4+/g4Dvz2OUe1iwC3G/atIrwEpiRstZlBBpknV+ETlIneSTnw/iXgUnEoTRaO2qXY62YWLhQ==} 923 | 924 | postcss-js@4.0.1: 925 | resolution: {integrity: sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==} 926 | engines: {node: ^12 || ^14 || >= 16} 927 | peerDependencies: 928 | postcss: ^8.4.21 929 | 930 | postcss-mixins@9.0.4: 931 | resolution: {integrity: sha512-XVq5jwQJDRu5M1XGkdpgASqLk37OqkH4JCFDXl/Dn7janOJjCTEKL+36cnRVy7bMtoBzALfO7bV7nTIsFnUWLA==} 932 | engines: {node: '>=14.0'} 933 | peerDependencies: 934 | postcss: ^8.2.14 935 | 936 | postcss-simple-vars@2.0.0: 937 | resolution: {integrity: sha512-HllLaKKCBOdKudyzqrw/ve5rWouM9cDL+WHaSF9q4CkBEPjdTdiKNw1xF2dAz5rUKrxVmnUmOYxamwy37dnq2Q==} 938 | 939 | postcss-simple-vars@6.0.3: 940 | resolution: {integrity: sha512-fkNn4Zio8vN4vIig9IFdb8lVlxWnYR769RgvxCM6YWlFKie/nQaOcaMMMFz/s4gsfHW4/5bJW+i57zD67mQU7g==} 941 | engines: {node: '>=10.0'} 942 | peerDependencies: 943 | postcss: ^8.2.1 944 | 945 | postcss-simple-vars@7.0.1: 946 | resolution: {integrity: sha512-5GLLXaS8qmzHMOjVxqkk1TZPf1jMqesiI7qLhnlyERalG0sMbHIbJqrcnrpmZdKCLglHnRHoEBB61RtGTsj++A==} 947 | engines: {node: '>=14.0'} 948 | peerDependencies: 949 | postcss: ^8.2.1 950 | 951 | postcss@5.2.18: 952 | resolution: {integrity: sha512-zrUjRRe1bpXKsX1qAJNJjqZViErVuyEkMTRrwu4ud4sbTtIBRmtaYDrHmcGgmrbsW3MHfmtIf+vJumgQn+PrXg==} 953 | engines: {node: '>=0.12'} 954 | 955 | postcss@8.4.31: 956 | resolution: {integrity: sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==} 957 | engines: {node: ^10 || ^12 || >=14} 958 | 959 | prelude-ls@1.2.1: 960 | resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} 961 | engines: {node: '>= 0.8.0'} 962 | 963 | punycode@2.3.0: 964 | resolution: {integrity: sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==} 965 | engines: {node: '>=6'} 966 | 967 | queue-microtask@1.2.3: 968 | resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} 969 | 970 | regexp.prototype.flags@1.5.1: 971 | resolution: {integrity: sha512-sy6TXMN+hnP/wMy+ISxg3krXx7BAtWVO4UouuCN/ziM9UEne0euamVNafDfvC83bRNr95y0V5iijeDQFUNpvrg==} 972 | engines: {node: '>= 0.4'} 973 | 974 | require-directory@2.1.1: 975 | resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==} 976 | engines: {node: '>=0.10.0'} 977 | 978 | requireindex@1.2.0: 979 | resolution: {integrity: sha512-L9jEkOi3ASd9PYit2cwRfyppc9NoABujTP8/5gFcbERmo5jUoAKovIC3fsF17pkTnGsrByysqX+Kxd2OTNI1ww==} 980 | engines: {node: '>=0.10.5'} 981 | 982 | resolve-from@4.0.0: 983 | resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} 984 | engines: {node: '>=4'} 985 | 986 | resolve-pkg-maps@1.0.0: 987 | resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==} 988 | 989 | resolve@1.22.6: 990 | resolution: {integrity: sha512-njhxM7mV12JfufShqGy3Rz8j11RPdLy4xi15UurGJeoHLfJpVXKdh3ueuOqbYUcDZnffr6X739JBo5LzyahEsw==} 991 | hasBin: true 992 | 993 | reusify@1.0.4: 994 | resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} 995 | engines: {iojs: '>=1.0.0', node: '>=0.10.0'} 996 | 997 | rimraf@3.0.2: 998 | resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} 999 | deprecated: Rimraf versions prior to v4 are no longer supported 1000 | hasBin: true 1001 | 1002 | run-parallel@1.2.0: 1003 | resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} 1004 | 1005 | sade@1.8.1: 1006 | resolution: {integrity: sha512-xal3CZX1Xlo/k4ApwCFrHVACi9fBqJ7V+mwhBsuf/1IOKbBy098Fex+Wa/5QMubw09pSZ/u8EY8PWgevJsXp1A==} 1007 | engines: {node: '>=6'} 1008 | 1009 | safe-array-concat@1.0.1: 1010 | resolution: {integrity: sha512-6XbUAseYE2KtOuGueyeobCySj9L4+66Tn6KQMOPQJrAJEowYKW/YR/MGJZl7FdydUdaFu4LYyDZjxf4/Nmo23Q==} 1011 | engines: {node: '>=0.4'} 1012 | 1013 | safe-regex-test@1.0.0: 1014 | resolution: {integrity: sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==} 1015 | 1016 | semver@6.3.1: 1017 | resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} 1018 | hasBin: true 1019 | 1020 | semver@7.5.4: 1021 | resolution: {integrity: sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==} 1022 | engines: {node: '>=10'} 1023 | hasBin: true 1024 | 1025 | set-function-name@2.0.1: 1026 | resolution: {integrity: sha512-tMNCiqYVkXIZgc2Hnoy2IvC/f8ezc5koaRFkCjrpWzGpCd3qbZXPzVy9MAZzK1ch/X0jvSkojys3oqJN0qCmdA==} 1027 | engines: {node: '>= 0.4'} 1028 | 1029 | shebang-command@2.0.0: 1030 | resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} 1031 | engines: {node: '>=8'} 1032 | 1033 | shebang-regex@3.0.0: 1034 | resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} 1035 | engines: {node: '>=8'} 1036 | 1037 | side-channel@1.0.4: 1038 | resolution: {integrity: sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==} 1039 | 1040 | signal-exit@3.0.7: 1041 | resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} 1042 | 1043 | slash@3.0.0: 1044 | resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} 1045 | engines: {node: '>=8'} 1046 | 1047 | source-map-js@1.0.2: 1048 | resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==} 1049 | engines: {node: '>=0.10.0'} 1050 | 1051 | source-map@0.5.7: 1052 | resolution: {integrity: sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==} 1053 | engines: {node: '>=0.10.0'} 1054 | 1055 | string-width@4.2.3: 1056 | resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} 1057 | engines: {node: '>=8'} 1058 | 1059 | string.prototype.trim@1.2.8: 1060 | resolution: {integrity: sha512-lfjY4HcixfQXOfaqCvcBuOIapyaroTXhbkfJN3gcB1OtyupngWK4sEET9Knd0cXd28kTUqu/kHoV4HKSJdnjiQ==} 1061 | engines: {node: '>= 0.4'} 1062 | 1063 | string.prototype.trimend@1.0.7: 1064 | resolution: {integrity: sha512-Ni79DqeB72ZFq1uH/L6zJ+DKZTkOtPIHovb3YZHQViE+HDouuU4mBrLOLDn5Dde3RF8qw5qVETEjhu9locMLvA==} 1065 | 1066 | string.prototype.trimstart@1.0.7: 1067 | resolution: {integrity: sha512-NGhtDFu3jCEm7B4Fy0DpLewdJQOZcQ0rGbwQ/+stjnrp2i+rlKeCvos9hOIeCmqwratM47OBxY7uFZzjxHXmrg==} 1068 | 1069 | strip-ansi@3.0.1: 1070 | resolution: {integrity: sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==} 1071 | engines: {node: '>=0.10.0'} 1072 | 1073 | strip-ansi@6.0.1: 1074 | resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} 1075 | engines: {node: '>=8'} 1076 | 1077 | strip-bom@3.0.0: 1078 | resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==} 1079 | engines: {node: '>=4'} 1080 | 1081 | strip-json-comments@3.1.1: 1082 | resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} 1083 | engines: {node: '>=8'} 1084 | 1085 | sugarss@4.0.1: 1086 | resolution: {integrity: sha512-WCjS5NfuVJjkQzK10s8WOBY+hhDxxNt/N6ZaGwxFZ+wN3/lKKFSaaKUNecULcTTvE4urLcKaZFQD8vO0mOZujw==} 1087 | engines: {node: '>=12.0'} 1088 | peerDependencies: 1089 | postcss: ^8.3.3 1090 | 1091 | supports-color@2.0.0: 1092 | resolution: {integrity: sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==} 1093 | engines: {node: '>=0.8.0'} 1094 | 1095 | supports-color@3.2.3: 1096 | resolution: {integrity: sha512-Jds2VIYDrlp5ui7t8abHN2bjAu4LV/q4N2KivFPpGH0lrka0BMq/33AmECUXlKPcHigkNaqfXRENFju+rlcy+A==} 1097 | engines: {node: '>=0.8.0'} 1098 | 1099 | supports-color@7.2.0: 1100 | resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} 1101 | engines: {node: '>=8'} 1102 | 1103 | supports-preserve-symlinks-flag@1.0.0: 1104 | resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} 1105 | engines: {node: '>= 0.4'} 1106 | 1107 | test-exclude@6.0.0: 1108 | resolution: {integrity: sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==} 1109 | engines: {node: '>=8'} 1110 | 1111 | text-table@0.2.0: 1112 | resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==} 1113 | 1114 | to-regex-range@5.0.1: 1115 | resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} 1116 | engines: {node: '>=8.0'} 1117 | 1118 | ts-api-utils@1.0.3: 1119 | resolution: {integrity: sha512-wNMeqtMz5NtwpT/UZGY5alT+VoKdSsOOP/kqHFcUW1P/VRhH2wJ48+DN2WwUliNbQ976ETwDL0Ifd2VVvgonvg==} 1120 | engines: {node: '>=16.13.0'} 1121 | peerDependencies: 1122 | typescript: '>=4.2.0' 1123 | 1124 | tsconfig-paths@3.14.2: 1125 | resolution: {integrity: sha512-o/9iXgCYc5L/JxCHPe3Hvh8Q/2xm5Z+p18PESBU6Ff33695QnCHBEjcytY2q19ua7Mbl/DavtBOLq+oG0RCL+g==} 1126 | 1127 | type-check@0.4.0: 1128 | resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} 1129 | engines: {node: '>= 0.8.0'} 1130 | 1131 | type-fest@0.20.2: 1132 | resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==} 1133 | engines: {node: '>=10'} 1134 | 1135 | typed-array-buffer@1.0.0: 1136 | resolution: {integrity: sha512-Y8KTSIglk9OZEr8zywiIHG/kmQ7KWyjseXs1CbSo8vC42w7hg2HgYTxSWwP0+is7bWDc1H+Fo026CpHFwm8tkw==} 1137 | engines: {node: '>= 0.4'} 1138 | 1139 | typed-array-byte-length@1.0.0: 1140 | resolution: {integrity: sha512-Or/+kvLxNpeQ9DtSydonMxCx+9ZXOswtwJn17SNLvhptaXYDJvkFFP5zbfU/uLmvnBJlI4yrnXRxpdWH/M5tNA==} 1141 | engines: {node: '>= 0.4'} 1142 | 1143 | typed-array-byte-offset@1.0.0: 1144 | resolution: {integrity: sha512-RD97prjEt9EL8YgAgpOkf3O4IF9lhJFr9g0htQkm0rchFp/Vx7LW5Q8fSXXub7BXAODyUQohRMyOc3faCPd0hg==} 1145 | engines: {node: '>= 0.4'} 1146 | 1147 | typed-array-length@1.0.4: 1148 | resolution: {integrity: sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==} 1149 | 1150 | typescript@5.2.2: 1151 | resolution: {integrity: sha512-mI4WrpHsbCIcwT9cF4FZvr80QUeKvsUsUvKDoR+X/7XHQH98xYD8YHZg7ANtz2GtZt/CBq2QJ0thkGJMHfqc1w==} 1152 | engines: {node: '>=14.17'} 1153 | hasBin: true 1154 | 1155 | unbox-primitive@1.0.2: 1156 | resolution: {integrity: sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==} 1157 | 1158 | uri-js@4.4.1: 1159 | resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} 1160 | 1161 | uvu@0.5.6: 1162 | resolution: {integrity: sha512-+g8ENReyr8YsOc6fv/NVJs2vFdHBnBNdfE49rshrTzDWOlUx4Gq7KOS2GD8eqhy2j+Ejq29+SbKH8yjkAqXqoA==} 1163 | engines: {node: '>=8'} 1164 | hasBin: true 1165 | 1166 | v8-to-istanbul@9.1.3: 1167 | resolution: {integrity: sha512-9lDD+EVI2fjFsMWXc6dy5JJzBsVTcQ2fVkfBvncZ6xJWG9wtBhOldG+mHkSL0+V1K/xgZz0JDO5UT5hFwHUghg==} 1168 | engines: {node: '>=10.12.0'} 1169 | 1170 | which-boxed-primitive@1.0.2: 1171 | resolution: {integrity: sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==} 1172 | 1173 | which-typed-array@1.1.11: 1174 | resolution: {integrity: sha512-qe9UWWpkeG5yzZ0tNYxDmd7vo58HDBc39mZ0xWWpolAGADdFOzkfamWLDxkOWcvHQKVmdTyQdLD4NOfjLWTKew==} 1175 | engines: {node: '>= 0.4'} 1176 | 1177 | which@2.0.2: 1178 | resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} 1179 | engines: {node: '>= 8'} 1180 | hasBin: true 1181 | 1182 | wrap-ansi@7.0.0: 1183 | resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} 1184 | engines: {node: '>=10'} 1185 | 1186 | wrappy@1.0.2: 1187 | resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} 1188 | 1189 | y18n@5.0.8: 1190 | resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} 1191 | engines: {node: '>=10'} 1192 | 1193 | yallist@4.0.0: 1194 | resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} 1195 | 1196 | yargs-parser@21.1.1: 1197 | resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==} 1198 | engines: {node: '>=12'} 1199 | 1200 | yargs@17.7.2: 1201 | resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==} 1202 | engines: {node: '>=12'} 1203 | 1204 | yocto-queue@0.1.0: 1205 | resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} 1206 | engines: {node: '>=10'} 1207 | 1208 | snapshots: 1209 | 1210 | '@aashutoshrathi/word-wrap@1.2.6': {} 1211 | 1212 | '@bcoe/v8-coverage@0.2.3': {} 1213 | 1214 | '@eslint-community/eslint-utils@4.4.0(eslint@8.51.0)': 1215 | dependencies: 1216 | eslint: 8.51.0 1217 | eslint-visitor-keys: 3.4.3 1218 | 1219 | '@eslint-community/regexpp@4.9.1': {} 1220 | 1221 | '@eslint/eslintrc@2.1.2': 1222 | dependencies: 1223 | ajv: 6.12.6 1224 | debug: 4.3.4 1225 | espree: 9.6.1 1226 | globals: 13.23.0 1227 | ignore: 5.2.4 1228 | import-fresh: 3.3.0 1229 | js-yaml: 4.1.0 1230 | minimatch: 3.1.2 1231 | strip-json-comments: 3.1.1 1232 | transitivePeerDependencies: 1233 | - supports-color 1234 | 1235 | '@eslint/js@8.51.0': {} 1236 | 1237 | '@humanwhocodes/config-array@0.11.11': 1238 | dependencies: 1239 | '@humanwhocodes/object-schema': 1.2.1 1240 | debug: 4.3.4 1241 | minimatch: 3.1.2 1242 | transitivePeerDependencies: 1243 | - supports-color 1244 | 1245 | '@humanwhocodes/module-importer@1.0.1': {} 1246 | 1247 | '@humanwhocodes/object-schema@1.2.1': {} 1248 | 1249 | '@istanbuljs/schema@0.1.3': {} 1250 | 1251 | '@jridgewell/resolve-uri@3.1.1': {} 1252 | 1253 | '@jridgewell/sourcemap-codec@1.4.15': {} 1254 | 1255 | '@jridgewell/trace-mapping@0.3.19': 1256 | dependencies: 1257 | '@jridgewell/resolve-uri': 3.1.1 1258 | '@jridgewell/sourcemap-codec': 1.4.15 1259 | 1260 | '@logux/eslint-config@52.0.1(eslint-config-standard@17.1.0(eslint-plugin-import@2.28.1(eslint@8.51.0))(eslint-plugin-n@16.1.0(eslint@8.51.0))(eslint-plugin-promise@6.1.1(eslint@8.51.0))(eslint@8.51.0))(eslint-plugin-import@2.28.1(eslint@8.51.0))(eslint-plugin-n@16.1.0(eslint@8.51.0))(eslint-plugin-node-import@1.0.4(eslint@8.51.0))(eslint-plugin-perfectionist@2.1.0(eslint@8.51.0)(typescript@5.2.2))(eslint-plugin-prefer-let@3.0.1)(eslint-plugin-promise@6.1.1(eslint@8.51.0))(eslint@8.51.0)': 1261 | dependencies: 1262 | eslint: 8.51.0 1263 | eslint-config-standard: 17.1.0(eslint-plugin-import@2.28.1(eslint@8.51.0))(eslint-plugin-n@16.1.0(eslint@8.51.0))(eslint-plugin-promise@6.1.1(eslint@8.51.0))(eslint@8.51.0) 1264 | eslint-plugin-import: 2.28.1(eslint@8.51.0) 1265 | eslint-plugin-n: 16.1.0(eslint@8.51.0) 1266 | eslint-plugin-node-import: 1.0.4(eslint@8.51.0) 1267 | eslint-plugin-perfectionist: 2.1.0(eslint@8.51.0)(typescript@5.2.2) 1268 | eslint-plugin-prefer-let: 3.0.1 1269 | eslint-plugin-promise: 6.1.1(eslint@8.51.0) 1270 | 1271 | '@nodelib/fs.scandir@2.1.5': 1272 | dependencies: 1273 | '@nodelib/fs.stat': 2.0.5 1274 | run-parallel: 1.2.0 1275 | 1276 | '@nodelib/fs.stat@2.0.5': {} 1277 | 1278 | '@nodelib/fs.walk@1.2.8': 1279 | dependencies: 1280 | '@nodelib/fs.scandir': 2.1.5 1281 | fastq: 1.15.0 1282 | 1283 | '@types/istanbul-lib-coverage@2.0.4': {} 1284 | 1285 | '@types/json-schema@7.0.13': {} 1286 | 1287 | '@types/json5@0.0.29': {} 1288 | 1289 | '@types/semver@7.5.3': {} 1290 | 1291 | '@typescript-eslint/scope-manager@6.7.4': 1292 | dependencies: 1293 | '@typescript-eslint/types': 6.7.4 1294 | '@typescript-eslint/visitor-keys': 6.7.4 1295 | 1296 | '@typescript-eslint/types@6.7.4': {} 1297 | 1298 | '@typescript-eslint/typescript-estree@6.7.4(typescript@5.2.2)': 1299 | dependencies: 1300 | '@typescript-eslint/types': 6.7.4 1301 | '@typescript-eslint/visitor-keys': 6.7.4 1302 | debug: 4.3.4 1303 | globby: 11.1.0 1304 | is-glob: 4.0.3 1305 | semver: 7.5.4 1306 | ts-api-utils: 1.0.3(typescript@5.2.2) 1307 | optionalDependencies: 1308 | typescript: 5.2.2 1309 | transitivePeerDependencies: 1310 | - supports-color 1311 | 1312 | '@typescript-eslint/utils@6.7.4(eslint@8.51.0)(typescript@5.2.2)': 1313 | dependencies: 1314 | '@eslint-community/eslint-utils': 4.4.0(eslint@8.51.0) 1315 | '@types/json-schema': 7.0.13 1316 | '@types/semver': 7.5.3 1317 | '@typescript-eslint/scope-manager': 6.7.4 1318 | '@typescript-eslint/types': 6.7.4 1319 | '@typescript-eslint/typescript-estree': 6.7.4(typescript@5.2.2) 1320 | eslint: 8.51.0 1321 | semver: 7.5.4 1322 | transitivePeerDependencies: 1323 | - supports-color 1324 | - typescript 1325 | 1326 | '@typescript-eslint/visitor-keys@6.7.4': 1327 | dependencies: 1328 | '@typescript-eslint/types': 6.7.4 1329 | eslint-visitor-keys: 3.4.3 1330 | 1331 | acorn-jsx@5.3.2(acorn@8.10.0): 1332 | dependencies: 1333 | acorn: 8.10.0 1334 | 1335 | acorn@8.10.0: {} 1336 | 1337 | ajv@6.12.6: 1338 | dependencies: 1339 | fast-deep-equal: 3.1.3 1340 | fast-json-stable-stringify: 2.1.0 1341 | json-schema-traverse: 0.4.1 1342 | uri-js: 4.4.1 1343 | 1344 | ansi-regex@2.1.1: {} 1345 | 1346 | ansi-regex@5.0.1: {} 1347 | 1348 | ansi-styles@2.2.1: {} 1349 | 1350 | ansi-styles@4.3.0: 1351 | dependencies: 1352 | color-convert: 2.0.1 1353 | 1354 | argparse@2.0.1: {} 1355 | 1356 | array-buffer-byte-length@1.0.0: 1357 | dependencies: 1358 | call-bind: 1.0.2 1359 | is-array-buffer: 3.0.2 1360 | 1361 | array-includes@3.1.7: 1362 | dependencies: 1363 | call-bind: 1.0.2 1364 | define-properties: 1.2.1 1365 | es-abstract: 1.22.2 1366 | get-intrinsic: 1.2.1 1367 | is-string: 1.0.7 1368 | 1369 | array-union@2.1.0: {} 1370 | 1371 | array.prototype.findlastindex@1.2.3: 1372 | dependencies: 1373 | call-bind: 1.0.2 1374 | define-properties: 1.2.1 1375 | es-abstract: 1.22.2 1376 | es-shim-unscopables: 1.0.0 1377 | get-intrinsic: 1.2.1 1378 | 1379 | array.prototype.flat@1.3.2: 1380 | dependencies: 1381 | call-bind: 1.0.2 1382 | define-properties: 1.2.1 1383 | es-abstract: 1.22.2 1384 | es-shim-unscopables: 1.0.0 1385 | 1386 | array.prototype.flatmap@1.3.2: 1387 | dependencies: 1388 | call-bind: 1.0.2 1389 | define-properties: 1.2.1 1390 | es-abstract: 1.22.2 1391 | es-shim-unscopables: 1.0.0 1392 | 1393 | arraybuffer.prototype.slice@1.0.2: 1394 | dependencies: 1395 | array-buffer-byte-length: 1.0.0 1396 | call-bind: 1.0.2 1397 | define-properties: 1.2.1 1398 | es-abstract: 1.22.2 1399 | get-intrinsic: 1.2.1 1400 | is-array-buffer: 3.0.2 1401 | is-shared-array-buffer: 1.0.2 1402 | 1403 | available-typed-arrays@1.0.5: {} 1404 | 1405 | balanced-match@1.0.2: {} 1406 | 1407 | brace-expansion@1.1.11: 1408 | dependencies: 1409 | balanced-match: 1.0.2 1410 | concat-map: 0.0.1 1411 | 1412 | brace-expansion@2.0.1: 1413 | dependencies: 1414 | balanced-match: 1.0.2 1415 | 1416 | braces@3.0.3: 1417 | dependencies: 1418 | fill-range: 7.1.1 1419 | 1420 | builtins@5.0.1: 1421 | dependencies: 1422 | semver: 7.5.4 1423 | 1424 | c8@8.0.1: 1425 | dependencies: 1426 | '@bcoe/v8-coverage': 0.2.3 1427 | '@istanbuljs/schema': 0.1.3 1428 | find-up: 5.0.0 1429 | foreground-child: 2.0.0 1430 | istanbul-lib-coverage: 3.2.0 1431 | istanbul-lib-report: 3.0.1 1432 | istanbul-reports: 3.1.6 1433 | rimraf: 3.0.2 1434 | test-exclude: 6.0.0 1435 | v8-to-istanbul: 9.1.3 1436 | yargs: 17.7.2 1437 | yargs-parser: 21.1.1 1438 | 1439 | call-bind@1.0.2: 1440 | dependencies: 1441 | function-bind: 1.1.1 1442 | get-intrinsic: 1.2.1 1443 | 1444 | callsites@3.1.0: {} 1445 | 1446 | camelcase-css@2.0.1: {} 1447 | 1448 | chalk@1.1.3: 1449 | dependencies: 1450 | ansi-styles: 2.2.1 1451 | escape-string-regexp: 1.0.5 1452 | has-ansi: 2.0.0 1453 | strip-ansi: 3.0.1 1454 | supports-color: 2.0.0 1455 | 1456 | chalk@4.1.2: 1457 | dependencies: 1458 | ansi-styles: 4.3.0 1459 | supports-color: 7.2.0 1460 | 1461 | clean-publish@4.2.0: 1462 | dependencies: 1463 | cross-spawn: 7.0.3 1464 | fast-glob: 3.3.1 1465 | lilconfig: 2.1.0 1466 | micromatch: 4.0.5 1467 | 1468 | cliui@8.0.1: 1469 | dependencies: 1470 | string-width: 4.2.3 1471 | strip-ansi: 6.0.1 1472 | wrap-ansi: 7.0.0 1473 | 1474 | color-convert@2.0.1: 1475 | dependencies: 1476 | color-name: 1.1.4 1477 | 1478 | color-name@1.1.4: {} 1479 | 1480 | concat-map@0.0.1: {} 1481 | 1482 | convert-source-map@2.0.0: {} 1483 | 1484 | cross-spawn@7.0.3: 1485 | dependencies: 1486 | path-key: 3.1.1 1487 | shebang-command: 2.0.0 1488 | which: 2.0.2 1489 | 1490 | debug@3.2.7: 1491 | dependencies: 1492 | ms: 2.1.3 1493 | 1494 | debug@4.3.4: 1495 | dependencies: 1496 | ms: 2.1.2 1497 | 1498 | deep-is@0.1.4: {} 1499 | 1500 | define-data-property@1.1.0: 1501 | dependencies: 1502 | get-intrinsic: 1.2.1 1503 | gopd: 1.0.1 1504 | has-property-descriptors: 1.0.0 1505 | 1506 | define-properties@1.2.1: 1507 | dependencies: 1508 | define-data-property: 1.1.0 1509 | has-property-descriptors: 1.0.0 1510 | object-keys: 1.1.1 1511 | 1512 | dequal@2.0.3: {} 1513 | 1514 | diff@5.1.0: {} 1515 | 1516 | dir-glob@3.0.1: 1517 | dependencies: 1518 | path-type: 4.0.0 1519 | 1520 | doctrine@2.1.0: 1521 | dependencies: 1522 | esutils: 2.0.3 1523 | 1524 | doctrine@3.0.0: 1525 | dependencies: 1526 | esutils: 2.0.3 1527 | 1528 | emoji-regex@8.0.0: {} 1529 | 1530 | es-abstract@1.22.2: 1531 | dependencies: 1532 | array-buffer-byte-length: 1.0.0 1533 | arraybuffer.prototype.slice: 1.0.2 1534 | available-typed-arrays: 1.0.5 1535 | call-bind: 1.0.2 1536 | es-set-tostringtag: 2.0.1 1537 | es-to-primitive: 1.2.1 1538 | function.prototype.name: 1.1.6 1539 | get-intrinsic: 1.2.1 1540 | get-symbol-description: 1.0.0 1541 | globalthis: 1.0.3 1542 | gopd: 1.0.1 1543 | has: 1.0.4 1544 | has-property-descriptors: 1.0.0 1545 | has-proto: 1.0.1 1546 | has-symbols: 1.0.3 1547 | internal-slot: 1.0.5 1548 | is-array-buffer: 3.0.2 1549 | is-callable: 1.2.7 1550 | is-negative-zero: 2.0.2 1551 | is-regex: 1.1.4 1552 | is-shared-array-buffer: 1.0.2 1553 | is-string: 1.0.7 1554 | is-typed-array: 1.1.12 1555 | is-weakref: 1.0.2 1556 | object-inspect: 1.12.3 1557 | object-keys: 1.1.1 1558 | object.assign: 4.1.4 1559 | regexp.prototype.flags: 1.5.1 1560 | safe-array-concat: 1.0.1 1561 | safe-regex-test: 1.0.0 1562 | string.prototype.trim: 1.2.8 1563 | string.prototype.trimend: 1.0.7 1564 | string.prototype.trimstart: 1.0.7 1565 | typed-array-buffer: 1.0.0 1566 | typed-array-byte-length: 1.0.0 1567 | typed-array-byte-offset: 1.0.0 1568 | typed-array-length: 1.0.4 1569 | unbox-primitive: 1.0.2 1570 | which-typed-array: 1.1.11 1571 | 1572 | es-set-tostringtag@2.0.1: 1573 | dependencies: 1574 | get-intrinsic: 1.2.1 1575 | has: 1.0.4 1576 | has-tostringtag: 1.0.0 1577 | 1578 | es-shim-unscopables@1.0.0: 1579 | dependencies: 1580 | has: 1.0.4 1581 | 1582 | es-to-primitive@1.2.1: 1583 | dependencies: 1584 | is-callable: 1.2.7 1585 | is-date-object: 1.0.5 1586 | is-symbol: 1.0.4 1587 | 1588 | escalade@3.1.1: {} 1589 | 1590 | escape-string-regexp@1.0.5: {} 1591 | 1592 | escape-string-regexp@4.0.0: {} 1593 | 1594 | eslint-config-standard@17.1.0(eslint-plugin-import@2.28.1(eslint@8.51.0))(eslint-plugin-n@16.1.0(eslint@8.51.0))(eslint-plugin-promise@6.1.1(eslint@8.51.0))(eslint@8.51.0): 1595 | dependencies: 1596 | eslint: 8.51.0 1597 | eslint-plugin-import: 2.28.1(eslint@8.51.0) 1598 | eslint-plugin-n: 16.1.0(eslint@8.51.0) 1599 | eslint-plugin-promise: 6.1.1(eslint@8.51.0) 1600 | 1601 | eslint-import-resolver-node@0.3.9: 1602 | dependencies: 1603 | debug: 3.2.7 1604 | is-core-module: 2.13.0 1605 | resolve: 1.22.6 1606 | transitivePeerDependencies: 1607 | - supports-color 1608 | 1609 | eslint-module-utils@2.8.0(eslint-import-resolver-node@0.3.9)(eslint@8.51.0): 1610 | dependencies: 1611 | debug: 3.2.7 1612 | optionalDependencies: 1613 | eslint: 8.51.0 1614 | eslint-import-resolver-node: 0.3.9 1615 | transitivePeerDependencies: 1616 | - supports-color 1617 | 1618 | eslint-plugin-es-x@7.2.0(eslint@8.51.0): 1619 | dependencies: 1620 | '@eslint-community/eslint-utils': 4.4.0(eslint@8.51.0) 1621 | '@eslint-community/regexpp': 4.9.1 1622 | eslint: 8.51.0 1623 | 1624 | eslint-plugin-import@2.28.1(eslint@8.51.0): 1625 | dependencies: 1626 | array-includes: 3.1.7 1627 | array.prototype.findlastindex: 1.2.3 1628 | array.prototype.flat: 1.3.2 1629 | array.prototype.flatmap: 1.3.2 1630 | debug: 3.2.7 1631 | doctrine: 2.1.0 1632 | eslint: 8.51.0 1633 | eslint-import-resolver-node: 0.3.9 1634 | eslint-module-utils: 2.8.0(eslint-import-resolver-node@0.3.9)(eslint@8.51.0) 1635 | has: 1.0.4 1636 | is-core-module: 2.13.0 1637 | is-glob: 4.0.3 1638 | minimatch: 3.1.2 1639 | object.fromentries: 2.0.7 1640 | object.groupby: 1.0.1 1641 | object.values: 1.1.7 1642 | semver: 6.3.1 1643 | tsconfig-paths: 3.14.2 1644 | transitivePeerDependencies: 1645 | - eslint-import-resolver-typescript 1646 | - eslint-import-resolver-webpack 1647 | - supports-color 1648 | 1649 | eslint-plugin-n@16.1.0(eslint@8.51.0): 1650 | dependencies: 1651 | '@eslint-community/eslint-utils': 4.4.0(eslint@8.51.0) 1652 | builtins: 5.0.1 1653 | eslint: 8.51.0 1654 | eslint-plugin-es-x: 7.2.0(eslint@8.51.0) 1655 | get-tsconfig: 4.7.2 1656 | ignore: 5.2.4 1657 | is-core-module: 2.13.0 1658 | minimatch: 3.1.2 1659 | resolve: 1.22.6 1660 | semver: 7.5.4 1661 | 1662 | eslint-plugin-node-import@1.0.4(eslint@8.51.0): 1663 | dependencies: 1664 | eslint: 8.51.0 1665 | 1666 | eslint-plugin-node-imports@1.0.2(eslint@8.51.0): 1667 | dependencies: 1668 | eslint: 8.51.0 1669 | 1670 | eslint-plugin-perfectionist@2.1.0(eslint@8.51.0)(typescript@5.2.2): 1671 | dependencies: 1672 | '@typescript-eslint/utils': 6.7.4(eslint@8.51.0)(typescript@5.2.2) 1673 | eslint: 8.51.0 1674 | minimatch: 9.0.3 1675 | natural-compare-lite: 1.4.0 1676 | transitivePeerDependencies: 1677 | - supports-color 1678 | - typescript 1679 | 1680 | eslint-plugin-prefer-let@3.0.1: 1681 | dependencies: 1682 | requireindex: 1.2.0 1683 | 1684 | eslint-plugin-promise@6.1.1(eslint@8.51.0): 1685 | dependencies: 1686 | eslint: 8.51.0 1687 | 1688 | eslint-scope@7.2.2: 1689 | dependencies: 1690 | esrecurse: 4.3.0 1691 | estraverse: 5.3.0 1692 | 1693 | eslint-visitor-keys@3.4.3: {} 1694 | 1695 | eslint@8.51.0: 1696 | dependencies: 1697 | '@eslint-community/eslint-utils': 4.4.0(eslint@8.51.0) 1698 | '@eslint-community/regexpp': 4.9.1 1699 | '@eslint/eslintrc': 2.1.2 1700 | '@eslint/js': 8.51.0 1701 | '@humanwhocodes/config-array': 0.11.11 1702 | '@humanwhocodes/module-importer': 1.0.1 1703 | '@nodelib/fs.walk': 1.2.8 1704 | ajv: 6.12.6 1705 | chalk: 4.1.2 1706 | cross-spawn: 7.0.3 1707 | debug: 4.3.4 1708 | doctrine: 3.0.0 1709 | escape-string-regexp: 4.0.0 1710 | eslint-scope: 7.2.2 1711 | eslint-visitor-keys: 3.4.3 1712 | espree: 9.6.1 1713 | esquery: 1.5.0 1714 | esutils: 2.0.3 1715 | fast-deep-equal: 3.1.3 1716 | file-entry-cache: 6.0.1 1717 | find-up: 5.0.0 1718 | glob-parent: 6.0.2 1719 | globals: 13.23.0 1720 | graphemer: 1.4.0 1721 | ignore: 5.2.4 1722 | imurmurhash: 0.1.4 1723 | is-glob: 4.0.3 1724 | is-path-inside: 3.0.3 1725 | js-yaml: 4.1.0 1726 | json-stable-stringify-without-jsonify: 1.0.1 1727 | levn: 0.4.1 1728 | lodash.merge: 4.6.2 1729 | minimatch: 3.1.2 1730 | natural-compare: 1.4.0 1731 | optionator: 0.9.3 1732 | strip-ansi: 6.0.1 1733 | text-table: 0.2.0 1734 | transitivePeerDependencies: 1735 | - supports-color 1736 | 1737 | espree@9.6.1: 1738 | dependencies: 1739 | acorn: 8.10.0 1740 | acorn-jsx: 5.3.2(acorn@8.10.0) 1741 | eslint-visitor-keys: 3.4.3 1742 | 1743 | esquery@1.5.0: 1744 | dependencies: 1745 | estraverse: 5.3.0 1746 | 1747 | esrecurse@4.3.0: 1748 | dependencies: 1749 | estraverse: 5.3.0 1750 | 1751 | estraverse@5.3.0: {} 1752 | 1753 | esutils@2.0.3: {} 1754 | 1755 | fast-deep-equal@3.1.3: {} 1756 | 1757 | fast-glob@3.3.1: 1758 | dependencies: 1759 | '@nodelib/fs.stat': 2.0.5 1760 | '@nodelib/fs.walk': 1.2.8 1761 | glob-parent: 5.1.2 1762 | merge2: 1.4.1 1763 | micromatch: 4.0.5 1764 | 1765 | fast-json-stable-stringify@2.1.0: {} 1766 | 1767 | fast-levenshtein@2.0.6: {} 1768 | 1769 | fastq@1.15.0: 1770 | dependencies: 1771 | reusify: 1.0.4 1772 | 1773 | file-entry-cache@6.0.1: 1774 | dependencies: 1775 | flat-cache: 3.1.1 1776 | 1777 | fill-range@7.1.1: 1778 | dependencies: 1779 | to-regex-range: 5.0.1 1780 | 1781 | find-up@5.0.0: 1782 | dependencies: 1783 | locate-path: 6.0.0 1784 | path-exists: 4.0.0 1785 | 1786 | flat-cache@3.1.1: 1787 | dependencies: 1788 | flatted: 3.2.9 1789 | keyv: 4.5.4 1790 | rimraf: 3.0.2 1791 | 1792 | flatted@3.2.9: {} 1793 | 1794 | for-each@0.3.3: 1795 | dependencies: 1796 | is-callable: 1.2.7 1797 | 1798 | foreground-child@2.0.0: 1799 | dependencies: 1800 | cross-spawn: 7.0.3 1801 | signal-exit: 3.0.7 1802 | 1803 | fs.realpath@1.0.0: {} 1804 | 1805 | function-bind@1.1.1: {} 1806 | 1807 | function.prototype.name@1.1.6: 1808 | dependencies: 1809 | call-bind: 1.0.2 1810 | define-properties: 1.2.1 1811 | es-abstract: 1.22.2 1812 | functions-have-names: 1.2.3 1813 | 1814 | functions-have-names@1.2.3: {} 1815 | 1816 | get-caller-file@2.0.5: {} 1817 | 1818 | get-intrinsic@1.2.1: 1819 | dependencies: 1820 | function-bind: 1.1.1 1821 | has: 1.0.4 1822 | has-proto: 1.0.1 1823 | has-symbols: 1.0.3 1824 | 1825 | get-symbol-description@1.0.0: 1826 | dependencies: 1827 | call-bind: 1.0.2 1828 | get-intrinsic: 1.2.1 1829 | 1830 | get-tsconfig@4.7.2: 1831 | dependencies: 1832 | resolve-pkg-maps: 1.0.0 1833 | 1834 | glob-parent@5.1.2: 1835 | dependencies: 1836 | is-glob: 4.0.3 1837 | 1838 | glob-parent@6.0.2: 1839 | dependencies: 1840 | is-glob: 4.0.3 1841 | 1842 | glob@7.2.3: 1843 | dependencies: 1844 | fs.realpath: 1.0.0 1845 | inflight: 1.0.6 1846 | inherits: 2.0.4 1847 | minimatch: 3.1.2 1848 | once: 1.4.0 1849 | path-is-absolute: 1.0.1 1850 | 1851 | globals@13.23.0: 1852 | dependencies: 1853 | type-fest: 0.20.2 1854 | 1855 | globalthis@1.0.3: 1856 | dependencies: 1857 | define-properties: 1.2.1 1858 | 1859 | globby@11.1.0: 1860 | dependencies: 1861 | array-union: 2.1.0 1862 | dir-glob: 3.0.1 1863 | fast-glob: 3.3.1 1864 | ignore: 5.2.4 1865 | merge2: 1.4.1 1866 | slash: 3.0.0 1867 | 1868 | gopd@1.0.1: 1869 | dependencies: 1870 | get-intrinsic: 1.2.1 1871 | 1872 | graphemer@1.4.0: {} 1873 | 1874 | has-ansi@2.0.0: 1875 | dependencies: 1876 | ansi-regex: 2.1.1 1877 | 1878 | has-bigints@1.0.2: {} 1879 | 1880 | has-flag@1.0.0: {} 1881 | 1882 | has-flag@4.0.0: {} 1883 | 1884 | has-property-descriptors@1.0.0: 1885 | dependencies: 1886 | get-intrinsic: 1.2.1 1887 | 1888 | has-proto@1.0.1: {} 1889 | 1890 | has-symbols@1.0.3: {} 1891 | 1892 | has-tostringtag@1.0.0: 1893 | dependencies: 1894 | has-symbols: 1.0.3 1895 | 1896 | has@1.0.4: {} 1897 | 1898 | html-escaper@2.0.2: {} 1899 | 1900 | ignore@5.2.4: {} 1901 | 1902 | import-fresh@3.3.0: 1903 | dependencies: 1904 | parent-module: 1.0.1 1905 | resolve-from: 4.0.0 1906 | 1907 | imurmurhash@0.1.4: {} 1908 | 1909 | inflight@1.0.6: 1910 | dependencies: 1911 | once: 1.4.0 1912 | wrappy: 1.0.2 1913 | 1914 | inherits@2.0.4: {} 1915 | 1916 | internal-slot@1.0.5: 1917 | dependencies: 1918 | get-intrinsic: 1.2.1 1919 | has: 1.0.4 1920 | side-channel: 1.0.4 1921 | 1922 | is-array-buffer@3.0.2: 1923 | dependencies: 1924 | call-bind: 1.0.2 1925 | get-intrinsic: 1.2.1 1926 | is-typed-array: 1.1.12 1927 | 1928 | is-bigint@1.0.4: 1929 | dependencies: 1930 | has-bigints: 1.0.2 1931 | 1932 | is-boolean-object@1.1.2: 1933 | dependencies: 1934 | call-bind: 1.0.2 1935 | has-tostringtag: 1.0.0 1936 | 1937 | is-callable@1.2.7: {} 1938 | 1939 | is-core-module@2.13.0: 1940 | dependencies: 1941 | has: 1.0.4 1942 | 1943 | is-date-object@1.0.5: 1944 | dependencies: 1945 | has-tostringtag: 1.0.0 1946 | 1947 | is-extglob@2.1.1: {} 1948 | 1949 | is-fullwidth-code-point@3.0.0: {} 1950 | 1951 | is-glob@4.0.3: 1952 | dependencies: 1953 | is-extglob: 2.1.1 1954 | 1955 | is-negative-zero@2.0.2: {} 1956 | 1957 | is-number-object@1.0.7: 1958 | dependencies: 1959 | has-tostringtag: 1.0.0 1960 | 1961 | is-number@7.0.0: {} 1962 | 1963 | is-path-inside@3.0.3: {} 1964 | 1965 | is-regex@1.1.4: 1966 | dependencies: 1967 | call-bind: 1.0.2 1968 | has-tostringtag: 1.0.0 1969 | 1970 | is-shared-array-buffer@1.0.2: 1971 | dependencies: 1972 | call-bind: 1.0.2 1973 | 1974 | is-string@1.0.7: 1975 | dependencies: 1976 | has-tostringtag: 1.0.0 1977 | 1978 | is-symbol@1.0.4: 1979 | dependencies: 1980 | has-symbols: 1.0.3 1981 | 1982 | is-typed-array@1.1.12: 1983 | dependencies: 1984 | which-typed-array: 1.1.11 1985 | 1986 | is-weakref@1.0.2: 1987 | dependencies: 1988 | call-bind: 1.0.2 1989 | 1990 | isarray@2.0.5: {} 1991 | 1992 | isexe@2.0.0: {} 1993 | 1994 | istanbul-lib-coverage@3.2.0: {} 1995 | 1996 | istanbul-lib-report@3.0.1: 1997 | dependencies: 1998 | istanbul-lib-coverage: 3.2.0 1999 | make-dir: 4.0.0 2000 | supports-color: 7.2.0 2001 | 2002 | istanbul-reports@3.1.6: 2003 | dependencies: 2004 | html-escaper: 2.0.2 2005 | istanbul-lib-report: 3.0.1 2006 | 2007 | js-base64@2.6.4: {} 2008 | 2009 | js-yaml@4.1.0: 2010 | dependencies: 2011 | argparse: 2.0.1 2012 | 2013 | json-buffer@3.0.1: {} 2014 | 2015 | json-schema-traverse@0.4.1: {} 2016 | 2017 | json-stable-stringify-without-jsonify@1.0.1: {} 2018 | 2019 | json5@1.0.2: 2020 | dependencies: 2021 | minimist: 1.2.8 2022 | 2023 | keyv@4.5.4: 2024 | dependencies: 2025 | json-buffer: 3.0.1 2026 | 2027 | kleur@4.1.5: {} 2028 | 2029 | levn@0.4.1: 2030 | dependencies: 2031 | prelude-ls: 1.2.1 2032 | type-check: 0.4.0 2033 | 2034 | lilconfig@2.1.0: {} 2035 | 2036 | locate-path@6.0.0: 2037 | dependencies: 2038 | p-locate: 5.0.0 2039 | 2040 | lodash.merge@4.6.2: {} 2041 | 2042 | lru-cache@6.0.0: 2043 | dependencies: 2044 | yallist: 4.0.0 2045 | 2046 | make-dir@4.0.0: 2047 | dependencies: 2048 | semver: 7.5.4 2049 | 2050 | merge2@1.4.1: {} 2051 | 2052 | micromatch@4.0.5: 2053 | dependencies: 2054 | braces: 3.0.3 2055 | picomatch: 2.3.1 2056 | 2057 | minimatch@3.1.2: 2058 | dependencies: 2059 | brace-expansion: 1.1.11 2060 | 2061 | minimatch@9.0.3: 2062 | dependencies: 2063 | brace-expansion: 2.0.1 2064 | 2065 | minimist@1.2.8: {} 2066 | 2067 | mri@1.2.0: {} 2068 | 2069 | ms@2.1.2: {} 2070 | 2071 | ms@2.1.3: {} 2072 | 2073 | nanoid@3.3.6: {} 2074 | 2075 | natural-compare-lite@1.4.0: {} 2076 | 2077 | natural-compare@1.4.0: {} 2078 | 2079 | object-inspect@1.12.3: {} 2080 | 2081 | object-keys@1.1.1: {} 2082 | 2083 | object.assign@4.1.4: 2084 | dependencies: 2085 | call-bind: 1.0.2 2086 | define-properties: 1.2.1 2087 | has-symbols: 1.0.3 2088 | object-keys: 1.1.1 2089 | 2090 | object.fromentries@2.0.7: 2091 | dependencies: 2092 | call-bind: 1.0.2 2093 | define-properties: 1.2.1 2094 | es-abstract: 1.22.2 2095 | 2096 | object.groupby@1.0.1: 2097 | dependencies: 2098 | call-bind: 1.0.2 2099 | define-properties: 1.2.1 2100 | es-abstract: 1.22.2 2101 | get-intrinsic: 1.2.1 2102 | 2103 | object.values@1.1.7: 2104 | dependencies: 2105 | call-bind: 1.0.2 2106 | define-properties: 1.2.1 2107 | es-abstract: 1.22.2 2108 | 2109 | once@1.4.0: 2110 | dependencies: 2111 | wrappy: 1.0.2 2112 | 2113 | optionator@0.9.3: 2114 | dependencies: 2115 | '@aashutoshrathi/word-wrap': 1.2.6 2116 | deep-is: 0.1.4 2117 | fast-levenshtein: 2.0.6 2118 | levn: 0.4.1 2119 | prelude-ls: 1.2.1 2120 | type-check: 0.4.0 2121 | 2122 | p-limit@3.1.0: 2123 | dependencies: 2124 | yocto-queue: 0.1.0 2125 | 2126 | p-locate@5.0.0: 2127 | dependencies: 2128 | p-limit: 3.1.0 2129 | 2130 | parent-module@1.0.1: 2131 | dependencies: 2132 | callsites: 3.1.0 2133 | 2134 | path-exists@4.0.0: {} 2135 | 2136 | path-is-absolute@1.0.1: {} 2137 | 2138 | path-key@3.1.1: {} 2139 | 2140 | path-parse@1.0.7: {} 2141 | 2142 | path-type@4.0.0: {} 2143 | 2144 | picocolors@1.0.0: {} 2145 | 2146 | picomatch@2.3.1: {} 2147 | 2148 | postcss-each@1.1.0(postcss@8.4.31): 2149 | dependencies: 2150 | postcss: 8.4.31 2151 | postcss-simple-vars: 6.0.3(postcss@8.4.31) 2152 | 2153 | postcss-for@2.1.1: 2154 | dependencies: 2155 | postcss: 5.2.18 2156 | postcss-simple-vars: 2.0.0 2157 | 2158 | postcss-js@4.0.1(postcss@8.4.31): 2159 | dependencies: 2160 | camelcase-css: 2.0.1 2161 | postcss: 8.4.31 2162 | 2163 | postcss-mixins@9.0.4(postcss@8.4.31): 2164 | dependencies: 2165 | fast-glob: 3.3.1 2166 | postcss: 8.4.31 2167 | postcss-js: 4.0.1(postcss@8.4.31) 2168 | postcss-simple-vars: 7.0.1(postcss@8.4.31) 2169 | sugarss: 4.0.1(postcss@8.4.31) 2170 | 2171 | postcss-simple-vars@2.0.0: 2172 | dependencies: 2173 | postcss: 5.2.18 2174 | 2175 | postcss-simple-vars@6.0.3(postcss@8.4.31): 2176 | dependencies: 2177 | postcss: 8.4.31 2178 | 2179 | postcss-simple-vars@7.0.1(postcss@8.4.31): 2180 | dependencies: 2181 | postcss: 8.4.31 2182 | 2183 | postcss@5.2.18: 2184 | dependencies: 2185 | chalk: 1.1.3 2186 | js-base64: 2.6.4 2187 | source-map: 0.5.7 2188 | supports-color: 3.2.3 2189 | 2190 | postcss@8.4.31: 2191 | dependencies: 2192 | nanoid: 3.3.6 2193 | picocolors: 1.0.0 2194 | source-map-js: 1.0.2 2195 | 2196 | prelude-ls@1.2.1: {} 2197 | 2198 | punycode@2.3.0: {} 2199 | 2200 | queue-microtask@1.2.3: {} 2201 | 2202 | regexp.prototype.flags@1.5.1: 2203 | dependencies: 2204 | call-bind: 1.0.2 2205 | define-properties: 1.2.1 2206 | set-function-name: 2.0.1 2207 | 2208 | require-directory@2.1.1: {} 2209 | 2210 | requireindex@1.2.0: {} 2211 | 2212 | resolve-from@4.0.0: {} 2213 | 2214 | resolve-pkg-maps@1.0.0: {} 2215 | 2216 | resolve@1.22.6: 2217 | dependencies: 2218 | is-core-module: 2.13.0 2219 | path-parse: 1.0.7 2220 | supports-preserve-symlinks-flag: 1.0.0 2221 | 2222 | reusify@1.0.4: {} 2223 | 2224 | rimraf@3.0.2: 2225 | dependencies: 2226 | glob: 7.2.3 2227 | 2228 | run-parallel@1.2.0: 2229 | dependencies: 2230 | queue-microtask: 1.2.3 2231 | 2232 | sade@1.8.1: 2233 | dependencies: 2234 | mri: 1.2.0 2235 | 2236 | safe-array-concat@1.0.1: 2237 | dependencies: 2238 | call-bind: 1.0.2 2239 | get-intrinsic: 1.2.1 2240 | has-symbols: 1.0.3 2241 | isarray: 2.0.5 2242 | 2243 | safe-regex-test@1.0.0: 2244 | dependencies: 2245 | call-bind: 1.0.2 2246 | get-intrinsic: 1.2.1 2247 | is-regex: 1.1.4 2248 | 2249 | semver@6.3.1: {} 2250 | 2251 | semver@7.5.4: 2252 | dependencies: 2253 | lru-cache: 6.0.0 2254 | 2255 | set-function-name@2.0.1: 2256 | dependencies: 2257 | define-data-property: 1.1.0 2258 | functions-have-names: 1.2.3 2259 | has-property-descriptors: 1.0.0 2260 | 2261 | shebang-command@2.0.0: 2262 | dependencies: 2263 | shebang-regex: 3.0.0 2264 | 2265 | shebang-regex@3.0.0: {} 2266 | 2267 | side-channel@1.0.4: 2268 | dependencies: 2269 | call-bind: 1.0.2 2270 | get-intrinsic: 1.2.1 2271 | object-inspect: 1.12.3 2272 | 2273 | signal-exit@3.0.7: {} 2274 | 2275 | slash@3.0.0: {} 2276 | 2277 | source-map-js@1.0.2: {} 2278 | 2279 | source-map@0.5.7: {} 2280 | 2281 | string-width@4.2.3: 2282 | dependencies: 2283 | emoji-regex: 8.0.0 2284 | is-fullwidth-code-point: 3.0.0 2285 | strip-ansi: 6.0.1 2286 | 2287 | string.prototype.trim@1.2.8: 2288 | dependencies: 2289 | call-bind: 1.0.2 2290 | define-properties: 1.2.1 2291 | es-abstract: 1.22.2 2292 | 2293 | string.prototype.trimend@1.0.7: 2294 | dependencies: 2295 | call-bind: 1.0.2 2296 | define-properties: 1.2.1 2297 | es-abstract: 1.22.2 2298 | 2299 | string.prototype.trimstart@1.0.7: 2300 | dependencies: 2301 | call-bind: 1.0.2 2302 | define-properties: 1.2.1 2303 | es-abstract: 1.22.2 2304 | 2305 | strip-ansi@3.0.1: 2306 | dependencies: 2307 | ansi-regex: 2.1.1 2308 | 2309 | strip-ansi@6.0.1: 2310 | dependencies: 2311 | ansi-regex: 5.0.1 2312 | 2313 | strip-bom@3.0.0: {} 2314 | 2315 | strip-json-comments@3.1.1: {} 2316 | 2317 | sugarss@4.0.1(postcss@8.4.31): 2318 | dependencies: 2319 | postcss: 8.4.31 2320 | 2321 | supports-color@2.0.0: {} 2322 | 2323 | supports-color@3.2.3: 2324 | dependencies: 2325 | has-flag: 1.0.0 2326 | 2327 | supports-color@7.2.0: 2328 | dependencies: 2329 | has-flag: 4.0.0 2330 | 2331 | supports-preserve-symlinks-flag@1.0.0: {} 2332 | 2333 | test-exclude@6.0.0: 2334 | dependencies: 2335 | '@istanbuljs/schema': 0.1.3 2336 | glob: 7.2.3 2337 | minimatch: 3.1.2 2338 | 2339 | text-table@0.2.0: {} 2340 | 2341 | to-regex-range@5.0.1: 2342 | dependencies: 2343 | is-number: 7.0.0 2344 | 2345 | ts-api-utils@1.0.3(typescript@5.2.2): 2346 | dependencies: 2347 | typescript: 5.2.2 2348 | 2349 | tsconfig-paths@3.14.2: 2350 | dependencies: 2351 | '@types/json5': 0.0.29 2352 | json5: 1.0.2 2353 | minimist: 1.2.8 2354 | strip-bom: 3.0.0 2355 | 2356 | type-check@0.4.0: 2357 | dependencies: 2358 | prelude-ls: 1.2.1 2359 | 2360 | type-fest@0.20.2: {} 2361 | 2362 | typed-array-buffer@1.0.0: 2363 | dependencies: 2364 | call-bind: 1.0.2 2365 | get-intrinsic: 1.2.1 2366 | is-typed-array: 1.1.12 2367 | 2368 | typed-array-byte-length@1.0.0: 2369 | dependencies: 2370 | call-bind: 1.0.2 2371 | for-each: 0.3.3 2372 | has-proto: 1.0.1 2373 | is-typed-array: 1.1.12 2374 | 2375 | typed-array-byte-offset@1.0.0: 2376 | dependencies: 2377 | available-typed-arrays: 1.0.5 2378 | call-bind: 1.0.2 2379 | for-each: 0.3.3 2380 | has-proto: 1.0.1 2381 | is-typed-array: 1.1.12 2382 | 2383 | typed-array-length@1.0.4: 2384 | dependencies: 2385 | call-bind: 1.0.2 2386 | for-each: 0.3.3 2387 | is-typed-array: 1.1.12 2388 | 2389 | typescript@5.2.2: {} 2390 | 2391 | unbox-primitive@1.0.2: 2392 | dependencies: 2393 | call-bind: 1.0.2 2394 | has-bigints: 1.0.2 2395 | has-symbols: 1.0.3 2396 | which-boxed-primitive: 1.0.2 2397 | 2398 | uri-js@4.4.1: 2399 | dependencies: 2400 | punycode: 2.3.0 2401 | 2402 | uvu@0.5.6: 2403 | dependencies: 2404 | dequal: 2.0.3 2405 | diff: 5.1.0 2406 | kleur: 4.1.5 2407 | sade: 1.8.1 2408 | 2409 | v8-to-istanbul@9.1.3: 2410 | dependencies: 2411 | '@jridgewell/trace-mapping': 0.3.19 2412 | '@types/istanbul-lib-coverage': 2.0.4 2413 | convert-source-map: 2.0.0 2414 | 2415 | which-boxed-primitive@1.0.2: 2416 | dependencies: 2417 | is-bigint: 1.0.4 2418 | is-boolean-object: 1.1.2 2419 | is-number-object: 1.0.7 2420 | is-string: 1.0.7 2421 | is-symbol: 1.0.4 2422 | 2423 | which-typed-array@1.1.11: 2424 | dependencies: 2425 | available-typed-arrays: 1.0.5 2426 | call-bind: 1.0.2 2427 | for-each: 0.3.3 2428 | gopd: 1.0.1 2429 | has-tostringtag: 1.0.0 2430 | 2431 | which@2.0.2: 2432 | dependencies: 2433 | isexe: 2.0.0 2434 | 2435 | wrap-ansi@7.0.0: 2436 | dependencies: 2437 | ansi-styles: 4.3.0 2438 | string-width: 4.2.3 2439 | strip-ansi: 6.0.1 2440 | 2441 | wrappy@1.0.2: {} 2442 | 2443 | y18n@5.0.8: {} 2444 | 2445 | yallist@4.0.0: {} 2446 | 2447 | yargs-parser@21.1.1: {} 2448 | 2449 | yargs@17.7.2: 2450 | dependencies: 2451 | cliui: 8.0.1 2452 | escalade: 3.1.1 2453 | get-caller-file: 2.0.5 2454 | require-directory: 2.1.1 2455 | string-width: 4.2.3 2456 | y18n: 5.0.8 2457 | yargs-parser: 21.1.1 2458 | 2459 | yocto-queue@0.1.0: {} 2460 | --------------------------------------------------------------------------------