pax_global_header00006660000000000000000000000064147524630450014524gustar00rootroot0000000000000052 comment=1fc5737ac5314026ee71b7bd3d7ef0da71129445 postcss-parser-tests-8.9.0/000077500000000000000000000000001475246304500156725ustar00rootroot00000000000000postcss-parser-tests-8.9.0/.editorconfig000066400000000000000000000002231475246304500203440ustar00rootroot00000000000000root = true [*] indent_style = space indent_size = 2 end_of_line = lf charset = utf-8 trim_trailing_whitespace = true insert_final_newline = true postcss-parser-tests-8.9.0/.github/000077500000000000000000000000001475246304500172325ustar00rootroot00000000000000postcss-parser-tests-8.9.0/.github/FUNDING.yml000066400000000000000000000000441475246304500210450ustar00rootroot00000000000000open_collective: postcss github: ai postcss-parser-tests-8.9.0/.github/workflows/000077500000000000000000000000001475246304500212675ustar00rootroot00000000000000postcss-parser-tests-8.9.0/.github/workflows/release.yml000066400000000000000000000025511475246304500234350ustar00rootroot00000000000000name: Release on: push: tags: - '*' permissions: contents: write jobs: release: name: Release On Tag if: startsWith(github.ref, 'refs/tags/') runs-on: ubuntu-latest steps: - name: Checkout the repository uses: actions/checkout@v4 - name: Extract the changelog id: changelog run: | TAG_NAME=${GITHUB_REF/refs\/tags\//} READ_SECTION=false CHANGELOG="" while IFS= read -r line; do if [[ "$line" =~ ^#+\ +(.*) ]]; then if [[ "${BASH_REMATCH[1]}" == "$TAG_NAME" ]]; then READ_SECTION=true elif [[ "$READ_SECTION" == true ]]; then break fi elif [[ "$READ_SECTION" == true ]]; then CHANGELOG+="$line"$'\n' fi done < "CHANGELOG.md" CHANGELOG=$(echo "$CHANGELOG" | awk '/./ {$1=$1;print}') echo "changelog_content<> $GITHUB_OUTPUT echo "$CHANGELOG" >> $GITHUB_OUTPUT echo "EOF" >> $GITHUB_OUTPUT - name: Create the release if: steps.changelog.outputs.changelog_content != '' uses: softprops/action-gh-release@v2 with: name: ${{ github.ref_name }} body: '${{ steps.changelog.outputs.changelog_content }}' draft: false prerelease: false postcss-parser-tests-8.9.0/.github/workflows/test.yml000066400000000000000000000011411475246304500227660ustar00rootroot00000000000000name: Test on: push: branches: - main pull_request: permissions: contents: read jobs: test: name: Test runs-on: ubuntu-latest steps: - name: Checkout the repository uses: actions/checkout@v4 - name: Install pnpm uses: pnpm/action-setup@v4 with: version: 10 - name: Install Node.js uses: actions/setup-node@v4 with: node-version: 22 cache: pnpm - name: Install all dependencies run: pnpm install --frozen-lockfile --ignore-scripts - name: Run tests run: pnpm test postcss-parser-tests-8.9.0/.gitignore000066400000000000000000000000161475246304500176570ustar00rootroot00000000000000node_modules/ postcss-parser-tests-8.9.0/.npmignore000066400000000000000000000000351475246304500176670ustar00rootroot00000000000000test/ .github/ tsconfig.json postcss-parser-tests-8.9.0/CHANGELOG.md000066400000000000000000000053241475246304500175070ustar00rootroot00000000000000# Change Log This project uses major version number for PostCSS, minor for adding/removing tests, and patch for fixes. ## 8.9.0 * Added more rules with semicolon cases (by @romainmenke). ## 8.8 * Update `offset` according to fix in `postcss` (by Ido Rosenthal). ## 8.7 * Moved `jsonify()` from `string` to `object`. * Moved `eachTest()`from `string` to `object` in `json` argument. * Added `source.end` for `Root` (by Romain Menke). ## 8.6 * Removed Habr.com real tests because of often 404 error. ## 8.5.2 * Fixed ESM support. ## 8.5.1 * Fixed empty Custom Properties position. ## 8.5 * Added safe example for comment removal. ## 8.4 * Added more CSS Custom Properties tests. * Added more dangerous comments tests. * Reduced dependencies. ## 8.3.7 * Replaced `nanocolors` with `picocolors`. * Removed `ci-job-number`. ## 8.3.6 * Replaced `coloretter` with `nanocolors`. ## 8.3.5 * Removed `Nodeinputs` and `Node#source.inputId` (by Niklas Mischkulnig). ## 8.3.4 * Removed `Node#source.input` from test cases. ## 8.3.3 * Reverted Node.js 15 warning fix. ## 8.3.2 * Fixed Node.js 15 warning. ## 8.3.1 * Added funding links. ## 8.3 * Added `Node#source.offset` to test cases. ## 8.2 * Added empty Custom Properties case with comments and `!important`. ## 8.1 * Added empty Custom Properties case. ## 8.0 * Added Custom Properties with `{}` case for PostCSS 8. * Added at-rule with `{}` in params case for PostCSS 8. * Added ESM support. * Added TypeScript types. * Replace `chalk` to `colorette`. ## 6.5 * Parse `--a: {}` as `--a` declaration with `{}` value. ## 6.4 * Add more cases for Custom Properties (by Ivan Solovev). ## 6.3.1 * Fix compatibility with PostCSS 7.0.6. ## 6.3 * Add case with nested at-rule without semicolon, params, and spaces. ## 6.2.1 * Remove `gulp-util`. ## 6.2 * Add case with comment between word tokens (by Oleh Kuchuk). ## 6.1 * Add `!IMPORTANT` case. ## 6.0.2 * Fix `end` position in at-rule test (by Oleh Kuchuk). ## 6.0.1 * Add `\62 olor: red` case. ## 6.0 * Add rule with semicolon case for PostCSS 6.0. ## 5.0.11 * Add `/**/!important` case. * Clean up npm package from unnecessary files. ## 5.0.10 * Add `[attr=;]` case. ## 5.0.9 * Remove `node.id` removing. ## 5.0.8 * Remove unique `node.id` too (by Ivan Serniaev). ## 5.0.7 * Add test for correct `between`. ## 5.0.6 * Remove cache properties from node in `jsonify`. ## 5.0.5 * Add more tests for `!important`. ## 5.0.4 * Add value trimming test. * Add nested at-rule without semicolon test. ## 5.0.3 * Add multi-tokens property test. ## 5.0.2 * Fix `Root` start source. ## 5.0.1 * Better test with `url()`. * Add tests with empty files. * Add test with BOM symbol. * Add start source to `Root`. ## 5.0 * Initial release from PostCSS sources. postcss-parser-tests-8.9.0/LICENSE000066400000000000000000000021071475246304500166770ustar00rootroot00000000000000The MIT License (MIT) Copyright 2013 Andrey Sitnik Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. postcss-parser-tests-8.9.0/README.md000066400000000000000000000031241475246304500171510ustar00rootroot00000000000000# PostCSS Parser Tests This project contains base tests for every [PostCSS] CSS parser, including: * 24 CSS files to test extreme cases of the CSS specification. * Integration tests by popular website styles to test CSS from the wild. These tests are useful for any CSS parser, not just parsers within the PostCSS ecosystem. [PostCSS]: https://github.com/postcss/postcss ## Cases You can iterate through all test cases using the `cases.each` method: ```js const cases = require('postcss-parser-tests') cases.each((name, css, ideal) => { it('parses ' + name, () => { const root = parse(css, { from: name }) const json = cases.jsonify(root) expect(json).toEquql(ideal) }) }) ``` This returns the case name, CSS string, and PostCSS AST JSON. If you create a non-PostCSS parser, just compare if the input CSS is equal to the output CSS after parsing. You can also get the path to some specific test cases using the `cases.path(name)` method. ## Integration Integration tests are packed into a Gulp task: ```js const cases = require('postcss-parser-tests') cases.real(css => { return parser(css).toResult({ map: { annotation: false } }) }) ``` Your callback must parse CSS and stringify it back. The plugin will then compare the input and output CSS. You can add extra sites using an optional third argument: ```js cases.real(css => { return parser(css).toResult({ map: { annotation: false } }) }, [ 'http://browserhacks.com/' ]) ``` postcss-parser-tests-8.9.0/cases/000077500000000000000000000000001475246304500167705ustar00rootroot00000000000000postcss-parser-tests-8.9.0/cases/apply.css000066400000000000000000000001721475246304500206270ustar00rootroot00000000000000:root { --zero-size: { width: 0; height: 0; }; --small-icon: { width: 16px; height: 16px; } ; } postcss-parser-tests-8.9.0/cases/apply.json000066400000000000000000000032401475246304500210070ustar00rootroot00000000000000{ "raws": { "semicolon": false, "after": "" }, "type": "root", "nodes": [ { "raws": { "before": "", "between": " ", "semicolon": true, "after": "\n" }, "type": "rule", "nodes": [ { "raws": { "before": "\n ", "between": ": " }, "type": "decl", "source": { "end": { "column": 4, "line": 5, "offset": 58 }, "start": { "column": 3, "line": 2, "offset": 10 } }, "prop": "--zero-size", "value": "{\n width: 0;\n height: 0;\n }" }, { "raws": { "before": "\n ", "between": ": " }, "type": "decl", "source": { "end": { "column": 3, "line": 10, "offset": 119 }, "start": { "column": 3, "line": 6, "offset": 61 } }, "prop": "--small-icon", "value": "{\n width: 16px;\n height: 16px;\n }\n " } ], "source": { "end": { "column": 1, "line": 11, "offset": 121 }, "start": { "column": 1, "line": 1, "offset": 0 } }, "selector": ":root" } ], "source": { "end": { "column": 2, "line": 11, "offset": 121 }, "start": { "column": 1, "line": 1, "offset": 0 } } } postcss-parser-tests-8.9.0/cases/at-rule-brackets.css000066400000000000000000000007741475246304500226570ustar00rootroot00000000000000@supports (--element(".minwidth", { "minWidth": 300 })) { [--self] { background: greenyellow; } } @supports ({"example": 1}) { * { background: red; } } @supports (("example": 1)) { * { background: red; } } @supports (func("example": 1)) { * { background: red; } } @supports (--var) { * { background: red; } } @supports ([]) { * { background: red; } } @supports ([color: red]) { * { background: red; } } @supports ([[[[[{ --func(color: { red }) }]]]]]) { * { background: red; } } postcss-parser-tests-8.9.0/cases/at-rule-brackets.json000066400000000000000000000310551475246304500230340ustar00rootroot00000000000000{ "raws": { "semicolon": false, "after": "" }, "type": "root", "nodes": [ { "raws": { "before": "", "between": " ", "afterName": " ", "semicolon": false, "after": "\n" }, "type": "atrule", "name": "supports", "source": { "end": { "column": 1, "line": 5, "offset": 105 }, "start": { "column": 1, "line": 1, "offset": 0 } }, "params": "(--element(\".minwidth\", { \"minWidth\": 300 }))", "nodes": [ { "raws": { "before": "\n ", "between": " ", "semicolon": true, "after": "\n " }, "type": "rule", "nodes": [ { "raws": { "before": "\n ", "between": ": " }, "type": "decl", "source": { "end": { "column": 28, "line": 3, "offset": 99 }, "start": { "column": 5, "line": 3, "offset": 75 } }, "prop": "background", "value": "greenyellow" } ], "source": { "end": { "column": 3, "line": 4, "offset": 103 }, "start": { "column": 3, "line": 2, "offset": 60 } }, "selector": "[--self]" } ] }, { "raws": { "before": "\n\n", "between": " ", "afterName": " ", "semicolon": false, "after": "\n" }, "type": "atrule", "name": "supports", "source": { "end": { "column": 1, "line": 9, "offset": 162 }, "start": { "column": 1, "line": 7, "offset": 107 } }, "params": "({\"example\": 1})", "nodes": [ { "raws": { "before": "\n ", "between": " ", "semicolon": true, "after": " " }, "type": "rule", "nodes": [ { "raws": { "before": " ", "between": ": " }, "type": "decl", "source": { "end": { "column": 22, "line": 8, "offset": 158 }, "start": { "column": 7, "line": 8, "offset": 142 } }, "prop": "background", "value": "red" } ], "source": { "end": { "column": 24, "line": 8, "offset": 160 }, "start": { "column": 3, "line": 8, "offset": 138 } }, "selector": "*" } ] }, { "raws": { "before": "\n\n", "between": " ", "afterName": " ", "semicolon": false, "after": "\n" }, "type": "atrule", "name": "supports", "source": { "end": { "column": 1, "line": 13, "offset": 219 }, "start": { "column": 1, "line": 11, "offset": 164 } }, "params": "((\"example\": 1))", "nodes": [ { "raws": { "before": "\n ", "between": " ", "semicolon": true, "after": " " }, "type": "rule", "nodes": [ { "raws": { "before": " ", "between": ": " }, "type": "decl", "source": { "end": { "column": 22, "line": 12, "offset": 215 }, "start": { "column": 7, "line": 12, "offset": 199 } }, "prop": "background", "value": "red" } ], "source": { "end": { "column": 24, "line": 12, "offset": 217 }, "start": { "column": 3, "line": 12, "offset": 195 } }, "selector": "*" } ] }, { "raws": { "before": "\n\n", "between": " ", "afterName": " ", "semicolon": false, "after": "\n" }, "type": "atrule", "name": "supports", "source": { "end": { "column": 1, "line": 17, "offset": 280 }, "start": { "column": 1, "line": 15, "offset": 221 } }, "params": "(func(\"example\": 1))", "nodes": [ { "raws": { "before": "\n ", "between": " ", "semicolon": true, "after": " " }, "type": "rule", "nodes": [ { "raws": { "before": " ", "between": ": " }, "type": "decl", "source": { "end": { "column": 22, "line": 16, "offset": 276 }, "start": { "column": 7, "line": 16, "offset": 260 } }, "prop": "background", "value": "red" } ], "source": { "end": { "column": 24, "line": 16, "offset": 278 }, "start": { "column": 3, "line": 16, "offset": 256 } }, "selector": "*" } ] }, { "raws": { "before": "\n\n", "between": " ", "afterName": " ", "semicolon": false, "after": "\n" }, "type": "atrule", "name": "supports", "source": { "end": { "column": 1, "line": 21, "offset": 328 }, "start": { "column": 1, "line": 19, "offset": 282 } }, "params": "(--var)", "nodes": [ { "raws": { "before": "\n ", "between": " ", "semicolon": true, "after": " " }, "type": "rule", "nodes": [ { "raws": { "before": " ", "between": ": " }, "type": "decl", "source": { "end": { "column": 22, "line": 20, "offset": 324 }, "start": { "column": 7, "line": 20, "offset": 308 } }, "prop": "background", "value": "red" } ], "source": { "end": { "column": 24, "line": 20, "offset": 326 }, "start": { "column": 3, "line": 20, "offset": 304 } }, "selector": "*" } ] }, { "raws": { "before": "\n\n", "between": " ", "afterName": " ", "semicolon": false, "after": "\n" }, "type": "atrule", "name": "supports", "source": { "end": { "column": 1, "line": 25, "offset": 373 }, "start": { "column": 1, "line": 23, "offset": 330 } }, "params": "([])", "nodes": [ { "raws": { "before": "\n ", "between": " ", "semicolon": true, "after": " " }, "type": "rule", "nodes": [ { "raws": { "before": " ", "between": ": " }, "type": "decl", "source": { "end": { "column": 22, "line": 24, "offset": 369 }, "start": { "column": 7, "line": 24, "offset": 353 } }, "prop": "background", "value": "red" } ], "source": { "end": { "column": 24, "line": 24, "offset": 371 }, "start": { "column": 3, "line": 24, "offset": 349 } }, "selector": "*" } ] }, { "raws": { "before": "\n\n", "between": " ", "afterName": " ", "semicolon": false, "after": "\n" }, "type": "atrule", "name": "supports", "source": { "end": { "column": 1, "line": 29, "offset": 428 }, "start": { "column": 1, "line": 27, "offset": 375 } }, "params": "([color: red])", "nodes": [ { "raws": { "before": "\n ", "between": " ", "semicolon": true, "after": " " }, "type": "rule", "nodes": [ { "raws": { "before": " ", "between": ": " }, "type": "decl", "source": { "end": { "column": 22, "line": 28, "offset": 424 }, "start": { "column": 7, "line": 28, "offset": 408 } }, "prop": "background", "value": "red" } ], "source": { "end": { "column": 24, "line": 28, "offset": 426 }, "start": { "column": 3, "line": 28, "offset": 404 } }, "selector": "*" } ] }, { "raws": { "before": "\n\n", "between": " ", "afterName": " ", "semicolon": false, "after": "\n" }, "type": "atrule", "name": "supports", "source": { "end": { "column": 1, "line": 33, "offset": 507 }, "start": { "column": 1, "line": 31, "offset": 430 } }, "params": "([[[[[{ --func(color: { red }) }]]]]])", "nodes": [ { "raws": { "before": "\n ", "between": " ", "semicolon": true, "after": " " }, "type": "rule", "nodes": [ { "raws": { "before": " ", "between": ": " }, "type": "decl", "source": { "end": { "column": 22, "line": 32, "offset": 503 }, "start": { "column": 7, "line": 32, "offset": 487 } }, "prop": "background", "value": "red" } ], "source": { "end": { "column": 24, "line": 32, "offset": 505 }, "start": { "column": 3, "line": 32, "offset": 483 } }, "selector": "*" } ] } ], "source": { "end": { "column": 2, "line": 33, "offset": 507 }, "start": { "column": 1, "line": 1, "offset": 0 } } } postcss-parser-tests-8.9.0/cases/atrule-decls.css000066400000000000000000000003111475246304500220610ustar00rootroot00000000000000@page :left { background: black } @media(min-width: 0) { background: white } @font-face { family-name: "A;' /**/"; } @viewport { width: 110px; } @-ms-viewport { width: 100px; } postcss-parser-tests-8.9.0/cases/atrule-decls.json000066400000000000000000000116111475246304500222470ustar00rootroot00000000000000{ "raws": { "semicolon": false, "after": "" }, "type": "root", "nodes": [ { "raws": { "before": "", "between": " ", "afterName": " ", "semicolon": false, "after": "\n" }, "type": "atrule", "name": "page", "source": { "end": { "column": 1, "line": 3, "offset": 37 }, "start": { "column": 1, "line": 1, "offset": 0 } }, "params": ":left", "nodes": [ { "raws": { "before": "\n ", "between": ": " }, "type": "decl", "source": { "end": { "column": 21, "line": 2, "offset": 35 }, "start": { "column": 5, "line": 2, "offset": 18 } }, "prop": "background", "value": "black" } ] }, { "raws": { "before": "\n\n", "between": " ", "afterName": "", "semicolon": false, "after": "\n" }, "type": "atrule", "name": "media", "source": { "end": { "column": 1, "line": 7, "offset": 85 }, "start": { "column": 1, "line": 5, "offset": 39 } }, "params": "(min-width: 0)", "nodes": [ { "raws": { "before": "\n ", "between": ": " }, "type": "decl", "source": { "end": { "column": 21, "line": 6, "offset": 83 }, "start": { "column": 5, "line": 6, "offset": 66 } }, "prop": "background", "value": "white" } ] }, { "raws": { "before": "\n\n", "between": " ", "afterName": "", "semicolon": true, "after": "\n" }, "type": "atrule", "name": "font-face", "source": { "end": { "column": 1, "line": 11, "offset": 130 }, "start": { "column": 1, "line": 9, "offset": 87 } }, "params": "", "nodes": [ { "raws": { "before": "\n ", "between": ": " }, "type": "decl", "source": { "end": { "column": 28, "line": 10, "offset": 128 }, "start": { "column": 5, "line": 10, "offset": 104 } }, "prop": "family-name", "value": "\"A;' /**/\"" } ] }, { "raws": { "before": "\n\n", "between": " ", "afterName": "", "semicolon": true, "after": "\n" }, "type": "atrule", "name": "viewport", "source": { "end": { "column": 1, "line": 15, "offset": 163 }, "start": { "column": 1, "line": 13, "offset": 132 } }, "params": "", "nodes": [ { "raws": { "before": "\n ", "between": ": " }, "type": "decl", "source": { "end": { "column": 17, "line": 14, "offset": 161 }, "start": { "column": 5, "line": 14, "offset": 148 } }, "prop": "width", "value": "110px" } ] }, { "raws": { "before": "\n\n", "between": " ", "afterName": "", "semicolon": true, "after": "\n" }, "type": "atrule", "name": "-ms-viewport", "source": { "end": { "column": 1, "line": 19, "offset": 200 }, "start": { "column": 1, "line": 17, "offset": 165 } }, "params": "", "nodes": [ { "raws": { "before": "\n ", "between": ": " }, "type": "decl", "source": { "end": { "column": 17, "line": 18, "offset": 198 }, "start": { "column": 5, "line": 18, "offset": 185 } }, "prop": "width", "value": "100px" } ] } ], "source": { "end": { "column": 2, "line": 19, "offset": 200 }, "start": { "column": 1, "line": 1, "offset": 0 } } } postcss-parser-tests-8.9.0/cases/atrule-empty.css000066400000000000000000000000221475246304500221240ustar00rootroot00000000000000@charset "UTF-8"; postcss-parser-tests-8.9.0/cases/atrule-empty.json000066400000000000000000000012331475246304500223120ustar00rootroot00000000000000{ "raws": { "semicolon": true, "after": "" }, "type": "root", "nodes": [ { "raws": { "before": "", "between": "", "afterName": " " }, "type": "atrule", "name": "charset", "source": { "end": { "column": 17, "line": 1, "offset": 17 }, "start": { "column": 1, "line": 1, "offset": 0 } }, "params": "\"UTF-8\"" } ], "source": { "end": { "column": 18, "line": 1, "offset": 17 }, "start": { "column": 1, "line": 1, "offset": 0 } } } postcss-parser-tests-8.9.0/cases/atrule-no-params.css000066400000000000000000000000111475246304500226610ustar00rootroot00000000000000@page{ } postcss-parser-tests-8.9.0/cases/atrule-no-params.json000066400000000000000000000012641475246304500230550ustar00rootroot00000000000000{ "raws": { "semicolon": false, "after": "" }, "type": "root", "nodes": [ { "raws": { "before": "", "between": "", "afterName": "", "after": " " }, "type": "atrule", "name": "page", "source": { "end": { "column": 8, "line": 1, "offset": 8 }, "start": { "column": 1, "line": 1, "offset": 0 } }, "params": "", "nodes": [] } ], "source": { "end": { "column": 9, "line": 1, "offset": 8 }, "start": { "column": 1, "line": 1, "offset": 0 } } } postcss-parser-tests-8.9.0/cases/atrule-no-semicolon.css000066400000000000000000000000531475246304500233740ustar00rootroot00000000000000@media screen {@content} @charset "UTF-8" postcss-parser-tests-8.9.0/cases/atrule-no-semicolon.json000066400000000000000000000027511475246304500235640ustar00rootroot00000000000000{ "raws": { "semicolon": false, "after": "" }, "type": "root", "nodes": [ { "raws": { "before": "", "between": " ", "afterName": " ", "semicolon": false, "after": "" }, "type": "atrule", "name": "media", "source": { "end": { "column": 24, "line": 1, "offset": 24 }, "start": { "column": 1, "line": 1, "offset": 0 } }, "params": "screen", "nodes": [ { "raws": { "before": "", "between": "", "afterName": "" }, "type": "atrule", "name": "content", "source": { "start": { "column": 16, "line": 1, "offset": 15 } }, "params": "" } ] }, { "raws": { "before": "\n\n", "between": "", "afterName": " " }, "type": "atrule", "name": "charset", "source": { "end": { "column": 16, "line": 3, "offset": 42 }, "start": { "column": 1, "line": 3, "offset": 26 } }, "params": "\"UTF-8\"" } ], "source": { "end": { "column": 17, "line": 3, "offset": 42 }, "start": { "column": 1, "line": 1, "offset": 0 } } } postcss-parser-tests-8.9.0/cases/atrule-no-space.css000066400000000000000000000000221475246304500224730ustar00rootroot00000000000000@import"test.css" postcss-parser-tests-8.9.0/cases/atrule-no-space.json000066400000000000000000000012351475246304500226630ustar00rootroot00000000000000{ "raws": { "semicolon": false, "after": "" }, "type": "root", "nodes": [ { "raws": { "before": "", "between": "", "afterName": "" }, "type": "atrule", "name": "import", "source": { "end": { "column": 17, "line": 1, "offset": 17 }, "start": { "column": 1, "line": 1, "offset": 0 } }, "params": "\"test.css\"" } ], "source": { "end": { "column": 18, "line": 1, "offset": 17 }, "start": { "column": 1, "line": 1, "offset": 0 } } } postcss-parser-tests-8.9.0/cases/atrule-params.css000066400000000000000000000001061475246304500222540ustar00rootroot00000000000000@-moz-document/* near */ /* filter */ url("example.com/{") /* a */ {} postcss-parser-tests-8.9.0/cases/atrule-params.json000066400000000000000000000013671475246304500224470ustar00rootroot00000000000000{ "raws": { "semicolon": false, "after": "" }, "type": "root", "nodes": [ { "raws": { "before": "", "between": " /* a */ ", "afterName": "/* near */ /* filter */ ", "after": "" }, "type": "atrule", "name": "-moz-document", "source": { "end": { "column": 69, "line": 1, "offset": 69 }, "start": { "column": 1, "line": 1, "offset": 0 } }, "params": "url(\"example.com/{\")", "nodes": [] } ], "source": { "end": { "column": 70, "line": 1, "offset": 69 }, "start": { "column": 1, "line": 1, "offset": 0 } } } postcss-parser-tests-8.9.0/cases/atrule-rules.css000066400000000000000000000004021475246304500221220ustar00rootroot00000000000000@supports (animation-name: test) { @-custom-keyframe anim { from { color: black; } to { color: white } } } @support selector(:focus-visible) { a:focus-visible { background: yellow; } } postcss-parser-tests-8.9.0/cases/atrule-rules.json000066400000000000000000000126011475246304500223070ustar00rootroot00000000000000{ "raws": { "semicolon": false, "after": "" }, "type": "root", "nodes": [ { "raws": { "before": "", "between": " ", "afterName": " ", "semicolon": false, "after": "\n" }, "type": "atrule", "name": "supports", "source": { "end": { "column": 1, "line": 10, "offset": 170 }, "start": { "column": 1, "line": 1, "offset": 0 } }, "params": "(animation-name: test)", "nodes": [ { "raws": { "before": "\n ", "between": " ", "afterName": " ", "semicolon": false, "after": "\n " }, "type": "atrule", "name": "-custom-keyframe", "source": { "end": { "column": 5, "line": 9, "offset": 168 }, "start": { "column": 5, "line": 2, "offset": 39 } }, "params": "anim", "nodes": [ { "raws": { "before": "\n ", "between": " ", "semicolon": true, "after": "\n " }, "type": "rule", "nodes": [ { "raws": { "before": "\n ", "between": ": " }, "type": "decl", "source": { "end": { "column": 25, "line": 4, "offset": 104 }, "start": { "column": 13, "line": 4, "offset": 91 } }, "prop": "color", "value": "black" } ], "source": { "end": { "column": 9, "line": 5, "offset": 114 }, "start": { "column": 9, "line": 3, "offset": 72 } }, "selector": "from" }, { "raws": { "before": "\n ", "between": " ", "semicolon": false, "after": "\n " }, "type": "rule", "nodes": [ { "raws": { "before": "\n ", "between": ": " }, "type": "decl", "source": { "end": { "column": 24, "line": 7, "offset": 152 }, "start": { "column": 13, "line": 7, "offset": 140 } }, "prop": "color", "value": "white" } ], "source": { "end": { "column": 9, "line": 8, "offset": 162 }, "start": { "column": 9, "line": 6, "offset": 123 } }, "selector": "to" } ] } ] }, { "raws": { "before": "\n\n", "between": " ", "afterName": " ", "semicolon": false, "after": "\n" }, "type": "atrule", "name": "support", "source": { "end": { "column": 1, "line": 16, "offset": 257 }, "start": { "column": 1, "line": 12, "offset": 172 } }, "params": "selector(:focus-visible)", "nodes": [ { "raws": { "before": "\n ", "between": " ", "semicolon": true, "after": "\n " }, "type": "rule", "nodes": [ { "raws": { "before": "\n ", "between": ": " }, "type": "decl", "source": { "end": { "column": 23, "line": 14, "offset": 251 }, "start": { "column": 5, "line": 14, "offset": 232 } }, "prop": "background", "value": "yellow" } ], "source": { "end": { "column": 3, "line": 15, "offset": 255 }, "start": { "column": 3, "line": 13, "offset": 210 } }, "selector": "a:focus-visible" } ] } ], "source": { "end": { "column": 2, "line": 16, "offset": 257 }, "start": { "column": 1, "line": 1, "offset": 0 } } } postcss-parser-tests-8.9.0/cases/between.css000066400000000000000000000000111475246304500211230ustar00rootroot00000000000000a/**/ {} postcss-parser-tests-8.9.0/cases/between.json000066400000000000000000000012131475246304500213110ustar00rootroot00000000000000{ "raws": { "semicolon": false, "after": "" }, "type": "root", "nodes": [ { "raws": { "before": "", "between": "/**/\n", "after": "" }, "type": "rule", "nodes": [], "source": { "end": { "column": 2, "line": 2, "offset": 8 }, "start": { "column": 1, "line": 1, "offset": 0 } }, "selector": "a" } ], "source": { "end": { "column": 3, "line": 2, "offset": 8 }, "start": { "column": 1, "line": 1, "offset": 0 } } } postcss-parser-tests-8.9.0/cases/bom.json000066400000000000000000000012051475246304500204360ustar00rootroot00000000000000{ "raws": { "semicolon": false, "after": "" }, "type": "root", "nodes": [ { "raws": { "before": "", "between": "", "after": "" }, "type": "rule", "nodes": [], "source": { "end": { "column": 3, "line": 1, "offset": 3 }, "start": { "column": 1, "line": 1, "offset": 0 } }, "selector": "a" } ], "source": { "end": { "column": 4, "line": 1, "offset": 3 }, "start": { "column": 1, "line": 1, "offset": 0 } } } postcss-parser-tests-8.9.0/cases/colon-selector.css000066400000000000000000000000171475246304500224300ustar00rootroot00000000000000:fullscreen {} postcss-parser-tests-8.9.0/cases/colon-selector.json000066400000000000000000000012241475246304500226120ustar00rootroot00000000000000{ "raws": { "semicolon": false, "after": "" }, "type": "root", "nodes": [ { "raws": { "before": "", "between": " ", "after": "" }, "type": "rule", "nodes": [], "source": { "end": { "column": 14, "line": 1, "offset": 14 }, "start": { "column": 1, "line": 1, "offset": 0 } }, "selector": ":fullscreen" } ], "source": { "end": { "column": 15, "line": 1, "offset": 14 }, "start": { "column": 1, "line": 1, "offset": 0 } } } postcss-parser-tests-8.9.0/cases/comments.css000066400000000000000000000004131475246304500213250ustar00rootroot00000000000000/* a { color: black } */ /**/ /* */ div { /* inside */ color: black; /* between */ border-radius: 3px / 7px /* end */ } /* b */ a { color: black; /* c */ } .in/**/side { color: var/**/(--broken); font-family: sans-serif,/**/serif; } postcss-parser-tests-8.9.0/cases/comments.json000066400000000000000000000162641475246304500215210ustar00rootroot00000000000000{ "raws": { "semicolon": false, "after": "" }, "type": "root", "nodes": [ { "raws": { "before": "", "left": " ", "right": " " }, "type": "comment", "source": { "end": { "column": 24, "line": 1, "offset": 24 }, "start": { "column": 1, "line": 1, "offset": 0 } }, "text": "a { color: black }" }, { "raws": { "before": "\n", "left": "", "right": "" }, "type": "comment", "source": { "end": { "column": 4, "line": 2, "offset": 29 }, "start": { "column": 1, "line": 2, "offset": 25 } }, "text": "" }, { "raws": { "before": "\n", "left": " ", "right": "" }, "type": "comment", "source": { "end": { "column": 5, "line": 3, "offset": 35 }, "start": { "column": 1, "line": 3, "offset": 30 } }, "text": "" }, { "raws": { "before": "\n", "between": " ", "semicolon": false, "after": "\n" }, "type": "rule", "nodes": [ { "raws": { "before": "\n ", "left": " ", "right": " " }, "type": "comment", "source": { "end": { "column": 16, "line": 5, "offset": 58 }, "start": { "column": 5, "line": 5, "offset": 46 } }, "text": "inside" }, { "raws": { "before": "\n ", "between": ": " }, "type": "decl", "source": { "end": { "column": 17, "line": 6, "offset": 76 }, "start": { "column": 5, "line": 6, "offset": 63 } }, "prop": "color", "value": "black" }, { "raws": { "before": "\n ", "left": " ", "right": " " }, "type": "comment", "source": { "end": { "column": 17, "line": 7, "offset": 94 }, "start": { "column": 5, "line": 7, "offset": 81 } }, "text": "between" }, { "raws": { "before": "\n ", "between": ": " }, "type": "decl", "source": { "end": { "column": 28, "line": 8, "offset": 123 }, "start": { "column": 5, "line": 8, "offset": 99 } }, "prop": "border-radius", "value": "3px / 7px" }, { "raws": { "before": "\n ", "left": " ", "right": " " }, "type": "comment", "source": { "end": { "column": 13, "line": 9, "offset": 137 }, "start": { "column": 5, "line": 9, "offset": 128 } }, "text": "end" } ], "source": { "end": { "column": 1, "line": 10, "offset": 139 }, "start": { "column": 1, "line": 4, "offset": 36 } }, "selector": "div" }, { "raws": { "before": "\n", "left": " ", "right": " " }, "type": "comment", "source": { "end": { "column": 7, "line": 11, "offset": 147 }, "start": { "column": 1, "line": 11, "offset": 140 } }, "text": "b" }, { "raws": { "before": "\n\n", "between": " ", "semicolon": true, "after": "\n" }, "type": "rule", "nodes": [ { "raws": { "before": "\n ", "between": ": " }, "type": "decl", "source": { "end": { "column": 17, "line": 14, "offset": 170 }, "start": { "column": 5, "line": 14, "offset": 157 } }, "prop": "color", "value": "black" }, { "raws": { "before": "\n ", "left": " ", "right": " " }, "type": "comment", "source": { "end": { "column": 11, "line": 15, "offset": 182 }, "start": { "column": 5, "line": 15, "offset": 175 } }, "text": "c" } ], "source": { "end": { "column": 1, "line": 16, "offset": 184 }, "start": { "column": 1, "line": 13, "offset": 149 } }, "selector": "a" }, { "raws": { "before": "\n\n", "between": " ", "semicolon": true, "after": "\n" }, "type": "rule", "nodes": [ { "raws": { "before": "\n ", "between": ": " }, "type": "decl", "source": { "end": { "column": 27, "line": 19, "offset": 227 }, "start": { "column": 3, "line": 19, "offset": 202 } }, "prop": "color", "value": "var/**/(--broken)" }, { "raws": { "before": "\n ", "between": ": ", "value": { "raw": "sans-serif,/**/serif", "value": "sans-serif,serif" } }, "type": "decl", "source": { "end": { "column": 36, "line": 20, "offset": 264 }, "start": { "column": 3, "line": 20, "offset": 230 } }, "prop": "font-family", "value": "sans-serif,serif" } ], "source": { "end": { "column": 1, "line": 21, "offset": 266 }, "start": { "column": 1, "line": 18, "offset": 186 } }, "selector": ".in/**/side" } ], "source": { "end": { "column": 2, "line": 21, "offset": 266 }, "start": { "column": 1, "line": 1, "offset": 0 } } } postcss-parser-tests-8.9.0/cases/custom-properties.css000066400000000000000000000010401475246304500232010ustar00rootroot00000000000000:root { --number: 1; --unit: 100vw; --color: #06c; --function: calc(1 + 1); --variable: var(--unit); --string: 'single quoted string'; --string: "double quoted string"; --square-block: [1, 2, 3]; --round-block: (1, 2, 3); --empty1: ; --empty2: /**/; --empty3: !important; --empty4:/**/ !important; --empty5:/**/ ; --bracket-block: {1, 2, 3}; --JSON: [1, "2", {"three": {"a":1}}, [4]]; --javascript: function(rule) { console.log(rule) }; } :root{--a:1} .semicolon-less {--empty-end:/**/ } .empty{--a: } postcss-parser-tests-8.9.0/cases/custom-properties.json000066400000000000000000000272011475246304500233710ustar00rootroot00000000000000{ "raws": { "semicolon": false, "after": "" }, "type": "root", "nodes": [ { "raws": { "before": "", "between": " ", "semicolon": true, "after": "\n" }, "type": "rule", "nodes": [ { "raws": { "before": "\n ", "between": ": " }, "type": "decl", "source": { "end": { "column": 14, "line": 2, "offset": 22 }, "start": { "column": 3, "line": 2, "offset": 10 } }, "prop": "--number", "value": "1" }, { "raws": { "before": "\n ", "between": ": " }, "type": "decl", "source": { "end": { "column": 16, "line": 3, "offset": 39 }, "start": { "column": 3, "line": 3, "offset": 25 } }, "prop": "--unit", "value": "100vw" }, { "raws": { "before": "\n ", "between": ": " }, "type": "decl", "source": { "end": { "column": 16, "line": 4, "offset": 56 }, "start": { "column": 3, "line": 4, "offset": 42 } }, "prop": "--color", "value": "#06c" }, { "raws": { "before": "\n\n ", "between": ": " }, "type": "decl", "source": { "end": { "column": 26, "line": 6, "offset": 84 }, "start": { "column": 3, "line": 6, "offset": 60 } }, "prop": "--function", "value": "calc(1 + 1)" }, { "raws": { "before": "\n ", "between": ": " }, "type": "decl", "source": { "end": { "column": 26, "line": 7, "offset": 111 }, "start": { "column": 3, "line": 7, "offset": 87 } }, "prop": "--variable", "value": "var(--unit)" }, { "raws": { "before": "\n\n ", "between": ": " }, "type": "decl", "source": { "end": { "column": 35, "line": 9, "offset": 148 }, "start": { "column": 3, "line": 9, "offset": 115 } }, "prop": "--string", "value": "'single quoted string'" }, { "raws": { "before": "\n ", "between": ": " }, "type": "decl", "source": { "end": { "column": 35, "line": 10, "offset": 184 }, "start": { "column": 3, "line": 10, "offset": 151 } }, "prop": "--string", "value": "\"double quoted string\"" }, { "raws": { "before": "\n\n ", "between": ": " }, "type": "decl", "source": { "end": { "column": 28, "line": 12, "offset": 214 }, "start": { "column": 3, "line": 12, "offset": 188 } }, "prop": "--square-block", "value": "[1, 2, 3]" }, { "raws": { "before": "\n ", "between": ": " }, "type": "decl", "source": { "end": { "column": 27, "line": 13, "offset": 242 }, "start": { "column": 3, "line": 13, "offset": 217 } }, "prop": "--round-block", "value": "(1, 2, 3)" }, { "raws": { "before": "\n\n ", "between": ":" }, "type": "decl", "source": { "end": { "column": 13, "line": 15, "offset": 257 }, "start": { "column": 3, "line": 15, "offset": 246 } }, "prop": "--empty1", "value": " " }, { "raws": { "before": "\n ", "between": ":", "value": { "raw": " /**/", "value": " " } }, "type": "decl", "source": { "end": { "column": 17, "line": 16, "offset": 275 }, "start": { "column": 3, "line": 16, "offset": 260 } }, "prop": "--empty2", "value": " " }, { "raws": { "before": "\n ", "between": ":", "important": "!important" }, "type": "decl", "source": { "end": { "column": 23, "line": 17, "offset": 299 }, "start": { "column": 3, "line": 17, "offset": 278 } }, "prop": "--empty3", "important": true, "value": " " }, { "raws": { "before": "\n ", "between": ":", "important": "!important", "value": { "raw": "/**/ ", "value": " " } }, "type": "decl", "source": { "end": { "column": 27, "line": 18, "offset": 327 }, "start": { "column": 3, "line": 18, "offset": 302 } }, "prop": "--empty4", "important": true, "value": " " }, { "raws": { "before": "\n ", "between": ":", "value": { "raw": "/**/ ", "value": " " } }, "type": "decl", "source": { "end": { "column": 17, "line": 19, "offset": 345 }, "start": { "column": 3, "line": 19, "offset": 330 } }, "prop": "--empty5", "value": " " }, { "raws": { "before": "\n\n ", "between": ": " }, "type": "decl", "source": { "end": { "column": 29, "line": 21, "offset": 376 }, "start": { "column": 3, "line": 21, "offset": 349 } }, "prop": "--bracket-block", "value": "{1, 2, 3}" }, { "raws": { "before": "\n ", "between": ": " }, "type": "decl", "source": { "end": { "column": 44, "line": 22, "offset": 421 }, "start": { "column": 3, "line": 22, "offset": 379 } }, "prop": "--JSON", "value": "[1, \"2\", {\"three\": {\"a\":1}}, [4]]" }, { "raws": { "before": "\n ", "between": ": " }, "type": "decl", "source": { "end": { "column": 53, "line": 23, "offset": 475 }, "start": { "column": 3, "line": 23, "offset": 424 } }, "prop": "--javascript", "value": "function(rule) { console.log(rule) }" } ], "source": { "end": { "column": 1, "line": 24, "offset": 477 }, "start": { "column": 1, "line": 1, "offset": 0 } }, "selector": ":root" }, { "raws": { "before": "\n\n", "between": "", "semicolon": false, "after": "" }, "type": "rule", "nodes": [ { "raws": { "before": "", "between": ":" }, "type": "decl", "source": { "end": { "column": 11, "line": 26, "offset": 490 }, "start": { "column": 7, "line": 26, "offset": 485 } }, "prop": "--a", "value": "1" } ], "source": { "end": { "column": 12, "line": 26, "offset": 491 }, "start": { "column": 1, "line": 26, "offset": 479 } }, "selector": ":root" }, { "raws": { "before": "\n\n", "between": " ", "semicolon": false, "after": "" }, "type": "rule", "nodes": [ { "raws": { "before": "", "between": ":", "value": { "raw": "/**/ ", "value": " " } }, "type": "decl", "source": { "end": { "column": 33, "line": 28, "offset": 526 }, "start": { "column": 18, "line": 28, "offset": 510 } }, "prop": "--empty-end", "value": " " } ], "source": { "end": { "column": 35, "line": 28, "offset": 528 }, "start": { "column": 1, "line": 28, "offset": 493 } }, "selector": ".semicolon-less" }, { "raws": { "before": "\n\n", "between": "", "semicolon": false, "after": "" }, "type": "rule", "nodes": [ { "raws": { "before": "", "between": ":" }, "type": "decl", "source": { "end": { "column": 11, "line": 30, "offset": 541 }, "start": { "column": 8, "line": 30, "offset": 537 } }, "prop": "--a", "value": " " } ], "source": { "end": { "column": 13, "line": 30, "offset": 543 }, "start": { "column": 1, "line": 30, "offset": 530 } }, "selector": ".empty" } ], "source": { "end": { "column": 14, "line": 30, "offset": 543 }, "start": { "column": 1, "line": 1, "offset": 0 } } } postcss-parser-tests-8.9.0/cases/decls.css000066400000000000000000000000571475246304500205760ustar00rootroot00000000000000a { color: black; background: white; } postcss-parser-tests-8.9.0/cases/decls.json000066400000000000000000000031111475246304500207510ustar00rootroot00000000000000{ "raws": { "semicolon": false, "after": "" }, "type": "root", "nodes": [ { "raws": { "before": "", "between": " ", "semicolon": true, "after": "\n" }, "type": "rule", "nodes": [ { "raws": { "before": "\n ", "between": ": " }, "type": "decl", "source": { "end": { "column": 17, "line": 2, "offset": 21 }, "start": { "column": 5, "line": 2, "offset": 8 } }, "prop": "color", "value": "black" }, { "raws": { "before": "\n ", "between": ": " }, "type": "decl", "source": { "end": { "column": 22, "line": 3, "offset": 44 }, "start": { "column": 5, "line": 3, "offset": 26 } }, "prop": "background", "value": "white" } ], "source": { "end": { "column": 1, "line": 4, "offset": 46 }, "start": { "column": 1, "line": 1, "offset": 0 } }, "selector": "a" } ], "source": { "end": { "column": 2, "line": 4, "offset": 46 }, "start": { "column": 1, "line": 1, "offset": 0 } } } postcss-parser-tests-8.9.0/cases/empty.css000066400000000000000000000000001475246304500206260ustar00rootroot00000000000000postcss-parser-tests-8.9.0/cases/empty.json000066400000000000000000000003551475246304500210240ustar00rootroot00000000000000{ "raws": { "after": "" }, "type": "root", "nodes": [], "source": { "end": { "column": 1, "line": 1, "offset": 0 }, "start": { "column": 1, "line": 1, "offset": 0 } } } postcss-parser-tests-8.9.0/cases/escape.css000066400000000000000000000005211475246304500207400ustar00rootroot00000000000000a { background: url("a).png"); background: url(a;a); background: url(a/*); background: \;a; } :not([foo=")"]) { } :not(div/*)*/) { } :not(:nth-child(2n of [foo=")"])) { } [foo=\"] { } [foo=\{] { } [foo=\(] { } [foo=yes\:\(it\'s\ work\)] { } \@noat { } h1\\{ color: \\; } [attr=;] { } .prop { \62 olor: red } postcss-parser-tests-8.9.0/cases/escape.json000066400000000000000000000175371475246304500211400ustar00rootroot00000000000000{ "raws": { "semicolon": false, "after": "" }, "type": "root", "nodes": [ { "raws": { "before": "", "between": " ", "semicolon": true, "after": "\n" }, "type": "rule", "nodes": [ { "raws": { "before": "\n ", "between": ": " }, "type": "decl", "source": { "end": { "column": 30, "line": 2, "offset": 34 }, "start": { "column": 5, "line": 2, "offset": 8 } }, "prop": "background", "value": "url(\"a).png\")" }, { "raws": { "before": "\n ", "between": ": " }, "type": "decl", "source": { "end": { "column": 25, "line": 3, "offset": 60 }, "start": { "column": 5, "line": 3, "offset": 39 } }, "prop": "background", "value": "url(a;a)" }, { "raws": { "before": "\n ", "between": ": " }, "type": "decl", "source": { "end": { "column": 25, "line": 4, "offset": 86 }, "start": { "column": 5, "line": 4, "offset": 65 } }, "prop": "background", "value": "url(a/*)" }, { "raws": { "before": "\n ", "between": ": " }, "type": "decl", "source": { "end": { "column": 20, "line": 5, "offset": 107 }, "start": { "column": 5, "line": 5, "offset": 91 } }, "prop": "background", "value": "\\;a" } ], "source": { "end": { "column": 1, "line": 6, "offset": 109 }, "start": { "column": 1, "line": 1, "offset": 0 } }, "selector": "a" }, { "raws": { "before": "\n\n", "between": " ", "after": " " }, "type": "rule", "nodes": [], "source": { "end": { "column": 19, "line": 8, "offset": 130 }, "start": { "column": 1, "line": 8, "offset": 111 } }, "selector": ":not([foo=\")\"])" }, { "raws": { "before": "\n", "between": " ", "after": " " }, "type": "rule", "nodes": [], "source": { "end": { "column": 18, "line": 9, "offset": 149 }, "start": { "column": 1, "line": 9, "offset": 131 } }, "selector": ":not(div/*)*/)" }, { "raws": { "before": "\n", "between": " ", "after": " " }, "type": "rule", "nodes": [], "source": { "end": { "column": 37, "line": 10, "offset": 187 }, "start": { "column": 1, "line": 10, "offset": 150 } }, "selector": ":not(:nth-child(2n of [foo=\")\"]))" }, { "raws": { "before": "\n", "between": " ", "after": " " }, "type": "rule", "nodes": [], "source": { "end": { "column": 12, "line": 11, "offset": 200 }, "start": { "column": 1, "line": 11, "offset": 188 } }, "selector": "[foo=\\\"]" }, { "raws": { "before": "\n", "between": " ", "after": " " }, "type": "rule", "nodes": [], "source": { "end": { "column": 12, "line": 12, "offset": 213 }, "start": { "column": 1, "line": 12, "offset": 201 } }, "selector": "[foo=\\{]" }, { "raws": { "before": "\n", "between": " ", "after": " " }, "type": "rule", "nodes": [], "source": { "end": { "column": 12, "line": 13, "offset": 226 }, "start": { "column": 1, "line": 13, "offset": 214 } }, "selector": "[foo=\\(]" }, { "raws": { "before": "\n", "between": " ", "after": " " }, "type": "rule", "nodes": [], "source": { "end": { "column": 30, "line": 14, "offset": 257 }, "start": { "column": 1, "line": 14, "offset": 227 } }, "selector": "[foo=yes\\:\\(it\\'s\\ work\\)]" }, { "raws": { "before": "\n\n", "between": " ", "after": " " }, "type": "rule", "nodes": [], "source": { "end": { "column": 10, "line": 16, "offset": 269 }, "start": { "column": 1, "line": 16, "offset": 259 } }, "selector": "\\@noat" }, { "raws": { "before": "\n\n", "between": "", "semicolon": true, "after": "\n" }, "type": "rule", "nodes": [ { "raws": { "before": "\n ", "between": ": " }, "type": "decl", "source": { "end": { "column": 14, "line": 19, "offset": 291 }, "start": { "column": 5, "line": 19, "offset": 281 } }, "prop": "color", "value": "\\\\" } ], "source": { "end": { "column": 1, "line": 20, "offset": 293 }, "start": { "column": 1, "line": 18, "offset": 271 } }, "selector": "h1\\\\" }, { "raws": { "before": "\n\n", "between": " ", "after": " " }, "type": "rule", "nodes": [], "source": { "end": { "column": 12, "line": 22, "offset": 307 }, "start": { "column": 1, "line": 22, "offset": 295 } }, "selector": "[attr=;]" }, { "raws": { "before": "\n\n", "between": " ", "semicolon": false, "after": "\n" }, "type": "rule", "nodes": [ { "raws": { "before": "\n ", "between": ": " }, "type": "decl", "source": { "end": { "column": 17, "line": 25, "offset": 334 }, "start": { "column": 5, "line": 25, "offset": 321 } }, "prop": "\\62 olor", "value": "red" } ], "source": { "end": { "column": 1, "line": 26, "offset": 336 }, "start": { "column": 1, "line": 24, "offset": 309 } }, "selector": ".prop" } ], "source": { "end": { "column": 2, "line": 26, "offset": 336 }, "start": { "column": 1, "line": 1, "offset": 0 } } } postcss-parser-tests-8.9.0/cases/extends.css000066400000000000000000000000731475246304500211540ustar00rootroot00000000000000one: 1; a { two: 2; b { three: 3; } } postcss-parser-tests-8.9.0/cases/extends.json000066400000000000000000000050201475246304500213320ustar00rootroot00000000000000{ "raws": { "semicolon": false, "after": "" }, "type": "root", "nodes": [ { "raws": { "before": "", "between": ": " }, "type": "decl", "source": { "end": { "column": 7, "line": 1, "offset": 7 }, "start": { "column": 1, "line": 1, "offset": 0 } }, "prop": "one", "value": "1" }, { "raws": { "before": "\n\n", "between": " ", "semicolon": false, "after": "\n" }, "type": "rule", "nodes": [ { "raws": { "before": "\n ", "between": ": " }, "type": "decl", "source": { "end": { "column": 11, "line": 4, "offset": 24 }, "start": { "column": 5, "line": 4, "offset": 17 } }, "prop": "two", "value": "2" }, { "raws": { "before": "\n ", "between": " ", "semicolon": true, "after": "\n " }, "type": "rule", "nodes": [ { "raws": { "before": "\n ", "between": ": " }, "type": "decl", "source": { "end": { "column": 17, "line": 6, "offset": 50 }, "start": { "column": 9, "line": 6, "offset": 41 } }, "prop": "three", "value": "3" } ], "source": { "end": { "column": 5, "line": 7, "offset": 56 }, "start": { "column": 5, "line": 5, "offset": 29 } }, "selector": "b" } ], "source": { "end": { "column": 1, "line": 8, "offset": 58 }, "start": { "column": 1, "line": 3, "offset": 9 } }, "selector": "a" } ], "source": { "end": { "column": 2, "line": 8, "offset": 58 }, "start": { "column": 1, "line": 1, "offset": 0 } } } postcss-parser-tests-8.9.0/cases/function.css000066400000000000000000000003171475246304500213300ustar00rootroot00000000000000a { background-image: url(data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7); background-image: url("./image (1).jpg"); background-image: url( './image (1).jpg' ); } postcss-parser-tests-8.9.0/cases/function.json000066400000000000000000000042561475246304500215170ustar00rootroot00000000000000{ "raws": { "semicolon": false, "after": "" }, "type": "root", "nodes": [ { "raws": { "before": "", "between": " ", "semicolon": true, "after": "\n" }, "type": "rule", "nodes": [ { "raws": { "before": "\n ", "between": ": " }, "type": "decl", "source": { "end": { "column": 106, "line": 2, "offset": 110 }, "start": { "column": 5, "line": 2, "offset": 8 } }, "prop": "background-image", "value": "url(data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)" }, { "raws": { "before": "\n ", "between": ": " }, "type": "decl", "source": { "end": { "column": 45, "line": 3, "offset": 156 }, "start": { "column": 5, "line": 3, "offset": 115 } }, "prop": "background-image", "value": "url(\"./image (1).jpg\")" }, { "raws": { "before": "\n ", "between": ": " }, "type": "decl", "source": { "end": { "column": 47, "line": 4, "offset": 204 }, "start": { "column": 5, "line": 4, "offset": 161 } }, "prop": "background-image", "value": "url( './image (1).jpg' )" } ], "source": { "end": { "column": 1, "line": 5, "offset": 206 }, "start": { "column": 1, "line": 1, "offset": 0 } }, "selector": "a" } ], "source": { "end": { "column": 2, "line": 5, "offset": 206 }, "start": { "column": 1, "line": 1, "offset": 0 } } } postcss-parser-tests-8.9.0/cases/ie-progid.css000066400000000000000000000001751475246304500213640ustar00rootroot00000000000000a { filter: progid:DXImageTransform.Microsoft.Blur(pixelradius=2) progid:DXImageTransform.Microsoft.Wheel(duration=3); } postcss-parser-tests-8.9.0/cases/ie-progid.json000066400000000000000000000023401475246304500215410ustar00rootroot00000000000000{ "raws": { "semicolon": false, "after": "" }, "type": "root", "nodes": [ { "raws": { "before": "", "between": " ", "semicolon": true, "after": "\n" }, "type": "rule", "nodes": [ { "raws": { "before": "\n ", "between": ": " }, "type": "decl", "source": { "end": { "column": 118, "line": 2, "offset": 122 }, "start": { "column": 5, "line": 2, "offset": 8 } }, "prop": "filter", "value": "progid:DXImageTransform.Microsoft.Blur(pixelradius=2) progid:DXImageTransform.Microsoft.Wheel(duration=3)" } ], "source": { "end": { "column": 1, "line": 3, "offset": 124 }, "start": { "column": 1, "line": 1, "offset": 0 } }, "selector": "a" } ], "source": { "end": { "column": 2, "line": 3, "offset": 124 }, "start": { "column": 1, "line": 1, "offset": 0 } } } postcss-parser-tests-8.9.0/cases/important.css000066400000000000000000000006301475246304500215160ustar00rootroot00000000000000a { width: 1px!important; color: black !important ; } p { prop: important; color: red important; margin: 10px ! important; padding: 20px ! /* test */ important; width: 100px ! /*! test */ important; height: 100px /*! test */ important; z-index: 1 ""! important; padding: 1px/* sep */!important; left: 10 !IMPORTANT; right: 10 ! IMPORTANT; } postcss-parser-tests-8.9.0/cases/important.json000066400000000000000000000166501475246304500217100ustar00rootroot00000000000000{ "raws": { "semicolon": false, "after": "" }, "type": "root", "nodes": [ { "raws": { "before": "", "between": " ", "semicolon": true, "after": "\n" }, "type": "rule", "nodes": [ { "raws": { "before": "\n ", "between": ": ", "important": "!important" }, "type": "decl", "source": { "end": { "column": 25, "line": 2, "offset": 29 }, "start": { "column": 5, "line": 2, "offset": 8 } }, "prop": "width", "important": true, "value": "1px" }, { "raws": { "before": "\n ", "between": ": ", "important": " !important " }, "type": "decl", "source": { "end": { "column": 30, "line": 3, "offset": 60 }, "start": { "column": 5, "line": 3, "offset": 34 } }, "prop": "color", "important": true, "value": "black" } ], "source": { "end": { "column": 1, "line": 4, "offset": 62 }, "start": { "column": 1, "line": 1, "offset": 0 } }, "selector": "a" }, { "raws": { "before": "\n\n", "between": " ", "semicolon": true, "after": "\n" }, "type": "rule", "nodes": [ { "raws": { "before": "\n ", "between": ": " }, "type": "decl", "source": { "end": { "column": 20, "line": 7, "offset": 88 }, "start": { "column": 5, "line": 7, "offset": 72 } }, "prop": "prop", "value": "important" }, { "raws": { "before": "\n ", "between": ": " }, "type": "decl", "source": { "end": { "column": 25, "line": 8, "offset": 114 }, "start": { "column": 5, "line": 8, "offset": 93 } }, "prop": "color", "value": "red important" }, { "raws": { "before": "\n ", "between": ": ", "important": " ! important" }, "type": "decl", "source": { "end": { "column": 39, "line": 9, "offset": 154 }, "start": { "column": 5, "line": 9, "offset": 119 } }, "prop": "margin", "important": true, "value": "10px" }, { "raws": { "before": "\n ", "between": ": ", "important": " ! /* test */ important" }, "type": "decl", "source": { "end": { "column": 48, "line": 10, "offset": 203 }, "start": { "column": 5, "line": 10, "offset": 159 } }, "prop": "padding", "important": true, "value": "20px" }, { "raws": { "before": "\n ", "between": ": ", "important": " ! /*! test */ important" }, "type": "decl", "source": { "end": { "column": 41, "line": 11, "offset": 245 }, "start": { "column": 5, "line": 11, "offset": 208 } }, "prop": "width", "important": true, "value": "100px" }, { "raws": { "before": "\n ", "between": ": ", "value": { "raw": "100px /*! test */ important", "value": "100px important" } }, "type": "decl", "source": { "end": { "column": 40, "line": 12, "offset": 286 }, "start": { "column": 5, "line": 12, "offset": 250 } }, "prop": "height", "value": "100px important" }, { "raws": { "before": "\n ", "between": ": ", "important": "! important" }, "type": "decl", "source": { "end": { "column": 29, "line": 13, "offset": 316 }, "start": { "column": 5, "line": 13, "offset": 291 } }, "prop": "z-index", "important": true, "value": "1 \"\"" }, { "raws": { "before": "\n ", "between": ": ", "important": "!important", "value": { "raw": "1px/* sep */", "value": "1px" } }, "type": "decl", "source": { "end": { "column": 36, "line": 14, "offset": 353 }, "start": { "column": 5, "line": 14, "offset": 321 } }, "prop": "padding", "important": true, "value": "1px" }, { "raws": { "before": "\n ", "between": ": ", "important": " !IMPORTANT" }, "type": "decl", "source": { "end": { "column": 24, "line": 15, "offset": 378 }, "start": { "column": 5, "line": 15, "offset": 358 } }, "prop": "left", "important": true, "value": "10" }, { "raws": { "before": "\n ", "between": ": ", "important": " ! IMPORTANT" }, "type": "decl", "source": { "end": { "column": 26, "line": 16, "offset": 405 }, "start": { "column": 5, "line": 16, "offset": 383 } }, "prop": "right", "important": true, "value": "10" } ], "source": { "end": { "column": 1, "line": 17, "offset": 407 }, "start": { "column": 1, "line": 6, "offset": 64 } }, "selector": "p" } ], "source": { "end": { "column": 2, "line": 17, "offset": 407 }, "start": { "column": 1, "line": 1, "offset": 0 } } } postcss-parser-tests-8.9.0/cases/inside.css000066400000000000000000000000261475246304500207530ustar00rootroot00000000000000a { @import "a.css" } postcss-parser-tests-8.9.0/cases/inside.json000066400000000000000000000022301475246304500211330ustar00rootroot00000000000000{ "raws": { "semicolon": false, "after": "" }, "type": "root", "nodes": [ { "raws": { "before": "", "between": " ", "semicolon": false, "after": "" }, "type": "rule", "nodes": [ { "raws": { "before": " ", "between": " ", "afterName": " " }, "type": "atrule", "name": "import", "source": { "end": { "column": 19, "line": 1, "offset": 19 }, "start": { "column": 5, "line": 1, "offset": 4 } }, "params": "\"a.css\"" } ], "source": { "end": { "column": 21, "line": 1, "offset": 21 }, "start": { "column": 1, "line": 1, "offset": 0 } }, "selector": "a" } ], "source": { "end": { "column": 22, "line": 1, "offset": 21 }, "start": { "column": 1, "line": 1, "offset": 0 } } } postcss-parser-tests-8.9.0/cases/no-selector.css000066400000000000000000000000031475246304500217250ustar00rootroot00000000000000{} postcss-parser-tests-8.9.0/cases/no-selector.json000066400000000000000000000012041475246304500221120ustar00rootroot00000000000000{ "raws": { "semicolon": false, "after": "" }, "type": "root", "nodes": [ { "raws": { "before": "", "between": "", "after": "" }, "type": "rule", "nodes": [], "source": { "end": { "column": 2, "line": 1, "offset": 2 }, "start": { "column": 1, "line": 1, "offset": 0 } }, "selector": "" } ], "source": { "end": { "column": 3, "line": 1, "offset": 2 }, "start": { "column": 1, "line": 1, "offset": 0 } } } postcss-parser-tests-8.9.0/cases/prop.css000066400000000000000000000001411475246304500204560ustar00rootroot00000000000000a { *color : black; _background: white; font-size/**/: big; $(var)-size: 100%; } postcss-parser-tests-8.9.0/cases/prop.json000066400000000000000000000047611475246304500206530ustar00rootroot00000000000000{ "raws": { "semicolon": false, "after": "" }, "type": "root", "nodes": [ { "raws": { "before": "", "between": " ", "semicolon": true, "after": "\n" }, "type": "rule", "nodes": [ { "raws": { "before": "\n *", "between": " : " }, "type": "decl", "source": { "end": { "column": 19, "line": 2, "offset": 23 }, "start": { "column": 5, "line": 2, "offset": 8 } }, "prop": "color", "value": "black" }, { "raws": { "before": "\n _", "between": ": " }, "type": "decl", "source": { "end": { "column": 23, "line": 3, "offset": 47 }, "start": { "column": 5, "line": 3, "offset": 28 } }, "prop": "background", "value": "white" }, { "raws": { "before": "\n ", "between": "/**/: " }, "type": "decl", "source": { "end": { "column": 23, "line": 4, "offset": 71 }, "start": { "column": 5, "line": 4, "offset": 52 } }, "prop": "font-size", "value": "big" }, { "raws": { "before": "\n ", "between": ": " }, "type": "decl", "source": { "end": { "column": 22, "line": 5, "offset": 94 }, "start": { "column": 5, "line": 5, "offset": 76 } }, "prop": "$(var)-size", "value": "100%" } ], "source": { "end": { "column": 1, "line": 6, "offset": 96 }, "start": { "column": 1, "line": 1, "offset": 0 } }, "selector": "a" } ], "source": { "end": { "column": 2, "line": 6, "offset": 96 }, "start": { "column": 1, "line": 1, "offset": 0 } } } postcss-parser-tests-8.9.0/cases/quotes.css000066400000000000000000000000771475246304500210260ustar00rootroot00000000000000a::before { content: ";'@ /**/\""; content: '\'"\\'; } postcss-parser-tests-8.9.0/cases/quotes.json000066400000000000000000000031421475246304500212030ustar00rootroot00000000000000{ "raws": { "semicolon": false, "after": "" }, "type": "root", "nodes": [ { "raws": { "before": "", "between": " ", "semicolon": true, "after": "\n" }, "type": "rule", "nodes": [ { "raws": { "before": "\n ", "between": ": " }, "type": "decl", "source": { "end": { "column": 26, "line": 2, "offset": 38 }, "start": { "column": 5, "line": 2, "offset": 16 } }, "prop": "content", "value": "\";'@ /**/\\\"\"" }, { "raws": { "before": "\n ", "between": ": " }, "type": "decl", "source": { "end": { "column": 21, "line": 3, "offset": 60 }, "start": { "column": 5, "line": 3, "offset": 43 } }, "prop": "content", "value": "'\\'\"\\\\'" } ], "source": { "end": { "column": 1, "line": 4, "offset": 62 }, "start": { "column": 1, "line": 1, "offset": 0 } }, "selector": "a::before" } ], "source": { "end": { "column": 2, "line": 4, "offset": 62 }, "start": { "column": 1, "line": 1, "offset": 0 } } } postcss-parser-tests-8.9.0/cases/raw-decl.css000066400000000000000000000000331475246304500211740ustar00rootroot00000000000000a { color: a/* ; */ b ; } postcss-parser-tests-8.9.0/cases/raw-decl.json000066400000000000000000000023311475246304500213600ustar00rootroot00000000000000{ "raws": { "semicolon": false, "after": "" }, "type": "root", "nodes": [ { "raws": { "before": "", "between": " ", "semicolon": true, "after": " " }, "type": "rule", "nodes": [ { "raws": { "before": " ", "between": ": ", "value": { "raw": "a/* ; */ b ", "value": "a b" } }, "type": "decl", "source": { "end": { "column": 24, "line": 1, "offset": 24 }, "start": { "column": 5, "line": 1, "offset": 4 } }, "prop": "color", "value": "a b" } ], "source": { "end": { "column": 26, "line": 1, "offset": 26 }, "start": { "column": 1, "line": 1, "offset": 0 } }, "selector": "a" } ], "source": { "end": { "column": 27, "line": 1, "offset": 26 }, "start": { "column": 1, "line": 1, "offset": 0 } } } postcss-parser-tests-8.9.0/cases/rule-at.css000066400000000000000000000001361475246304500210530ustar00rootroot00000000000000a { width: 10px; margin: 0 @width; @mixin mobile { height: 100px; } } postcss-parser-tests-8.9.0/cases/rule-at.json000066400000000000000000000052721475246304500212420ustar00rootroot00000000000000{ "raws": { "semicolon": false, "after": "" }, "type": "root", "nodes": [ { "raws": { "before": "", "between": " ", "semicolon": false, "after": "\n" }, "type": "rule", "nodes": [ { "raws": { "before": "\n ", "between": ": " }, "type": "decl", "source": { "end": { "column": 16, "line": 2, "offset": 20 }, "start": { "column": 5, "line": 2, "offset": 8 } }, "prop": "width", "value": "10px" }, { "raws": { "before": "\n ", "between": ": " }, "type": "decl", "source": { "end": { "column": 21, "line": 3, "offset": 42 }, "start": { "column": 5, "line": 3, "offset": 25 } }, "prop": "margin", "value": "0 @width" }, { "raws": { "before": "\n ", "between": " ", "afterName": " ", "semicolon": true, "after": "\n " }, "type": "atrule", "name": "mixin", "source": { "end": { "column": 5, "line": 6, "offset": 91 }, "start": { "column": 5, "line": 4, "offset": 47 } }, "params": "mobile", "nodes": [ { "raws": { "before": "\n ", "between": ": " }, "type": "decl", "source": { "end": { "column": 22, "line": 5, "offset": 85 }, "start": { "column": 9, "line": 5, "offset": 71 } }, "prop": "height", "value": "100px" } ] } ], "source": { "end": { "column": 1, "line": 7, "offset": 93 }, "start": { "column": 1, "line": 1, "offset": 0 } }, "selector": "a" } ], "source": { "end": { "column": 2, "line": 7, "offset": 93 }, "start": { "column": 1, "line": 1, "offset": 0 } } } postcss-parser-tests-8.9.0/cases/rule-no-semicolon.css000066400000000000000000000000171475246304500230470ustar00rootroot00000000000000a{color:black} postcss-parser-tests-8.9.0/cases/rule-no-semicolon.json000066400000000000000000000021601475246304500232310ustar00rootroot00000000000000{ "raws": { "semicolon": false, "after": "" }, "type": "root", "nodes": [ { "raws": { "before": "", "between": "", "semicolon": false, "after": "" }, "type": "rule", "nodes": [ { "raws": { "before": "", "between": ":" }, "type": "decl", "source": { "end": { "column": 13, "line": 1, "offset": 13 }, "start": { "column": 3, "line": 1, "offset": 2 } }, "prop": "color", "value": "black" } ], "source": { "end": { "column": 14, "line": 1, "offset": 14 }, "start": { "column": 1, "line": 1, "offset": 0 } }, "selector": "a" } ], "source": { "end": { "column": 15, "line": 1, "offset": 14 }, "start": { "column": 1, "line": 1, "offset": 0 } } } postcss-parser-tests-8.9.0/cases/selector.css000066400000000000000000000000421475246304500213160ustar00rootroot00000000000000 a/* { } */ b {} a/* test */b {} postcss-parser-tests-8.9.0/cases/selector.json000066400000000000000000000021701475246304500215030ustar00rootroot00000000000000{ "raws": { "semicolon": false, "after": "" }, "type": "root", "nodes": [ { "raws": { "before": "", "between": " ", "selector": { "raw": "a/* { } */ b", "value": "a b" }, "after": "" }, "type": "rule", "nodes": [], "source": { "end": { "column": 15, "line": 1, "offset": 15 }, "start": { "column": 1, "line": 1, "offset": 0 } }, "selector": "a b" }, { "raws": { "before": "\n\n", "between": " ", "after": "" }, "type": "rule", "nodes": [], "source": { "end": { "column": 15, "line": 3, "offset": 32 }, "start": { "column": 1, "line": 3, "offset": 17 } }, "selector": "a/* test */b" } ], "source": { "end": { "column": 16, "line": 3, "offset": 32 }, "start": { "column": 1, "line": 1, "offset": 0 } } } postcss-parser-tests-8.9.0/cases/semicolons.css000066400000000000000000000001241475246304500216520ustar00rootroot00000000000000a {;; color: black; ; ; } aaa{b:c;} a{b:cc}; a{b:c} ; @a bbbb; /* ^ */ postcss-parser-tests-8.9.0/cases/semicolons.json000066400000000000000000000107441475246304500220440ustar00rootroot00000000000000{ "raws": { "semicolon": true, "after": "" }, "type": "root", "nodes": [ { "raws": { "before": "", "between": " ", "semicolon": true, "after": "\n ; ;\n" }, "type": "rule", "nodes": [ { "raws": { "before": ";;\n ", "between": ": " }, "type": "decl", "source": { "end": { "column": 17, "line": 2, "offset": 23 }, "start": { "column": 5, "line": 2, "offset": 10 } }, "prop": "color", "value": "black" } ], "source": { "end": { "column": 1, "line": 4, "offset": 33 }, "start": { "column": 1, "line": 1, "offset": 0 } }, "selector": "a" }, { "raws": { "before": "\n\n", "between": "", "semicolon": true, "after": "" }, "type": "rule", "nodes": [ { "raws": { "before": "", "between": ":" }, "type": "decl", "source": { "end": { "column": 8, "line": 6, "offset": 43 }, "start": { "column": 5, "line": 6, "offset": 39 } }, "prop": "b", "value": "c" } ], "source": { "end": { "column": 9, "line": 6, "offset": 44 }, "start": { "column": 1, "line": 6, "offset": 35 } }, "selector": "aaa" }, { "raws": { "before": "\n", "between": "", "semicolon": false, "after": "", "ownSemicolon": ";" }, "type": "rule", "nodes": [ { "raws": { "before": "", "between": ":" }, "type": "decl", "source": { "end": { "column": 6, "line": 7, "offset": 51 }, "start": { "column": 3, "line": 7, "offset": 47 } }, "prop": "b", "value": "cc" } ], "source": { "end": { "column": 8, "line": 7, "offset": 53 }, "start": { "column": 1, "line": 7, "offset": 45 } }, "selector": "a" }, { "raws": { "before": "\n", "between": "", "semicolon": false, "after": "", "ownSemicolon": " ;" }, "type": "rule", "nodes": [ { "raws": { "before": "", "between": ":" }, "type": "decl", "source": { "end": { "column": 5, "line": 8, "offset": 59 }, "start": { "column": 3, "line": 8, "offset": 56 } }, "prop": "b", "value": "c" } ], "source": { "end": { "column": 8, "line": 8, "offset": 63 }, "start": { "column": 1, "line": 8, "offset": 54 } }, "selector": "a" }, { "raws": { "before": "\n", "between": "", "afterName": " " }, "type": "atrule", "name": "a", "source": { "end": { "column": 8, "line": 9, "offset": 71 }, "start": { "column": 1, "line": 9, "offset": 63 } }, "params": "bbbb" }, { "raws": { "before": "\n", "left": " ", "right": " " }, "type": "comment", "source": { "end": { "column": 11, "line": 10, "offset": 83 }, "start": { "column": 1, "line": 10, "offset": 72 } }, "text": "^" } ], "source": { "end": { "column": 12, "line": 10, "offset": 83 }, "start": { "column": 1, "line": 1, "offset": 0 } } } postcss-parser-tests-8.9.0/cases/spaces.json000066400000000000000000000003601475246304500211400ustar00rootroot00000000000000{ "raws": { "after": " \n" }, "type": "root", "nodes": [], "source": { "end": { "column": 1, "line": 2, "offset": 2 }, "start": { "column": 1, "line": 1, "offset": 0 } } } postcss-parser-tests-8.9.0/cases/tab.css000066400000000000000000000000241475246304500202440ustar00rootroot00000000000000a { color: black } postcss-parser-tests-8.9.0/cases/tab.json000066400000000000000000000021661475246304500204360ustar00rootroot00000000000000{ "raws": { "semicolon": false, "after": "" }, "type": "root", "nodes": [ { "raws": { "before": "", "between": " ", "semicolon": false, "after": "\n" }, "type": "rule", "nodes": [ { "raws": { "before": "\n\t", "between": ": " }, "type": "decl", "source": { "end": { "column": 13, "line": 2, "offset": 17 }, "start": { "column": 2, "line": 2, "offset": 5 } }, "prop": "color", "value": "black" } ], "source": { "end": { "column": 1, "line": 3, "offset": 19 }, "start": { "column": 1, "line": 1, "offset": 0 } }, "selector": "a" } ], "source": { "end": { "column": 2, "line": 3, "offset": 19 }, "start": { "column": 1, "line": 1, "offset": 0 } } } postcss-parser-tests-8.9.0/each-test.js000066400000000000000000000011541475246304500201060ustar00rootroot00000000000000let { readdirSync, readFileSync } = require('node:fs') let { basename, extname, join } = require('node:path') let extra = require('./extra-cases') function read(file) { return readFileSync(join(__dirname, 'cases', file)) } module.exports = function eachTest(callback) { readdirSync(join(__dirname, 'cases')).forEach(i => { if (extname(i) !== '.json') return let json = JSON.parse(read(i).toString().trim()) let name = basename(i, '.json') let css = extra[name] if (!css) { css = read(name + '.css') .toString() .trim() } callback(name + '.css', css, json) }) } postcss-parser-tests-8.9.0/eslint.config.mjs000066400000000000000000000002721475246304500211500ustar00rootroot00000000000000import loguxTsConfig from '@logux/eslint-config/ts' export default [ ...loguxTsConfig, { files: ['test/update.js'], rules: { 'n/no-missing-require': 'off' } } ] postcss-parser-tests-8.9.0/extra-cases.json000066400000000000000000000000571475246304500210060ustar00rootroot00000000000000{ "spaces": " \n", "bom": "\uFEFFa{}" } postcss-parser-tests-8.9.0/get.js000066400000000000000000000032751475246304500170160ustar00rootroot00000000000000let https = require('node:https') let zlib = require('node:zlib') let pico = require('picocolors') function showError(url, message) { process.stderr.write( '\n' + pico.red(url) + '\n' + pico.bgRed(' Request error ') + ' ' + message + '\n' ) process.exit(1) } function download(url, callback, errors = 0) { function onError(e) { if (errors > 2) showError(url, e.toString()) process.stderr.write(e.toString() + '\n') download(url, callback, errors + 1) } https .get( url, { headers: { 'accept-encoding': 'gzip,deflate' } }, res => { if (res.statusCode >= 300 && res.statusCode <= 399) { download(res.headers.location, callback, 0) } else if (res.statusCode >= 200 && res.statusCode <= 299) { callback(res) } else { showError(url, res.statusCode) } res.on('error', onError) } ) .on('error', onError) } module.exports = async function get(url) { return new Promise(resolve => { download(url, res => { let chunks = [] res.on('data', i => { chunks.push(i) }) res.on('end', () => { let buffer = Buffer.concat(chunks) if (res.headers['content-encoding'] === 'gzip') { zlib.gunzip(buffer, (err, decoded) => { if (err) throw err resolve(decoded.toString()) }) } else if (res.headers['content-encoding'] === 'deflate') { zlib.inflate(buffer, (err, decoded) => { if (err) throw err resolve(decoded.toString()) }) } else { resolve(buffer.toString()) } }) }) }) } postcss-parser-tests-8.9.0/index.d.ts000066400000000000000000000004441475246304500175750ustar00rootroot00000000000000export function jsonify(node: object): object export function testPath(name: string): string export function eachTest( callback: (name: string, css: string, json: object) => void ): void export function testOnReal( callback: (css: string) => { css: string }, extra: string[] ): void postcss-parser-tests-8.9.0/index.js000066400000000000000000000003301475246304500173330ustar00rootroot00000000000000let eachTest = require('./each-test') let jsonify = require('./jsonify') let testOnReal = require('./test-on-real') let testPath = require('./test-path') module.exports = { eachTest, jsonify, testOnReal, testPath } postcss-parser-tests-8.9.0/index.mjs000066400000000000000000000003161475246304500175140ustar00rootroot00000000000000import eachTest from './each-test.js' import jsonify from './jsonify.js' import testOnReal from './test-on-real.js' import testPath from './test-path.js' export { eachTest, jsonify, testOnReal, testPath } postcss-parser-tests-8.9.0/jsonify.js000066400000000000000000000006241475246304500177130ustar00rootroot00000000000000function clean(node) { if (node.source) { delete node.source.input delete node.source.inputId } delete node.inputs delete node.indexes delete node.lastEach delete node.rawCache if (node.nodes) node.nodes = node.nodes.map(clean) return node } module.exports = function jsonify(node) { let cleaned = clean(node.toJSON()) return JSON.parse(JSON.stringify(cleaned, null, 2)) } postcss-parser-tests-8.9.0/load.js000066400000000000000000000017041475246304500171510ustar00rootroot00000000000000let get = require('./get') function findLinks(html, url) { let files = html.match(/[^"]+\.css"|[^']\.css'/g) if (!files) { throw new Error("Can't find CSS links at " + url) } return files.map(i => { let path = i.slice(0, -1) if (/^https?:/.test(path)) { return path } else if (path.startsWith('//')) { return 'https:' + path } else { return path.replace(/^\.?\/?/, url) } }) } module.exports = async function load(succeed, urls, callback) { let used = new Set() await Promise.all( urls.map(async url => { used.add(url) if (url.endsWith('.css')) { callback(await get(url), url) } else { let files = findLinks(await get(url), url) succeed(url) await Promise.all( files.map(async file => { if (used.has(file)) return used.add(file) callback(await get(file), file) }) ) } }) ) } postcss-parser-tests-8.9.0/package.json000066400000000000000000000022621475246304500201620ustar00rootroot00000000000000{ "name": "postcss-parser-tests", "version": "8.9.0", "description": "Base tests for every PostCSS CSS parser", "keywords": [ "postcss", "parser", "css", "tests" ], "author": "Andrey Sitnik ", "license": "MIT", "repository": "postcss/postcss-parser-tests", "scripts": { "test:lint": "eslint .", "test:unit": "uvu . '\\.test\\.(ts|js)$'", "test": "pnpm run /^test:/" }, "funding": [ { "type": "opencollective", "url": "https://opencollective.com/postcss/" }, { "type": "github", "url": "https://github.com/sponsors/ai" } ], "dependencies": { "picocolors": "^1.1.1" }, "exports": { ".": { "require": "./index.js", "import": "./index.mjs" }, "./package.json": "./package.json" }, "devDependencies": { "@logux/eslint-config": "^53.5.1", "clean-publish": "^5.1.0", "eslint": "^9.20.0", "postcss": "^8.5.1", "typescript": "^5.7.3", "uvu": "^0.5.6" }, "prettier": { "arrowParens": "avoid", "jsxSingleQuote": false, "quoteProps": "consistent", "semi": false, "singleQuote": true, "trailingComma": "none" } } postcss-parser-tests-8.9.0/pnpm-lock.yaml000066400000000000000000002302551475246304500204650ustar00rootroot00000000000000lockfileVersion: '9.0' settings: autoInstallPeers: true excludeLinksFromLockfile: false importers: .: dependencies: picocolors: specifier: ^1.1.1 version: 1.1.1 devDependencies: '@logux/eslint-config': specifier: ^53.5.1 version: 53.5.1(@typescript-eslint/parser@8.24.0(eslint@9.20.0)(typescript@5.7.3))(eslint@9.20.0)(typescript@5.7.3) clean-publish: specifier: ^5.1.0 version: 5.1.0 eslint: specifier: ^9.20.0 version: 9.20.0 postcss: specifier: ^8.5.1 version: 8.5.1 typescript: specifier: ^5.7.3 version: 5.7.3 uvu: specifier: ^0.5.6 version: 0.5.6 packages: '@eslint-community/eslint-utils@4.4.1': resolution: {integrity: sha512-s3O3waFUrMV8P/XaF/+ZTp1X9XBZW1a4B97ZnjQF2KYWaFD2A8KyFBsrsfSjEmjn3RGWAIuvlneuZm3CUK3jbA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 '@eslint-community/regexpp@4.12.1': resolution: {integrity: sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==} engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} '@eslint/config-array@0.19.2': resolution: {integrity: sha512-GNKqxfHG2ySmJOBSHg7LxeUx4xpuCoFjacmlCoYWEbaPXLwvfIjixRI12xCQZeULksQb23uiA8F40w5TojpV7w==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@eslint/core@0.10.0': resolution: {integrity: sha512-gFHJ+xBOo4G3WRlR1e/3G8A6/KZAH6zcE/hkLRCZTi/B9avAG365QhFA8uOGzTMqgTghpn7/fSnscW++dpMSAw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@eslint/core@0.11.0': resolution: {integrity: sha512-DWUB2pksgNEb6Bz2fggIy1wh6fGgZP4Xyy/Mt0QZPiloKKXerbqq9D3SBQTlCRYOrcRPu4vuz+CGjwdfqxnoWA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@eslint/eslintrc@3.2.0': resolution: {integrity: sha512-grOjVNN8P3hjJn/eIETF1wwd12DdnwFDoyceUJLYYdkpbwq3nLi+4fqrTAONx7XDALqlL220wC/RHSC/QTI/0w==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@eslint/js@9.20.0': resolution: {integrity: sha512-iZA07H9io9Wn836aVTytRaNqh00Sad+EamwOVJT12GTLw1VGMFV/4JaME+JjLtr9fiGaoWgYnS54wrfWsSs4oQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@eslint/object-schema@2.1.6': resolution: {integrity: sha512-RBMg5FRL0I0gs51M/guSAj5/e14VQ4tpZnQNWwuDT66P14I43ItmPfIZRhO9fUVIPOAQXU47atlywZ/czoqFPA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@eslint/plugin-kit@0.2.5': resolution: {integrity: sha512-lB05FkqEdUg2AA0xEbUz0SnkXT1LcCTa438W4IWTUh4hdOnVbQyOJ81OrDXsJk/LSiJHubgGEFoR5EHq1NsH1A==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@humanfs/core@0.19.1': resolution: {integrity: sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==} engines: {node: '>=18.18.0'} '@humanfs/node@0.16.6': resolution: {integrity: sha512-YuI2ZHQL78Q5HbhDiBA1X4LmYdXCKCMQIfw0pw7piHJwyREFebJUvrQN4cMssyES6x+vfUbx1CIpaQUKYdQZOw==} engines: {node: '>=18.18.0'} '@humanwhocodes/module-importer@1.0.1': resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} engines: {node: '>=12.22'} '@humanwhocodes/retry@0.3.1': resolution: {integrity: sha512-JBxkERygn7Bv/GbN5Rv8Ul6LVknS+5Bp6RgDC/O8gEBU/yeH5Ui5C/OlWrTb6qct7LjjfT6Re2NxB0ln0yYybA==} engines: {node: '>=18.18'} '@humanwhocodes/retry@0.4.1': resolution: {integrity: sha512-c7hNEllBlenFTHBky65mhq8WD2kbN9Q6gk0bTk8lSBvc554jpXSkST1iePudpt7+A/AQvuHs9EMqjHDXMY1lrA==} engines: {node: '>=18.18'} '@logux/eslint-config@53.5.1': resolution: {integrity: sha512-rw8NxhTWPcqBTenTrKhuLwq4vpecogq+cw7g0q9/QTbj+Waj2POZMuhS7Dn9UoXkmJ5r5n1gdyURHKZsB8MOLg==} engines: {node: '>=18.0.0'} peerDependencies: eslint: ^8.57.0 || ^9.0.0 eslint-plugin-svelte: ^2.35.1 svelte: ^4.2.12 || ^5.0.0 peerDependenciesMeta: eslint-plugin-svelte: optional: true svelte: optional: true '@nodelib/fs.scandir@2.1.5': resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} engines: {node: '>= 8'} '@nodelib/fs.stat@2.0.5': resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} engines: {node: '>= 8'} '@nodelib/fs.walk@1.2.8': resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} engines: {node: '>= 8'} '@rtsao/scc@1.1.0': resolution: {integrity: sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==} '@types/estree@1.0.6': resolution: {integrity: sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==} '@types/json-schema@7.0.15': resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} '@types/json5@0.0.29': resolution: {integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==} '@typescript-eslint/eslint-plugin@8.24.0': resolution: {integrity: sha512-aFcXEJJCI4gUdXgoo/j9udUYIHgF23MFkg09LFz2dzEmU0+1Plk4rQWv/IYKvPHAtlkkGoB3m5e6oUp+JPsNaQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: '@typescript-eslint/parser': ^8.0.0 || ^8.0.0-alpha.0 eslint: ^8.57.0 || ^9.0.0 typescript: '>=4.8.4 <5.8.0' '@typescript-eslint/parser@8.24.0': resolution: {integrity: sha512-MFDaO9CYiard9j9VepMNa9MTcqVvSny2N4hkY6roquzj8pdCBRENhErrteaQuu7Yjn1ppk0v1/ZF9CG3KIlrTA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 typescript: '>=4.8.4 <5.8.0' '@typescript-eslint/scope-manager@8.24.0': resolution: {integrity: sha512-HZIX0UByphEtdVBKaQBgTDdn9z16l4aTUz8e8zPQnyxwHBtf5vtl1L+OhH+m1FGV9DrRmoDuYKqzVrvWDcDozw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@typescript-eslint/type-utils@8.24.0': resolution: {integrity: sha512-8fitJudrnY8aq0F1wMiPM1UUgiXQRJ5i8tFjq9kGfRajU+dbPyOuHbl0qRopLEidy0MwqgTHDt6CnSeXanNIwA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 typescript: '>=4.8.4 <5.8.0' '@typescript-eslint/types@8.24.0': resolution: {integrity: sha512-VacJCBTyje7HGAw7xp11q439A+zeGG0p0/p2zsZwpnMzjPB5WteaWqt4g2iysgGFafrqvyLWqq6ZPZAOCoefCw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@typescript-eslint/typescript-estree@8.24.0': resolution: {integrity: sha512-ITjYcP0+8kbsvT9bysygfIfb+hBj6koDsu37JZG7xrCiy3fPJyNmfVtaGsgTUSEuTzcvME5YI5uyL5LD1EV5ZQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '>=4.8.4 <5.8.0' '@typescript-eslint/utils@8.24.0': resolution: {integrity: sha512-07rLuUBElvvEb1ICnafYWr4hk8/U7X9RDCOqd9JcAMtjh/9oRmcfN4yGzbPVirgMR0+HLVHehmu19CWeh7fsmQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 typescript: '>=4.8.4 <5.8.0' '@typescript-eslint/visitor-keys@8.24.0': resolution: {integrity: sha512-kArLq83QxGLbuHrTMoOEWO+l2MwsNS2TGISEdx8xgqpkbytB07XmlQyQdNDrCc1ecSqx0cnmhGvpX+VBwqqSkg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} acorn-jsx@5.3.2: resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} peerDependencies: acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 acorn@8.14.0: resolution: {integrity: sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==} engines: {node: '>=0.4.0'} hasBin: true ajv@6.12.6: resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} ansi-styles@4.3.0: resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} engines: {node: '>=8'} argparse@2.0.1: resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} array-buffer-byte-length@1.0.2: resolution: {integrity: sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==} engines: {node: '>= 0.4'} array-includes@3.1.8: resolution: {integrity: sha512-itaWrbYbqpGXkGhZPGUulwnhVf5Hpy1xiCFsGqyIGglbBxmG5vSjxQen3/WGOjPpNEv1RtBLKxbmVXm8HpJStQ==} engines: {node: '>= 0.4'} array.prototype.findlastindex@1.2.5: resolution: {integrity: sha512-zfETvRFA8o7EiNn++N5f/kaCw221hrpGsDmcpndVupkPzEc1Wuf3VgC0qby1BbHs7f5DVYjgtEU2LLh5bqeGfQ==} engines: {node: '>= 0.4'} array.prototype.flat@1.3.3: resolution: {integrity: sha512-rwG/ja1neyLqCuGZ5YYrznA62D4mZXg0i1cIskIUKSiqF3Cje9/wXAls9B9s1Wa2fomMsIv8czB8jZcPmxCXFg==} engines: {node: '>= 0.4'} array.prototype.flatmap@1.3.3: resolution: {integrity: sha512-Y7Wt51eKJSyi80hFrJCePGGNo5ktJCslFuboqJsbf57CCPcm5zztluPlc4/aD8sWsKvlwatezpV4U1efk8kpjg==} engines: {node: '>= 0.4'} arraybuffer.prototype.slice@1.0.4: resolution: {integrity: sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==} engines: {node: '>= 0.4'} async-function@1.0.0: resolution: {integrity: sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA==} engines: {node: '>= 0.4'} available-typed-arrays@1.0.7: resolution: {integrity: sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==} engines: {node: '>= 0.4'} balanced-match@1.0.2: resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} brace-expansion@1.1.11: resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} brace-expansion@2.0.1: resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==} braces@3.0.3: resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} engines: {node: '>=8'} call-bind-apply-helpers@1.0.1: resolution: {integrity: sha512-BhYE+WDaywFg2TBWYNXAE+8B1ATnThNBqXHP5nQu0jWJdVvY2hvkpyB3qOmtmDePiS5/BDQ8wASEWGMWRG148g==} engines: {node: '>= 0.4'} call-bind@1.0.8: resolution: {integrity: sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==} engines: {node: '>= 0.4'} call-bound@1.0.3: resolution: {integrity: sha512-YTd+6wGlNlPxSuri7Y6X8tY2dmm12UMH66RpKMhiX6rsk5wXXnYgbUcOt8kiS31/AjfoTOvCsE+w8nZQLQnzHA==} engines: {node: '>= 0.4'} callsites@3.1.0: resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} engines: {node: '>=6'} chalk@4.1.2: resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} engines: {node: '>=10'} clean-publish@5.1.0: resolution: {integrity: sha512-Gbz8x7sL/sn0j+2B+yYEumD17WmPT6pHLN+A5nhcd0Sdh86EYblQleU+dUIICXVFalFMFBdW2aGynrVJ6k1u4Q==} engines: {node: '>= 18.0.0'} hasBin: true color-convert@2.0.1: resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} engines: {node: '>=7.0.0'} color-name@1.1.4: resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} concat-map@0.0.1: resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} cross-spawn@7.0.6: resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==} engines: {node: '>= 8'} data-view-buffer@1.0.2: resolution: {integrity: sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==} engines: {node: '>= 0.4'} data-view-byte-length@1.0.2: resolution: {integrity: sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ==} engines: {node: '>= 0.4'} data-view-byte-offset@1.0.1: resolution: {integrity: sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ==} engines: {node: '>= 0.4'} debug@3.2.7: resolution: {integrity: sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==} peerDependencies: supports-color: '*' peerDependenciesMeta: supports-color: optional: true debug@4.4.0: resolution: {integrity: sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==} engines: {node: '>=6.0'} peerDependencies: supports-color: '*' peerDependenciesMeta: supports-color: optional: true deep-is@0.1.4: resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} define-data-property@1.1.4: resolution: {integrity: sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==} engines: {node: '>= 0.4'} define-properties@1.2.1: resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==} engines: {node: '>= 0.4'} dequal@2.0.3: resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==} engines: {node: '>=6'} diff@5.2.0: resolution: {integrity: sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==} engines: {node: '>=0.3.1'} doctrine@2.1.0: resolution: {integrity: sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==} engines: {node: '>=0.10.0'} dunder-proto@1.0.1: resolution: {integrity: sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==} engines: {node: '>= 0.4'} enhanced-resolve@5.18.1: resolution: {integrity: sha512-ZSW3ma5GkcQBIpwZTSRAI8N71Uuwgs93IezB7mf7R60tC8ZbJideoDNKjHn2O9KIlx6rkGTTEk1xUCK2E1Y2Yg==} engines: {node: '>=10.13.0'} es-abstract@1.23.9: resolution: {integrity: sha512-py07lI0wjxAC/DcfK1S6G7iANonniZwTISvdPzk9hzeH0IZIshbuuFxLIU96OyF89Yb9hiqWn8M/bY83KY5vzA==} engines: {node: '>= 0.4'} es-define-property@1.0.1: resolution: {integrity: sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==} engines: {node: '>= 0.4'} es-errors@1.3.0: resolution: {integrity: sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==} engines: {node: '>= 0.4'} es-object-atoms@1.1.1: resolution: {integrity: sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==} engines: {node: '>= 0.4'} es-set-tostringtag@2.1.0: resolution: {integrity: sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==} engines: {node: '>= 0.4'} es-shim-unscopables@1.0.2: resolution: {integrity: sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==} es-to-primitive@1.3.0: resolution: {integrity: sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==} engines: {node: '>= 0.4'} escape-string-regexp@4.0.0: resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} engines: {node: '>=10'} eslint-compat-utils@0.5.1: resolution: {integrity: sha512-3z3vFexKIEnjHE3zCMRo6fn/e44U7T1khUjg+Hp0ZQMCigh28rALD0nPFBcGZuiLC5rLZa2ubQHDRln09JfU2Q==} engines: {node: '>=12'} peerDependencies: eslint: '>=6.0.0' eslint-config-standard@17.1.0: resolution: {integrity: sha512-IwHwmaBNtDK4zDHQukFDW5u/aTb8+meQWZvNFWkiGmbWjD6bqyuSSBxxXKkCftCUzc1zwCH2m/baCNDLGmuO5Q==} engines: {node: '>=12.0.0'} peerDependencies: eslint: ^8.0.1 eslint-plugin-import: ^2.25.2 eslint-plugin-n: '^15.0.0 || ^16.0.0 ' eslint-plugin-promise: ^6.0.0 eslint-import-resolver-node@0.3.9: resolution: {integrity: sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==} eslint-module-utils@2.12.0: resolution: {integrity: sha512-wALZ0HFoytlyh/1+4wuZ9FJCD/leWHQzzrxJ8+rebyReSLk7LApMyd3WJaLVoN+D5+WIdJyDK1c6JnE65V4Zyg==} engines: {node: '>=4'} peerDependencies: '@typescript-eslint/parser': '*' eslint: '*' eslint-import-resolver-node: '*' eslint-import-resolver-typescript: '*' eslint-import-resolver-webpack: '*' peerDependenciesMeta: '@typescript-eslint/parser': optional: true eslint: optional: true eslint-import-resolver-node: optional: true eslint-import-resolver-typescript: optional: true eslint-import-resolver-webpack: optional: true eslint-plugin-es-x@7.8.0: resolution: {integrity: sha512-7Ds8+wAAoV3T+LAKeu39Y5BzXCrGKrcISfgKEqTS4BDN8SFEDQd0S43jiQ8vIa3wUKD07qitZdfzlenSi8/0qQ==} engines: {node: ^14.18.0 || >=16.0.0} peerDependencies: eslint: '>=8' eslint-plugin-import@2.31.0: resolution: {integrity: sha512-ixmkI62Rbc2/w8Vfxyh1jQRTdRTF52VxwRVHl/ykPAmqG+Nb7/kNn+byLP0LxPgI7zWA16Jt82SybJInmMia3A==} engines: {node: '>=4'} peerDependencies: '@typescript-eslint/parser': '*' eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 || ^9 peerDependenciesMeta: '@typescript-eslint/parser': optional: true eslint-plugin-n@17.15.1: resolution: {integrity: sha512-KFw7x02hZZkBdbZEFQduRGH4VkIH4MW97ClsbAM4Y4E6KguBJWGfWG1P4HEIpZk2bkoWf0bojpnjNAhYQP8beA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: '>=8.23.0' eslint-plugin-perfectionist@3.9.1: resolution: {integrity: sha512-9WRzf6XaAxF4Oi5t/3TqKP5zUjERhasHmLFHin2Yw6ZAp/EP/EVA2dr3BhQrrHWCm5SzTMZf0FcjDnBkO2xFkA==} engines: {node: ^18.0.0 || >=20.0.0} peerDependencies: astro-eslint-parser: ^1.0.2 eslint: '>=8.0.0' svelte: '>=3.0.0' svelte-eslint-parser: ^0.41.1 vue-eslint-parser: '>=9.0.0' peerDependenciesMeta: astro-eslint-parser: optional: true svelte: optional: true svelte-eslint-parser: optional: true vue-eslint-parser: optional: true eslint-plugin-prefer-let@4.0.0: resolution: {integrity: sha512-X4ep5PMO1320HKaNC9DM5+p6XvOhwv+RcqGjhv3aiw9iAtHhiFtdIUB5l0Zya0iM22ys2BGKzrNI9Xpw/ZHooQ==} engines: {node: '>=0.10.0'} eslint-plugin-promise@7.2.1: resolution: {integrity: sha512-SWKjd+EuvWkYaS+uN2csvj0KoP43YTu7+phKQ5v+xw6+A0gutVX2yqCeCkC3uLCJFiPfR2dD8Es5L7yUsmvEaA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^7.0.0 || ^8.0.0 || ^9.0.0 eslint-scope@8.2.0: resolution: {integrity: sha512-PHlWUfG6lvPc3yvP5A4PNyBL1W8fkDUccmI21JUu/+GKZBoH/W5u6usENXUrWFRsyoW5ACUjFGgAFQp5gUlb/A==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} eslint-visitor-keys@3.4.3: resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} eslint-visitor-keys@4.2.0: resolution: {integrity: sha512-UyLnSehNt62FFhSwjZlHmeokpRK59rcz29j+F1/aDgbkbRTk7wIc9XzdoasMUbRNKDM0qQt/+BJ4BrpFeABemw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} eslint@9.20.0: resolution: {integrity: sha512-aL4F8167Hg4IvsW89ejnpTwx+B/UQRzJPGgbIOl+4XqffWsahVVsLEWoZvnrVuwpWmnRd7XeXmQI1zlKcFDteA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} hasBin: true peerDependencies: jiti: '*' peerDependenciesMeta: jiti: optional: true espree@10.3.0: resolution: {integrity: sha512-0QYC8b24HWY8zjRnDTL6RiHfDbAWn63qb4LMj1Z4b076A4une81+z03Kg7l7mn/48PUTqoLptSXez8oknU8Clg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} esquery@1.6.0: resolution: {integrity: sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==} engines: {node: '>=0.10'} esrecurse@4.3.0: resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==} engines: {node: '>=4.0'} estraverse@5.3.0: resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} engines: {node: '>=4.0'} esutils@2.0.3: resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} engines: {node: '>=0.10.0'} fast-deep-equal@3.1.3: resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} fast-glob@3.3.3: resolution: {integrity: sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==} engines: {node: '>=8.6.0'} fast-json-stable-stringify@2.1.0: resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} fast-levenshtein@2.0.6: resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} fastq@1.19.0: resolution: {integrity: sha512-7SFSRCNjBQIZH/xZR3iy5iQYR8aGBE0h3VG6/cwlbrpdciNYBMotQav8c1XI3HjHH+NikUpP53nPdlZSdWmFzA==} file-entry-cache@8.0.0: resolution: {integrity: sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==} engines: {node: '>=16.0.0'} fill-range@7.1.1: resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} engines: {node: '>=8'} find-up@5.0.0: resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} engines: {node: '>=10'} flat-cache@4.0.1: resolution: {integrity: sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==} engines: {node: '>=16'} flatted@3.3.2: resolution: {integrity: sha512-AiwGJM8YcNOaobumgtng+6NHuOqC3A7MixFeDafM3X9cIUM+xUXoS5Vfgf+OihAYe20fxqNM9yPBXJzRtZ/4eA==} for-each@0.3.4: resolution: {integrity: sha512-kKaIINnFpzW6ffJNDjjyjrk21BkDx38c0xa/klsT8VzLCaMEefv4ZTacrcVR4DmgTeBra++jMDAfS/tS799YDw==} engines: {node: '>= 0.4'} function-bind@1.1.2: resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} function.prototype.name@1.1.8: resolution: {integrity: sha512-e5iwyodOHhbMr/yNrc7fDYG4qlbIvI5gajyzPnb5TCwyhjApznQh1BMFou9b30SevY43gCJKXycoCBjMbsuW0Q==} engines: {node: '>= 0.4'} functions-have-names@1.2.3: resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==} get-intrinsic@1.2.7: resolution: {integrity: sha512-VW6Pxhsrk0KAOqs3WEd0klDiF/+V7gQOpAvY1jVU/LHmaD/kQO4523aiJuikX/QAKYiW6x8Jh+RJej1almdtCA==} engines: {node: '>= 0.4'} get-proto@1.0.1: resolution: {integrity: sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==} engines: {node: '>= 0.4'} get-symbol-description@1.1.0: resolution: {integrity: sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==} engines: {node: '>= 0.4'} get-tsconfig@4.10.0: resolution: {integrity: sha512-kGzZ3LWWQcGIAmg6iWvXn0ei6WDtV26wzHRMwDSzmAbcXrTEXxHy6IehI6/4eT6VRKyMP1eF1VqwrVUmE/LR7A==} glob-parent@5.1.2: resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} engines: {node: '>= 6'} glob-parent@6.0.2: resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} engines: {node: '>=10.13.0'} globals@14.0.0: resolution: {integrity: sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==} engines: {node: '>=18'} globals@15.14.0: resolution: {integrity: sha512-OkToC372DtlQeje9/zHIo5CT8lRP/FUgEOKBEhU4e0abL7J7CD24fD9ohiLN5hagG/kWCYj4K5oaxxtj2Z0Dig==} engines: {node: '>=18'} globalthis@1.0.4: resolution: {integrity: sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==} engines: {node: '>= 0.4'} gopd@1.2.0: resolution: {integrity: sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==} engines: {node: '>= 0.4'} graceful-fs@4.2.11: resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} graphemer@1.4.0: resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} has-bigints@1.1.0: resolution: {integrity: sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==} engines: {node: '>= 0.4'} has-flag@4.0.0: resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} engines: {node: '>=8'} has-property-descriptors@1.0.2: resolution: {integrity: sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==} has-proto@1.2.0: resolution: {integrity: sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==} engines: {node: '>= 0.4'} has-symbols@1.1.0: resolution: {integrity: sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==} engines: {node: '>= 0.4'} has-tostringtag@1.0.2: resolution: {integrity: sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==} engines: {node: '>= 0.4'} hasown@2.0.2: resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} engines: {node: '>= 0.4'} ignore@5.3.2: resolution: {integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==} engines: {node: '>= 4'} import-fresh@3.3.1: resolution: {integrity: sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==} engines: {node: '>=6'} imurmurhash@0.1.4: resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} engines: {node: '>=0.8.19'} internal-slot@1.1.0: resolution: {integrity: sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==} engines: {node: '>= 0.4'} is-array-buffer@3.0.5: resolution: {integrity: sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==} engines: {node: '>= 0.4'} is-async-function@2.1.1: resolution: {integrity: sha512-9dgM/cZBnNvjzaMYHVoxxfPj2QXt22Ev7SuuPrs+xav0ukGB0S6d4ydZdEiM48kLx5kDV+QBPrpVnFyefL8kkQ==} engines: {node: '>= 0.4'} is-bigint@1.1.0: resolution: {integrity: sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==} engines: {node: '>= 0.4'} is-boolean-object@1.2.2: resolution: {integrity: sha512-wa56o2/ElJMYqjCjGkXri7it5FbebW5usLw/nPmCMs5DeZ7eziSYZhSmPRn0txqeW4LnAmQQU7FgqLpsEFKM4A==} engines: {node: '>= 0.4'} is-callable@1.2.7: resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==} engines: {node: '>= 0.4'} is-core-module@2.16.1: resolution: {integrity: sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==} engines: {node: '>= 0.4'} is-data-view@1.0.2: resolution: {integrity: sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==} engines: {node: '>= 0.4'} is-date-object@1.1.0: resolution: {integrity: sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==} engines: {node: '>= 0.4'} is-extglob@2.1.1: resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} engines: {node: '>=0.10.0'} is-finalizationregistry@1.1.1: resolution: {integrity: sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg==} engines: {node: '>= 0.4'} is-generator-function@1.1.0: resolution: {integrity: sha512-nPUB5km40q9e8UfN/Zc24eLlzdSf9OfKByBw9CIdw4H1giPMeA0OIJvbchsCu4npfI2QcMVBsGEBHKZ7wLTWmQ==} engines: {node: '>= 0.4'} is-glob@4.0.3: resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} engines: {node: '>=0.10.0'} is-map@2.0.3: resolution: {integrity: sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==} engines: {node: '>= 0.4'} is-number-object@1.1.1: resolution: {integrity: sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==} engines: {node: '>= 0.4'} is-number@7.0.0: resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} engines: {node: '>=0.12.0'} is-regex@1.2.1: resolution: {integrity: sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==} engines: {node: '>= 0.4'} is-set@2.0.3: resolution: {integrity: sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==} engines: {node: '>= 0.4'} is-shared-array-buffer@1.0.4: resolution: {integrity: sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==} engines: {node: '>= 0.4'} is-string@1.1.1: resolution: {integrity: sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==} engines: {node: '>= 0.4'} is-symbol@1.1.1: resolution: {integrity: sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==} engines: {node: '>= 0.4'} is-typed-array@1.1.15: resolution: {integrity: sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==} engines: {node: '>= 0.4'} is-weakmap@2.0.2: resolution: {integrity: sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==} engines: {node: '>= 0.4'} is-weakref@1.1.1: resolution: {integrity: sha512-6i9mGWSlqzNMEqpCp93KwRS1uUOodk2OJ6b+sq7ZPDSy2WuI5NFIxp/254TytR8ftefexkWn5xNiHUNpPOfSew==} engines: {node: '>= 0.4'} is-weakset@2.0.4: resolution: {integrity: sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==} engines: {node: '>= 0.4'} isarray@2.0.5: resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==} isexe@2.0.0: resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} js-yaml@4.1.0: resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} hasBin: true json-buffer@3.0.1: resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} json-schema-traverse@0.4.1: resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} json-stable-stringify-without-jsonify@1.0.1: resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} json5@1.0.2: resolution: {integrity: sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==} hasBin: true keyv@4.5.4: resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} kleur@4.1.5: resolution: {integrity: sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==} engines: {node: '>=6'} levn@0.4.1: resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} engines: {node: '>= 0.8.0'} lilconfig@3.1.3: resolution: {integrity: sha512-/vlFKAoH5Cgt3Ie+JLhRbwOsCQePABiU3tJ1egGvyQ+33R/vcwM2Zl2QR/LzjsBeItPt3oSVXapn+m4nQDvpzw==} engines: {node: '>=14'} locate-path@6.0.0: resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} engines: {node: '>=10'} lodash.merge@4.6.2: resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} math-intrinsics@1.1.0: resolution: {integrity: sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==} engines: {node: '>= 0.4'} merge2@1.4.1: resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} engines: {node: '>= 8'} micromatch@4.0.8: resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==} engines: {node: '>=8.6'} minimatch@3.1.2: resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} minimatch@9.0.5: resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==} engines: {node: '>=16 || 14 >=14.17'} minimist@1.2.8: resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} mri@1.2.0: resolution: {integrity: sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==} engines: {node: '>=4'} ms@2.1.3: resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} nanoid@3.3.8: resolution: {integrity: sha512-WNLf5Sd8oZxOm+TzppcYk8gVOgP+l58xNy58D0nbUnOxOWRWvlcCV4kUF7ltmI6PsrLl/BgKEyS4mqsGChFN0w==} engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} hasBin: true natural-compare-lite@1.4.0: resolution: {integrity: sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==} natural-compare@1.4.0: resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} object-inspect@1.13.4: resolution: {integrity: sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==} engines: {node: '>= 0.4'} object-keys@1.1.1: resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==} engines: {node: '>= 0.4'} object.assign@4.1.7: resolution: {integrity: sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==} engines: {node: '>= 0.4'} object.fromentries@2.0.8: resolution: {integrity: sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==} engines: {node: '>= 0.4'} object.groupby@1.0.3: resolution: {integrity: sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ==} engines: {node: '>= 0.4'} object.values@1.2.1: resolution: {integrity: sha512-gXah6aZrcUxjWg2zR2MwouP2eHlCBzdV4pygudehaKXSGW4v2AsRQUK+lwwXhii6KFZcunEnmSUoYp5CXibxtA==} engines: {node: '>= 0.4'} optionator@0.9.4: resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==} engines: {node: '>= 0.8.0'} own-keys@1.0.1: resolution: {integrity: sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg==} engines: {node: '>= 0.4'} p-limit@3.1.0: resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} engines: {node: '>=10'} p-locate@5.0.0: resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} engines: {node: '>=10'} parent-module@1.0.1: resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} engines: {node: '>=6'} path-exists@4.0.0: resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} engines: {node: '>=8'} path-key@3.1.1: resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} engines: {node: '>=8'} path-parse@1.0.7: resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} picocolors@1.1.1: resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==} picomatch@2.3.1: resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} engines: {node: '>=8.6'} possible-typed-array-names@1.1.0: resolution: {integrity: sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==} engines: {node: '>= 0.4'} postcss@8.5.1: resolution: {integrity: sha512-6oz2beyjc5VMn/KV1pPw8fliQkhBXrVn1Z3TVyqZxU8kZpzEKhBdmCFqI6ZbmGtamQvQGuU1sgPTk8ZrXDD7jQ==} engines: {node: ^10 || ^12 || >=14} prelude-ls@1.2.1: resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} engines: {node: '>= 0.8.0'} punycode@2.3.1: resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} engines: {node: '>=6'} queue-microtask@1.2.3: resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} reflect.getprototypeof@1.0.10: resolution: {integrity: sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==} engines: {node: '>= 0.4'} regexp.prototype.flags@1.5.4: resolution: {integrity: sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==} engines: {node: '>= 0.4'} requireindex@1.2.0: resolution: {integrity: sha512-L9jEkOi3ASd9PYit2cwRfyppc9NoABujTP8/5gFcbERmo5jUoAKovIC3fsF17pkTnGsrByysqX+Kxd2OTNI1ww==} engines: {node: '>=0.10.5'} resolve-from@4.0.0: resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} engines: {node: '>=4'} resolve-pkg-maps@1.0.0: resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==} resolve@1.22.10: resolution: {integrity: sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w==} engines: {node: '>= 0.4'} hasBin: true reusify@1.0.4: resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} engines: {iojs: '>=1.0.0', node: '>=0.10.0'} run-parallel@1.2.0: resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} sade@1.8.1: resolution: {integrity: sha512-xal3CZX1Xlo/k4ApwCFrHVACi9fBqJ7V+mwhBsuf/1IOKbBy098Fex+Wa/5QMubw09pSZ/u8EY8PWgevJsXp1A==} engines: {node: '>=6'} safe-array-concat@1.1.3: resolution: {integrity: sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q==} engines: {node: '>=0.4'} safe-push-apply@1.0.0: resolution: {integrity: sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA==} engines: {node: '>= 0.4'} safe-regex-test@1.1.0: resolution: {integrity: sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==} engines: {node: '>= 0.4'} semver@6.3.1: resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} hasBin: true semver@7.7.1: resolution: {integrity: sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==} engines: {node: '>=10'} hasBin: true set-function-length@1.2.2: resolution: {integrity: sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==} engines: {node: '>= 0.4'} set-function-name@2.0.2: resolution: {integrity: sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==} engines: {node: '>= 0.4'} set-proto@1.0.0: resolution: {integrity: sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==} engines: {node: '>= 0.4'} shebang-command@2.0.0: resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} engines: {node: '>=8'} shebang-regex@3.0.0: resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} engines: {node: '>=8'} side-channel-list@1.0.0: resolution: {integrity: sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==} engines: {node: '>= 0.4'} side-channel-map@1.0.1: resolution: {integrity: sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==} engines: {node: '>= 0.4'} side-channel-weakmap@1.0.2: resolution: {integrity: sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==} engines: {node: '>= 0.4'} side-channel@1.1.0: resolution: {integrity: sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==} engines: {node: '>= 0.4'} source-map-js@1.2.1: resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==} engines: {node: '>=0.10.0'} string.prototype.trim@1.2.10: resolution: {integrity: sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA==} engines: {node: '>= 0.4'} string.prototype.trimend@1.0.9: resolution: {integrity: sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ==} engines: {node: '>= 0.4'} string.prototype.trimstart@1.0.8: resolution: {integrity: sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==} engines: {node: '>= 0.4'} strip-bom@3.0.0: resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==} engines: {node: '>=4'} strip-json-comments@3.1.1: resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} engines: {node: '>=8'} supports-color@7.2.0: resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} engines: {node: '>=8'} supports-preserve-symlinks-flag@1.0.0: resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} engines: {node: '>= 0.4'} tapable@2.2.1: resolution: {integrity: sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==} engines: {node: '>=6'} to-regex-range@5.0.1: resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} engines: {node: '>=8.0'} ts-api-utils@2.0.1: resolution: {integrity: sha512-dnlgjFSVetynI8nzgJ+qF62efpglpWRk8isUEWZGWlJYySCTD6aKvbUDu+zbPeDakk3bg5H4XpitHukgfL1m9w==} engines: {node: '>=18.12'} peerDependencies: typescript: '>=4.8.4' tsconfig-paths@3.15.0: resolution: {integrity: sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==} type-check@0.4.0: resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} engines: {node: '>= 0.8.0'} typed-array-buffer@1.0.3: resolution: {integrity: sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==} engines: {node: '>= 0.4'} typed-array-byte-length@1.0.3: resolution: {integrity: sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg==} engines: {node: '>= 0.4'} typed-array-byte-offset@1.0.4: resolution: {integrity: sha512-bTlAFB/FBYMcuX81gbL4OcpH5PmlFHqlCCpAl8AlEzMz5k53oNDvN8p1PNOWLEmI2x4orp3raOFB51tv9X+MFQ==} engines: {node: '>= 0.4'} typed-array-length@1.0.7: resolution: {integrity: sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg==} engines: {node: '>= 0.4'} typescript-eslint@8.24.0: resolution: {integrity: sha512-/lmv4366en/qbB32Vz5+kCNZEMf6xYHwh1z48suBwZvAtnXKbP+YhGe8OLE2BqC67LMqKkCNLtjejdwsdW6uOQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 typescript: '>=4.8.4 <5.8.0' typescript@5.7.3: resolution: {integrity: sha512-84MVSjMEHP+FQRPy3pX9sTVV/INIex71s9TL2Gm5FG/WG1SqXeKyZ0k7/blY/4FdOzI12CBy1vGc4og/eus0fw==} engines: {node: '>=14.17'} hasBin: true unbox-primitive@1.1.0: resolution: {integrity: sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==} engines: {node: '>= 0.4'} uri-js@4.4.1: resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} uvu@0.5.6: resolution: {integrity: sha512-+g8ENReyr8YsOc6fv/NVJs2vFdHBnBNdfE49rshrTzDWOlUx4Gq7KOS2GD8eqhy2j+Ejq29+SbKH8yjkAqXqoA==} engines: {node: '>=8'} hasBin: true which-boxed-primitive@1.1.1: resolution: {integrity: sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==} engines: {node: '>= 0.4'} which-builtin-type@1.2.1: resolution: {integrity: sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==} engines: {node: '>= 0.4'} which-collection@1.0.2: resolution: {integrity: sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==} engines: {node: '>= 0.4'} which-typed-array@1.1.18: resolution: {integrity: sha512-qEcY+KJYlWyLH9vNbsr6/5j59AXk5ni5aakf8ldzBvGde6Iz4sxZGkJyWSAueTG7QhOvNRYb1lDdFmL5Td0QKA==} engines: {node: '>= 0.4'} which@2.0.2: resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} engines: {node: '>= 8'} hasBin: true word-wrap@1.2.5: resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==} engines: {node: '>=0.10.0'} yocto-queue@0.1.0: resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} engines: {node: '>=10'} snapshots: '@eslint-community/eslint-utils@4.4.1(eslint@9.20.0)': dependencies: eslint: 9.20.0 eslint-visitor-keys: 3.4.3 '@eslint-community/regexpp@4.12.1': {} '@eslint/config-array@0.19.2': dependencies: '@eslint/object-schema': 2.1.6 debug: 4.4.0 minimatch: 3.1.2 transitivePeerDependencies: - supports-color '@eslint/core@0.10.0': dependencies: '@types/json-schema': 7.0.15 '@eslint/core@0.11.0': dependencies: '@types/json-schema': 7.0.15 '@eslint/eslintrc@3.2.0': dependencies: ajv: 6.12.6 debug: 4.4.0 espree: 10.3.0 globals: 14.0.0 ignore: 5.3.2 import-fresh: 3.3.1 js-yaml: 4.1.0 minimatch: 3.1.2 strip-json-comments: 3.1.1 transitivePeerDependencies: - supports-color '@eslint/js@9.20.0': {} '@eslint/object-schema@2.1.6': {} '@eslint/plugin-kit@0.2.5': dependencies: '@eslint/core': 0.10.0 levn: 0.4.1 '@humanfs/core@0.19.1': {} '@humanfs/node@0.16.6': dependencies: '@humanfs/core': 0.19.1 '@humanwhocodes/retry': 0.3.1 '@humanwhocodes/module-importer@1.0.1': {} '@humanwhocodes/retry@0.3.1': {} '@humanwhocodes/retry@0.4.1': {} '@logux/eslint-config@53.5.1(@typescript-eslint/parser@8.24.0(eslint@9.20.0)(typescript@5.7.3))(eslint@9.20.0)(typescript@5.7.3)': dependencies: '@eslint/eslintrc': 3.2.0 eslint: 9.20.0 eslint-config-standard: 17.1.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.24.0(eslint@9.20.0)(typescript@5.7.3))(eslint@9.20.0))(eslint-plugin-n@17.15.1(eslint@9.20.0))(eslint-plugin-promise@7.2.1(eslint@9.20.0))(eslint@9.20.0) eslint-plugin-import: 2.31.0(@typescript-eslint/parser@8.24.0(eslint@9.20.0)(typescript@5.7.3))(eslint@9.20.0) eslint-plugin-n: 17.15.1(eslint@9.20.0) eslint-plugin-perfectionist: 3.9.1(eslint@9.20.0)(typescript@5.7.3) eslint-plugin-prefer-let: 4.0.0 eslint-plugin-promise: 7.2.1(eslint@9.20.0) typescript-eslint: 8.24.0(eslint@9.20.0)(typescript@5.7.3) transitivePeerDependencies: - '@typescript-eslint/parser' - astro-eslint-parser - eslint-import-resolver-typescript - eslint-import-resolver-webpack - supports-color - svelte-eslint-parser - typescript - vue-eslint-parser '@nodelib/fs.scandir@2.1.5': dependencies: '@nodelib/fs.stat': 2.0.5 run-parallel: 1.2.0 '@nodelib/fs.stat@2.0.5': {} '@nodelib/fs.walk@1.2.8': dependencies: '@nodelib/fs.scandir': 2.1.5 fastq: 1.19.0 '@rtsao/scc@1.1.0': {} '@types/estree@1.0.6': {} '@types/json-schema@7.0.15': {} '@types/json5@0.0.29': {} '@typescript-eslint/eslint-plugin@8.24.0(@typescript-eslint/parser@8.24.0(eslint@9.20.0)(typescript@5.7.3))(eslint@9.20.0)(typescript@5.7.3)': dependencies: '@eslint-community/regexpp': 4.12.1 '@typescript-eslint/parser': 8.24.0(eslint@9.20.0)(typescript@5.7.3) '@typescript-eslint/scope-manager': 8.24.0 '@typescript-eslint/type-utils': 8.24.0(eslint@9.20.0)(typescript@5.7.3) '@typescript-eslint/utils': 8.24.0(eslint@9.20.0)(typescript@5.7.3) '@typescript-eslint/visitor-keys': 8.24.0 eslint: 9.20.0 graphemer: 1.4.0 ignore: 5.3.2 natural-compare: 1.4.0 ts-api-utils: 2.0.1(typescript@5.7.3) typescript: 5.7.3 transitivePeerDependencies: - supports-color '@typescript-eslint/parser@8.24.0(eslint@9.20.0)(typescript@5.7.3)': dependencies: '@typescript-eslint/scope-manager': 8.24.0 '@typescript-eslint/types': 8.24.0 '@typescript-eslint/typescript-estree': 8.24.0(typescript@5.7.3) '@typescript-eslint/visitor-keys': 8.24.0 debug: 4.4.0 eslint: 9.20.0 typescript: 5.7.3 transitivePeerDependencies: - supports-color '@typescript-eslint/scope-manager@8.24.0': dependencies: '@typescript-eslint/types': 8.24.0 '@typescript-eslint/visitor-keys': 8.24.0 '@typescript-eslint/type-utils@8.24.0(eslint@9.20.0)(typescript@5.7.3)': dependencies: '@typescript-eslint/typescript-estree': 8.24.0(typescript@5.7.3) '@typescript-eslint/utils': 8.24.0(eslint@9.20.0)(typescript@5.7.3) debug: 4.4.0 eslint: 9.20.0 ts-api-utils: 2.0.1(typescript@5.7.3) typescript: 5.7.3 transitivePeerDependencies: - supports-color '@typescript-eslint/types@8.24.0': {} '@typescript-eslint/typescript-estree@8.24.0(typescript@5.7.3)': dependencies: '@typescript-eslint/types': 8.24.0 '@typescript-eslint/visitor-keys': 8.24.0 debug: 4.4.0 fast-glob: 3.3.3 is-glob: 4.0.3 minimatch: 9.0.5 semver: 7.7.1 ts-api-utils: 2.0.1(typescript@5.7.3) typescript: 5.7.3 transitivePeerDependencies: - supports-color '@typescript-eslint/utils@8.24.0(eslint@9.20.0)(typescript@5.7.3)': dependencies: '@eslint-community/eslint-utils': 4.4.1(eslint@9.20.0) '@typescript-eslint/scope-manager': 8.24.0 '@typescript-eslint/types': 8.24.0 '@typescript-eslint/typescript-estree': 8.24.0(typescript@5.7.3) eslint: 9.20.0 typescript: 5.7.3 transitivePeerDependencies: - supports-color '@typescript-eslint/visitor-keys@8.24.0': dependencies: '@typescript-eslint/types': 8.24.0 eslint-visitor-keys: 4.2.0 acorn-jsx@5.3.2(acorn@8.14.0): dependencies: acorn: 8.14.0 acorn@8.14.0: {} ajv@6.12.6: dependencies: fast-deep-equal: 3.1.3 fast-json-stable-stringify: 2.1.0 json-schema-traverse: 0.4.1 uri-js: 4.4.1 ansi-styles@4.3.0: dependencies: color-convert: 2.0.1 argparse@2.0.1: {} array-buffer-byte-length@1.0.2: dependencies: call-bound: 1.0.3 is-array-buffer: 3.0.5 array-includes@3.1.8: dependencies: call-bind: 1.0.8 define-properties: 1.2.1 es-abstract: 1.23.9 es-object-atoms: 1.1.1 get-intrinsic: 1.2.7 is-string: 1.1.1 array.prototype.findlastindex@1.2.5: dependencies: call-bind: 1.0.8 define-properties: 1.2.1 es-abstract: 1.23.9 es-errors: 1.3.0 es-object-atoms: 1.1.1 es-shim-unscopables: 1.0.2 array.prototype.flat@1.3.3: dependencies: call-bind: 1.0.8 define-properties: 1.2.1 es-abstract: 1.23.9 es-shim-unscopables: 1.0.2 array.prototype.flatmap@1.3.3: dependencies: call-bind: 1.0.8 define-properties: 1.2.1 es-abstract: 1.23.9 es-shim-unscopables: 1.0.2 arraybuffer.prototype.slice@1.0.4: dependencies: array-buffer-byte-length: 1.0.2 call-bind: 1.0.8 define-properties: 1.2.1 es-abstract: 1.23.9 es-errors: 1.3.0 get-intrinsic: 1.2.7 is-array-buffer: 3.0.5 async-function@1.0.0: {} available-typed-arrays@1.0.7: dependencies: possible-typed-array-names: 1.1.0 balanced-match@1.0.2: {} brace-expansion@1.1.11: dependencies: balanced-match: 1.0.2 concat-map: 0.0.1 brace-expansion@2.0.1: dependencies: balanced-match: 1.0.2 braces@3.0.3: dependencies: fill-range: 7.1.1 call-bind-apply-helpers@1.0.1: dependencies: es-errors: 1.3.0 function-bind: 1.1.2 call-bind@1.0.8: dependencies: call-bind-apply-helpers: 1.0.1 es-define-property: 1.0.1 get-intrinsic: 1.2.7 set-function-length: 1.2.2 call-bound@1.0.3: dependencies: call-bind-apply-helpers: 1.0.1 get-intrinsic: 1.2.7 callsites@3.1.0: {} chalk@4.1.2: dependencies: ansi-styles: 4.3.0 supports-color: 7.2.0 clean-publish@5.1.0: dependencies: cross-spawn: 7.0.6 fast-glob: 3.3.3 lilconfig: 3.1.3 micromatch: 4.0.8 color-convert@2.0.1: dependencies: color-name: 1.1.4 color-name@1.1.4: {} concat-map@0.0.1: {} cross-spawn@7.0.6: dependencies: path-key: 3.1.1 shebang-command: 2.0.0 which: 2.0.2 data-view-buffer@1.0.2: dependencies: call-bound: 1.0.3 es-errors: 1.3.0 is-data-view: 1.0.2 data-view-byte-length@1.0.2: dependencies: call-bound: 1.0.3 es-errors: 1.3.0 is-data-view: 1.0.2 data-view-byte-offset@1.0.1: dependencies: call-bound: 1.0.3 es-errors: 1.3.0 is-data-view: 1.0.2 debug@3.2.7: dependencies: ms: 2.1.3 debug@4.4.0: dependencies: ms: 2.1.3 deep-is@0.1.4: {} define-data-property@1.1.4: dependencies: es-define-property: 1.0.1 es-errors: 1.3.0 gopd: 1.2.0 define-properties@1.2.1: dependencies: define-data-property: 1.1.4 has-property-descriptors: 1.0.2 object-keys: 1.1.1 dequal@2.0.3: {} diff@5.2.0: {} doctrine@2.1.0: dependencies: esutils: 2.0.3 dunder-proto@1.0.1: dependencies: call-bind-apply-helpers: 1.0.1 es-errors: 1.3.0 gopd: 1.2.0 enhanced-resolve@5.18.1: dependencies: graceful-fs: 4.2.11 tapable: 2.2.1 es-abstract@1.23.9: dependencies: array-buffer-byte-length: 1.0.2 arraybuffer.prototype.slice: 1.0.4 available-typed-arrays: 1.0.7 call-bind: 1.0.8 call-bound: 1.0.3 data-view-buffer: 1.0.2 data-view-byte-length: 1.0.2 data-view-byte-offset: 1.0.1 es-define-property: 1.0.1 es-errors: 1.3.0 es-object-atoms: 1.1.1 es-set-tostringtag: 2.1.0 es-to-primitive: 1.3.0 function.prototype.name: 1.1.8 get-intrinsic: 1.2.7 get-proto: 1.0.1 get-symbol-description: 1.1.0 globalthis: 1.0.4 gopd: 1.2.0 has-property-descriptors: 1.0.2 has-proto: 1.2.0 has-symbols: 1.1.0 hasown: 2.0.2 internal-slot: 1.1.0 is-array-buffer: 3.0.5 is-callable: 1.2.7 is-data-view: 1.0.2 is-regex: 1.2.1 is-shared-array-buffer: 1.0.4 is-string: 1.1.1 is-typed-array: 1.1.15 is-weakref: 1.1.1 math-intrinsics: 1.1.0 object-inspect: 1.13.4 object-keys: 1.1.1 object.assign: 4.1.7 own-keys: 1.0.1 regexp.prototype.flags: 1.5.4 safe-array-concat: 1.1.3 safe-push-apply: 1.0.0 safe-regex-test: 1.1.0 set-proto: 1.0.0 string.prototype.trim: 1.2.10 string.prototype.trimend: 1.0.9 string.prototype.trimstart: 1.0.8 typed-array-buffer: 1.0.3 typed-array-byte-length: 1.0.3 typed-array-byte-offset: 1.0.4 typed-array-length: 1.0.7 unbox-primitive: 1.1.0 which-typed-array: 1.1.18 es-define-property@1.0.1: {} es-errors@1.3.0: {} es-object-atoms@1.1.1: dependencies: es-errors: 1.3.0 es-set-tostringtag@2.1.0: dependencies: es-errors: 1.3.0 get-intrinsic: 1.2.7 has-tostringtag: 1.0.2 hasown: 2.0.2 es-shim-unscopables@1.0.2: dependencies: hasown: 2.0.2 es-to-primitive@1.3.0: dependencies: is-callable: 1.2.7 is-date-object: 1.1.0 is-symbol: 1.1.1 escape-string-regexp@4.0.0: {} eslint-compat-utils@0.5.1(eslint@9.20.0): dependencies: eslint: 9.20.0 semver: 7.7.1 eslint-config-standard@17.1.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.24.0(eslint@9.20.0)(typescript@5.7.3))(eslint@9.20.0))(eslint-plugin-n@17.15.1(eslint@9.20.0))(eslint-plugin-promise@7.2.1(eslint@9.20.0))(eslint@9.20.0): dependencies: eslint: 9.20.0 eslint-plugin-import: 2.31.0(@typescript-eslint/parser@8.24.0(eslint@9.20.0)(typescript@5.7.3))(eslint@9.20.0) eslint-plugin-n: 17.15.1(eslint@9.20.0) eslint-plugin-promise: 7.2.1(eslint@9.20.0) eslint-import-resolver-node@0.3.9: dependencies: debug: 3.2.7 is-core-module: 2.16.1 resolve: 1.22.10 transitivePeerDependencies: - supports-color eslint-module-utils@2.12.0(@typescript-eslint/parser@8.24.0(eslint@9.20.0)(typescript@5.7.3))(eslint-import-resolver-node@0.3.9)(eslint@9.20.0): dependencies: debug: 3.2.7 optionalDependencies: '@typescript-eslint/parser': 8.24.0(eslint@9.20.0)(typescript@5.7.3) eslint: 9.20.0 eslint-import-resolver-node: 0.3.9 transitivePeerDependencies: - supports-color eslint-plugin-es-x@7.8.0(eslint@9.20.0): dependencies: '@eslint-community/eslint-utils': 4.4.1(eslint@9.20.0) '@eslint-community/regexpp': 4.12.1 eslint: 9.20.0 eslint-compat-utils: 0.5.1(eslint@9.20.0) eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.24.0(eslint@9.20.0)(typescript@5.7.3))(eslint@9.20.0): dependencies: '@rtsao/scc': 1.1.0 array-includes: 3.1.8 array.prototype.findlastindex: 1.2.5 array.prototype.flat: 1.3.3 array.prototype.flatmap: 1.3.3 debug: 3.2.7 doctrine: 2.1.0 eslint: 9.20.0 eslint-import-resolver-node: 0.3.9 eslint-module-utils: 2.12.0(@typescript-eslint/parser@8.24.0(eslint@9.20.0)(typescript@5.7.3))(eslint-import-resolver-node@0.3.9)(eslint@9.20.0) hasown: 2.0.2 is-core-module: 2.16.1 is-glob: 4.0.3 minimatch: 3.1.2 object.fromentries: 2.0.8 object.groupby: 1.0.3 object.values: 1.2.1 semver: 6.3.1 string.prototype.trimend: 1.0.9 tsconfig-paths: 3.15.0 optionalDependencies: '@typescript-eslint/parser': 8.24.0(eslint@9.20.0)(typescript@5.7.3) transitivePeerDependencies: - eslint-import-resolver-typescript - eslint-import-resolver-webpack - supports-color eslint-plugin-n@17.15.1(eslint@9.20.0): dependencies: '@eslint-community/eslint-utils': 4.4.1(eslint@9.20.0) enhanced-resolve: 5.18.1 eslint: 9.20.0 eslint-plugin-es-x: 7.8.0(eslint@9.20.0) get-tsconfig: 4.10.0 globals: 15.14.0 ignore: 5.3.2 minimatch: 9.0.5 semver: 7.7.1 eslint-plugin-perfectionist@3.9.1(eslint@9.20.0)(typescript@5.7.3): dependencies: '@typescript-eslint/types': 8.24.0 '@typescript-eslint/utils': 8.24.0(eslint@9.20.0)(typescript@5.7.3) eslint: 9.20.0 minimatch: 9.0.5 natural-compare-lite: 1.4.0 transitivePeerDependencies: - supports-color - typescript eslint-plugin-prefer-let@4.0.0: dependencies: requireindex: 1.2.0 eslint-plugin-promise@7.2.1(eslint@9.20.0): dependencies: '@eslint-community/eslint-utils': 4.4.1(eslint@9.20.0) eslint: 9.20.0 eslint-scope@8.2.0: dependencies: esrecurse: 4.3.0 estraverse: 5.3.0 eslint-visitor-keys@3.4.3: {} eslint-visitor-keys@4.2.0: {} eslint@9.20.0: dependencies: '@eslint-community/eslint-utils': 4.4.1(eslint@9.20.0) '@eslint-community/regexpp': 4.12.1 '@eslint/config-array': 0.19.2 '@eslint/core': 0.11.0 '@eslint/eslintrc': 3.2.0 '@eslint/js': 9.20.0 '@eslint/plugin-kit': 0.2.5 '@humanfs/node': 0.16.6 '@humanwhocodes/module-importer': 1.0.1 '@humanwhocodes/retry': 0.4.1 '@types/estree': 1.0.6 '@types/json-schema': 7.0.15 ajv: 6.12.6 chalk: 4.1.2 cross-spawn: 7.0.6 debug: 4.4.0 escape-string-regexp: 4.0.0 eslint-scope: 8.2.0 eslint-visitor-keys: 4.2.0 espree: 10.3.0 esquery: 1.6.0 esutils: 2.0.3 fast-deep-equal: 3.1.3 file-entry-cache: 8.0.0 find-up: 5.0.0 glob-parent: 6.0.2 ignore: 5.3.2 imurmurhash: 0.1.4 is-glob: 4.0.3 json-stable-stringify-without-jsonify: 1.0.1 lodash.merge: 4.6.2 minimatch: 3.1.2 natural-compare: 1.4.0 optionator: 0.9.4 transitivePeerDependencies: - supports-color espree@10.3.0: dependencies: acorn: 8.14.0 acorn-jsx: 5.3.2(acorn@8.14.0) eslint-visitor-keys: 4.2.0 esquery@1.6.0: dependencies: estraverse: 5.3.0 esrecurse@4.3.0: dependencies: estraverse: 5.3.0 estraverse@5.3.0: {} esutils@2.0.3: {} fast-deep-equal@3.1.3: {} fast-glob@3.3.3: dependencies: '@nodelib/fs.stat': 2.0.5 '@nodelib/fs.walk': 1.2.8 glob-parent: 5.1.2 merge2: 1.4.1 micromatch: 4.0.8 fast-json-stable-stringify@2.1.0: {} fast-levenshtein@2.0.6: {} fastq@1.19.0: dependencies: reusify: 1.0.4 file-entry-cache@8.0.0: dependencies: flat-cache: 4.0.1 fill-range@7.1.1: dependencies: to-regex-range: 5.0.1 find-up@5.0.0: dependencies: locate-path: 6.0.0 path-exists: 4.0.0 flat-cache@4.0.1: dependencies: flatted: 3.3.2 keyv: 4.5.4 flatted@3.3.2: {} for-each@0.3.4: dependencies: is-callable: 1.2.7 function-bind@1.1.2: {} function.prototype.name@1.1.8: dependencies: call-bind: 1.0.8 call-bound: 1.0.3 define-properties: 1.2.1 functions-have-names: 1.2.3 hasown: 2.0.2 is-callable: 1.2.7 functions-have-names@1.2.3: {} get-intrinsic@1.2.7: dependencies: call-bind-apply-helpers: 1.0.1 es-define-property: 1.0.1 es-errors: 1.3.0 es-object-atoms: 1.1.1 function-bind: 1.1.2 get-proto: 1.0.1 gopd: 1.2.0 has-symbols: 1.1.0 hasown: 2.0.2 math-intrinsics: 1.1.0 get-proto@1.0.1: dependencies: dunder-proto: 1.0.1 es-object-atoms: 1.1.1 get-symbol-description@1.1.0: dependencies: call-bound: 1.0.3 es-errors: 1.3.0 get-intrinsic: 1.2.7 get-tsconfig@4.10.0: dependencies: resolve-pkg-maps: 1.0.0 glob-parent@5.1.2: dependencies: is-glob: 4.0.3 glob-parent@6.0.2: dependencies: is-glob: 4.0.3 globals@14.0.0: {} globals@15.14.0: {} globalthis@1.0.4: dependencies: define-properties: 1.2.1 gopd: 1.2.0 gopd@1.2.0: {} graceful-fs@4.2.11: {} graphemer@1.4.0: {} has-bigints@1.1.0: {} has-flag@4.0.0: {} has-property-descriptors@1.0.2: dependencies: es-define-property: 1.0.1 has-proto@1.2.0: dependencies: dunder-proto: 1.0.1 has-symbols@1.1.0: {} has-tostringtag@1.0.2: dependencies: has-symbols: 1.1.0 hasown@2.0.2: dependencies: function-bind: 1.1.2 ignore@5.3.2: {} import-fresh@3.3.1: dependencies: parent-module: 1.0.1 resolve-from: 4.0.0 imurmurhash@0.1.4: {} internal-slot@1.1.0: dependencies: es-errors: 1.3.0 hasown: 2.0.2 side-channel: 1.1.0 is-array-buffer@3.0.5: dependencies: call-bind: 1.0.8 call-bound: 1.0.3 get-intrinsic: 1.2.7 is-async-function@2.1.1: dependencies: async-function: 1.0.0 call-bound: 1.0.3 get-proto: 1.0.1 has-tostringtag: 1.0.2 safe-regex-test: 1.1.0 is-bigint@1.1.0: dependencies: has-bigints: 1.1.0 is-boolean-object@1.2.2: dependencies: call-bound: 1.0.3 has-tostringtag: 1.0.2 is-callable@1.2.7: {} is-core-module@2.16.1: dependencies: hasown: 2.0.2 is-data-view@1.0.2: dependencies: call-bound: 1.0.3 get-intrinsic: 1.2.7 is-typed-array: 1.1.15 is-date-object@1.1.0: dependencies: call-bound: 1.0.3 has-tostringtag: 1.0.2 is-extglob@2.1.1: {} is-finalizationregistry@1.1.1: dependencies: call-bound: 1.0.3 is-generator-function@1.1.0: dependencies: call-bound: 1.0.3 get-proto: 1.0.1 has-tostringtag: 1.0.2 safe-regex-test: 1.1.0 is-glob@4.0.3: dependencies: is-extglob: 2.1.1 is-map@2.0.3: {} is-number-object@1.1.1: dependencies: call-bound: 1.0.3 has-tostringtag: 1.0.2 is-number@7.0.0: {} is-regex@1.2.1: dependencies: call-bound: 1.0.3 gopd: 1.2.0 has-tostringtag: 1.0.2 hasown: 2.0.2 is-set@2.0.3: {} is-shared-array-buffer@1.0.4: dependencies: call-bound: 1.0.3 is-string@1.1.1: dependencies: call-bound: 1.0.3 has-tostringtag: 1.0.2 is-symbol@1.1.1: dependencies: call-bound: 1.0.3 has-symbols: 1.1.0 safe-regex-test: 1.1.0 is-typed-array@1.1.15: dependencies: which-typed-array: 1.1.18 is-weakmap@2.0.2: {} is-weakref@1.1.1: dependencies: call-bound: 1.0.3 is-weakset@2.0.4: dependencies: call-bound: 1.0.3 get-intrinsic: 1.2.7 isarray@2.0.5: {} isexe@2.0.0: {} js-yaml@4.1.0: dependencies: argparse: 2.0.1 json-buffer@3.0.1: {} json-schema-traverse@0.4.1: {} json-stable-stringify-without-jsonify@1.0.1: {} json5@1.0.2: dependencies: minimist: 1.2.8 keyv@4.5.4: dependencies: json-buffer: 3.0.1 kleur@4.1.5: {} levn@0.4.1: dependencies: prelude-ls: 1.2.1 type-check: 0.4.0 lilconfig@3.1.3: {} locate-path@6.0.0: dependencies: p-locate: 5.0.0 lodash.merge@4.6.2: {} math-intrinsics@1.1.0: {} merge2@1.4.1: {} micromatch@4.0.8: dependencies: braces: 3.0.3 picomatch: 2.3.1 minimatch@3.1.2: dependencies: brace-expansion: 1.1.11 minimatch@9.0.5: dependencies: brace-expansion: 2.0.1 minimist@1.2.8: {} mri@1.2.0: {} ms@2.1.3: {} nanoid@3.3.8: {} natural-compare-lite@1.4.0: {} natural-compare@1.4.0: {} object-inspect@1.13.4: {} object-keys@1.1.1: {} object.assign@4.1.7: dependencies: call-bind: 1.0.8 call-bound: 1.0.3 define-properties: 1.2.1 es-object-atoms: 1.1.1 has-symbols: 1.1.0 object-keys: 1.1.1 object.fromentries@2.0.8: dependencies: call-bind: 1.0.8 define-properties: 1.2.1 es-abstract: 1.23.9 es-object-atoms: 1.1.1 object.groupby@1.0.3: dependencies: call-bind: 1.0.8 define-properties: 1.2.1 es-abstract: 1.23.9 object.values@1.2.1: dependencies: call-bind: 1.0.8 call-bound: 1.0.3 define-properties: 1.2.1 es-object-atoms: 1.1.1 optionator@0.9.4: dependencies: deep-is: 0.1.4 fast-levenshtein: 2.0.6 levn: 0.4.1 prelude-ls: 1.2.1 type-check: 0.4.0 word-wrap: 1.2.5 own-keys@1.0.1: dependencies: get-intrinsic: 1.2.7 object-keys: 1.1.1 safe-push-apply: 1.0.0 p-limit@3.1.0: dependencies: yocto-queue: 0.1.0 p-locate@5.0.0: dependencies: p-limit: 3.1.0 parent-module@1.0.1: dependencies: callsites: 3.1.0 path-exists@4.0.0: {} path-key@3.1.1: {} path-parse@1.0.7: {} picocolors@1.1.1: {} picomatch@2.3.1: {} possible-typed-array-names@1.1.0: {} postcss@8.5.1: dependencies: nanoid: 3.3.8 picocolors: 1.1.1 source-map-js: 1.2.1 prelude-ls@1.2.1: {} punycode@2.3.1: {} queue-microtask@1.2.3: {} reflect.getprototypeof@1.0.10: dependencies: call-bind: 1.0.8 define-properties: 1.2.1 es-abstract: 1.23.9 es-errors: 1.3.0 es-object-atoms: 1.1.1 get-intrinsic: 1.2.7 get-proto: 1.0.1 which-builtin-type: 1.2.1 regexp.prototype.flags@1.5.4: dependencies: call-bind: 1.0.8 define-properties: 1.2.1 es-errors: 1.3.0 get-proto: 1.0.1 gopd: 1.2.0 set-function-name: 2.0.2 requireindex@1.2.0: {} resolve-from@4.0.0: {} resolve-pkg-maps@1.0.0: {} resolve@1.22.10: dependencies: is-core-module: 2.16.1 path-parse: 1.0.7 supports-preserve-symlinks-flag: 1.0.0 reusify@1.0.4: {} run-parallel@1.2.0: dependencies: queue-microtask: 1.2.3 sade@1.8.1: dependencies: mri: 1.2.0 safe-array-concat@1.1.3: dependencies: call-bind: 1.0.8 call-bound: 1.0.3 get-intrinsic: 1.2.7 has-symbols: 1.1.0 isarray: 2.0.5 safe-push-apply@1.0.0: dependencies: es-errors: 1.3.0 isarray: 2.0.5 safe-regex-test@1.1.0: dependencies: call-bound: 1.0.3 es-errors: 1.3.0 is-regex: 1.2.1 semver@6.3.1: {} semver@7.7.1: {} set-function-length@1.2.2: dependencies: define-data-property: 1.1.4 es-errors: 1.3.0 function-bind: 1.1.2 get-intrinsic: 1.2.7 gopd: 1.2.0 has-property-descriptors: 1.0.2 set-function-name@2.0.2: dependencies: define-data-property: 1.1.4 es-errors: 1.3.0 functions-have-names: 1.2.3 has-property-descriptors: 1.0.2 set-proto@1.0.0: dependencies: dunder-proto: 1.0.1 es-errors: 1.3.0 es-object-atoms: 1.1.1 shebang-command@2.0.0: dependencies: shebang-regex: 3.0.0 shebang-regex@3.0.0: {} side-channel-list@1.0.0: dependencies: es-errors: 1.3.0 object-inspect: 1.13.4 side-channel-map@1.0.1: dependencies: call-bound: 1.0.3 es-errors: 1.3.0 get-intrinsic: 1.2.7 object-inspect: 1.13.4 side-channel-weakmap@1.0.2: dependencies: call-bound: 1.0.3 es-errors: 1.3.0 get-intrinsic: 1.2.7 object-inspect: 1.13.4 side-channel-map: 1.0.1 side-channel@1.1.0: dependencies: es-errors: 1.3.0 object-inspect: 1.13.4 side-channel-list: 1.0.0 side-channel-map: 1.0.1 side-channel-weakmap: 1.0.2 source-map-js@1.2.1: {} string.prototype.trim@1.2.10: dependencies: call-bind: 1.0.8 call-bound: 1.0.3 define-data-property: 1.1.4 define-properties: 1.2.1 es-abstract: 1.23.9 es-object-atoms: 1.1.1 has-property-descriptors: 1.0.2 string.prototype.trimend@1.0.9: dependencies: call-bind: 1.0.8 call-bound: 1.0.3 define-properties: 1.2.1 es-object-atoms: 1.1.1 string.prototype.trimstart@1.0.8: dependencies: call-bind: 1.0.8 define-properties: 1.2.1 es-object-atoms: 1.1.1 strip-bom@3.0.0: {} strip-json-comments@3.1.1: {} supports-color@7.2.0: dependencies: has-flag: 4.0.0 supports-preserve-symlinks-flag@1.0.0: {} tapable@2.2.1: {} to-regex-range@5.0.1: dependencies: is-number: 7.0.0 ts-api-utils@2.0.1(typescript@5.7.3): dependencies: typescript: 5.7.3 tsconfig-paths@3.15.0: dependencies: '@types/json5': 0.0.29 json5: 1.0.2 minimist: 1.2.8 strip-bom: 3.0.0 type-check@0.4.0: dependencies: prelude-ls: 1.2.1 typed-array-buffer@1.0.3: dependencies: call-bound: 1.0.3 es-errors: 1.3.0 is-typed-array: 1.1.15 typed-array-byte-length@1.0.3: dependencies: call-bind: 1.0.8 for-each: 0.3.4 gopd: 1.2.0 has-proto: 1.2.0 is-typed-array: 1.1.15 typed-array-byte-offset@1.0.4: dependencies: available-typed-arrays: 1.0.7 call-bind: 1.0.8 for-each: 0.3.4 gopd: 1.2.0 has-proto: 1.2.0 is-typed-array: 1.1.15 reflect.getprototypeof: 1.0.10 typed-array-length@1.0.7: dependencies: call-bind: 1.0.8 for-each: 0.3.4 gopd: 1.2.0 is-typed-array: 1.1.15 possible-typed-array-names: 1.1.0 reflect.getprototypeof: 1.0.10 typescript-eslint@8.24.0(eslint@9.20.0)(typescript@5.7.3): dependencies: '@typescript-eslint/eslint-plugin': 8.24.0(@typescript-eslint/parser@8.24.0(eslint@9.20.0)(typescript@5.7.3))(eslint@9.20.0)(typescript@5.7.3) '@typescript-eslint/parser': 8.24.0(eslint@9.20.0)(typescript@5.7.3) '@typescript-eslint/utils': 8.24.0(eslint@9.20.0)(typescript@5.7.3) eslint: 9.20.0 typescript: 5.7.3 transitivePeerDependencies: - supports-color typescript@5.7.3: {} unbox-primitive@1.1.0: dependencies: call-bound: 1.0.3 has-bigints: 1.1.0 has-symbols: 1.1.0 which-boxed-primitive: 1.1.1 uri-js@4.4.1: dependencies: punycode: 2.3.1 uvu@0.5.6: dependencies: dequal: 2.0.3 diff: 5.2.0 kleur: 4.1.5 sade: 1.8.1 which-boxed-primitive@1.1.1: dependencies: is-bigint: 1.1.0 is-boolean-object: 1.2.2 is-number-object: 1.1.1 is-string: 1.1.1 is-symbol: 1.1.1 which-builtin-type@1.2.1: dependencies: call-bound: 1.0.3 function.prototype.name: 1.1.8 has-tostringtag: 1.0.2 is-async-function: 2.1.1 is-date-object: 1.1.0 is-finalizationregistry: 1.1.1 is-generator-function: 1.1.0 is-regex: 1.2.1 is-weakref: 1.1.1 isarray: 2.0.5 which-boxed-primitive: 1.1.1 which-collection: 1.0.2 which-typed-array: 1.1.18 which-collection@1.0.2: dependencies: is-map: 2.0.3 is-set: 2.0.3 is-weakmap: 2.0.2 is-weakset: 2.0.4 which-typed-array@1.1.18: dependencies: available-typed-arrays: 1.0.7 call-bind: 1.0.8 call-bound: 1.0.3 for-each: 0.3.4 gopd: 1.2.0 has-tostringtag: 1.0.2 which@2.0.2: dependencies: isexe: 2.0.0 word-wrap@1.2.5: {} yocto-queue@0.1.0: {} postcss-parser-tests-8.9.0/test-on-real.js000066400000000000000000000020171475246304500205420ustar00rootroot00000000000000let pico = require('picocolors') let load = require('./load') const SITES = [ 'https://github.com/', 'https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/css/bootstrap.css' ] function succeed(url) { let text = url.replace(/^https?:\/\//, '') process.stdout.write(pico.green('✔ ') + text + '\n') } module.exports = async function testOnReal(callback, extra = []) { await load(succeed, SITES.concat(extra), (css, url) => { let result try { result = callback(css).css } catch (e) { process.stderr.write( '\n' + pico.red(url) + '\n' + pico.bgRed(' Parsing error ') + ' ' ) if (e.name === 'CssSyntaxError') { process.stderr.write(pico.red(e.message)) } else { process.stderr.write(pico.red(e.stack)) } process.stderr.write('\n') process.exit(1) } if (result !== css) { process.stderr.write( '\n' + pico.red(url) + '\n' + pico.bgRed(' Different output ') + '\n' ) process.exit(1) } succeed(url) }) } postcss-parser-tests-8.9.0/test-path.js000066400000000000000000000001721475246304500201410ustar00rootroot00000000000000let { join } = require('node:path') module.exports = function testPath(name) { return join(__dirname, 'cases', name) } postcss-parser-tests-8.9.0/test/000077500000000000000000000000001475246304500166515ustar00rootroot00000000000000postcss-parser-tests-8.9.0/test/jsonify.test.js000066400000000000000000000024261475246304500216520ustar00rootroot00000000000000let postcss = require('postcss') let { test } = require('uvu') let { equal } = require('uvu/assert') let jsonify = require('../jsonify') test('converts to JSON string', () => { let node = postcss.rule() equal(jsonify(node), { nodes: [], raws: {}, type: 'rule' }) }) test('converts source.input', () => { let node = postcss.rule({ source: { input: new postcss.Input('test', { from: '/a.css' }) } }) node.each(() => {}) equal(jsonify(node), { nodes: [], raws: {}, source: {}, type: 'rule' }) }) test('converts source.input recursively', () => { let rule = postcss.rule({ source: { end: { column: 15, line: 1, offset: 14 }, input: new postcss.Input('test', { from: '/a.css' }), start: { column: 1, line: 1, offset: 0 } } }) let root = postcss.root() root.append(rule) equal(jsonify(root), { nodes: [ { nodes: [], raws: {}, source: { end: { column: 15, line: 1, offset: 14 }, start: { column: 1, line: 1, offset: 0 } }, type: 'rule' } ], raws: {}, type: 'root' }) }) test.run() postcss-parser-tests-8.9.0/test/path.test.js000066400000000000000000000003721475246304500211230ustar00rootroot00000000000000let { join } = require('node:path') let { test } = require('uvu') let { equal } = require('uvu/assert') let { testPath } = require('../') test('returns path', () => { equal(testPath('tab.css'), join(__dirname, '../cases/tab.css')) }) test.run() postcss-parser-tests-8.9.0/test/update.js000077500000000000000000000016041475246304500204750ustar00rootroot00000000000000#!/usr/bin/env node let fs = require('node:fs') let path = require('node:path') let postcss = require('../../postcss/lib/postcss') let extra = require('../extra-cases') let jsonify = require('../jsonify') let cases = path.join(__dirname, '..', 'cases') function read(file) { return fs.readFileSync(path.join(cases, file)).toString() } fs.readdirSync(cases).forEach(i => { if (path.extname(i) !== '.json') return let name = path.basename(i, '.json') let css = extra[name] if (!css) css = read(name + '.css').trim() let root try { root = postcss.parse(css, { from: '/' + name + '.css' }) } catch (e) { process.stderr.write('\n./cases/' + name + '.css\n' + e.stack + '\n') process.exit(1) } let json = JSON.stringify(jsonify(root), null, 2) fs.writeFileSync(path.join(cases, name + '.json'), json + '\n') process.stdout.write('.') }) process.stdout.write('\n') postcss-parser-tests-8.9.0/tsconfig.json000066400000000000000000000002151475246304500203770ustar00rootroot00000000000000{ "compilerOptions": { "target": "esnext", "module": "commonjs", "allowJs": true, "strict": true, "noEmit": true } }