diff --git a/.cspell.json b/.cspell.json new file mode 100644 index 00000000..ca5a2cb5 --- /dev/null +++ b/.cspell.json @@ -0,0 +1,55 @@ +{ + "version": "0.2", + "language": "en,en-gb", + "words": [ + "pures", + "icss", + "styl", + "nosources", + "unknwon", + "mycss", + "memfs", + "Koppers", + "sokra", + "plusplus", + "localident", + "fullhash", + "requestify", + "XSSI", + "Requestable", + "requestable", + "requestify", + "nourl", + "stylesheet", + "classname", + "EACE", + "UAAU", + "AACZ", + "MCEP", + "stringifier", + "Zvby", + "uncnoun", + "bazzy", + "svars", + "concat", + "camelcase", + "Brotli", + "Contex", + "vspace", + "commitlint", + "eslintcache", + "akait" + ], + "ignorePaths": [ + "CHANGELOG.md", + "package.json", + "dist/**", + "**/__snapshots__/**", + "package-lock.json", + "**/*.css", + "**/fonts/**", + "node_modules", + "coverage", + "*.log" + ] +} diff --git a/.eslintrc.js b/.eslintrc.js index 095ce2a5..7a66ba28 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -1,4 +1,19 @@ module.exports = { root: true, - extends: ['@webpack-contrib/eslint-config-webpack', 'prettier'], + extends: ["@webpack-contrib/eslint-config-webpack", "prettier"], + overrides: [ + { + files: "src/runtime/**/*", + env: { + browser: true, + }, + rules: { + "prefer-destructuring": "off", + "no-param-reassign": "off", + "no-continue": "off", + "no-underscore-dangle": "off", + "no-undefined": "off", + }, + }, + ], }; diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md index d77bab43..3dd6cd25 100644 --- a/.github/CONTRIBUTING.md +++ b/.github/CONTRIBUTING.md @@ -17,9 +17,9 @@ The issue tracker is for bug reports and feature discussions. ## Found an Issue or Bug? -Before you submit an issue, please search the issue tracker, maybe an issue for your problem already exists and the discussion might inform you of workarounds readily available. +Before you submit an issue, please search the issue tracker, an issue for your problem may already exist, and the discussion might inform you of workarounds readily available. -We want to fix all the issues as soon as possible, but before fixing a bug we need to reproduce and confirm it. In order to reproduce bugs, we ask that you to provide a minimal reproduction scenario (github repo or failing test case). Having a live, reproducible scenario gives us a wealth of important information without going back & forth to you with additional questions like: +We want to fix all the issues as soon as possible, but before fixing a bug, we need to reproduce and confirm it. In order to reproduce bugs, we ask that you provide a minimal reproduction scenario (GitHub repo or failing test case). Having a live, reproducible scenario gives us a wealth of important information without going back & forth to you with additional questions like: - version of Webpack used - version of the loader / plugin you are creating a bug report for @@ -27,24 +27,24 @@ We want to fix all the issues as soon as possible, but before fixing a bug we ne A minimal reproduce scenario allows us to quickly confirm a bug (or point out config problems) as well as confirm that we are fixing the right problem. -We will be insisting on a minimal reproduce scenario in order to save maintainers time and ultimately be able to fix more bugs. We understand that sometimes it might be hard to extract essentials bits of code from a larger code-base but we really need to isolate the problem before we can fix it. +We will be insisting on a minimal reproduction scenario in order to save the maintainers' time and ultimately be able to fix more bugs. We understand that sometimes it might be hard to extract essential bits of code from a larger codebase, but we really need to isolate the problem before we can fix it. -Unfortunately, we are not able to investigate / fix bugs without a minimal reproduction, so if we don't hear back from you we are going to close an issue that doesn't have enough info to be reproduced. +Unfortunately, we are unable to investigate or fix bugs without a minimal reproduction, so if we don't hear back from you, we may have to close an issue that doesn't have enough info to be reproduced. ## Feature Requests? -You can _request_ a new feature by creating an issue on Github. +You can _request_ a new feature by creating an issue on GitHub. -If you would like to _implement_ a new feature, please submit an issue with a proposal for your work `first`, to be sure that particular makes sense for the project. +If you would like to _implement_ a new feature yourself, please **first submit an issue** with a proposal to ensure the idea aligns with the goals of the project. ## Pull Request Submission Guidelines Before you submit your Pull Request (PR) consider the following guidelines: -- Search Github for an open or closed PR that relates to your submission. You don't want to duplicate effort. -- Commit your changes using a descriptive commit message that follows our [commit message conventions](#commit). Adherence to these conventions is necessary because release notes are automatically generated from these messages. -- Fill out our `Pull Request Template`. Your pull request will not be considered if it is ignored. -- Please sign the `Contributor License Agreement (CLA)` when a pull request is opened. We cannot accept your pull request without this. Make sure you sign with the primary email address associated with your local / github account. +- Search GitHub for an open or closed PR related to your submission to avoid duplicating effort. +- Commit your changes using a descriptive commit message that follows our [commit message conventions](#commit). This is important because release notes are automatically generated from these messages. +- Complete the `Pull Request Template`. Pull requests that ignore the template will not be reviewed. +- Please sign the `Contributor License Agreement (CLA)` when you open your pull request. We cannot accept your contribution without it. Be sure to sign using the primary email address associated with your local and GitHub account. ## Webpack Contrib Commit Conventions @@ -61,8 +61,7 @@ format that includes a **type**, a **scope** and a **subject**: The **header** is mandatory and the **scope** of the header is optional. -Any line of the commit message cannot be longer 100 characters! This allows the message to be easier -to read on GitHub as well as in various git tools. +No line in the commit message should exceed 100 characters! This makes the message easier to read on GitHub as well as in various Git tools. The footer should contain a [closing reference to an issue](https://help.github.com/articles/closing-issues-via-commit-messages/) if any. @@ -83,7 +82,7 @@ In the body it should say: `This reverts commit .`, where the hash is the ### Type -Must be one of the following: +Must be one of the following commit types: - **build**: Changes that affect the build system or external dependencies (example scopes: babel, npm) - **chore**: Changes that fall outside of build / docs that do not effect source code (example scopes: package, defaults) @@ -99,27 +98,26 @@ Must be one of the following: ### Scope -The scope is subjective & depends on the `type` see above. A good example would be a change to a particular class / module. +The scope is subjective & depends on the `type` see above. A good example of a scope would be a change to a particular class or module. ### Subject The subject contains a succinct description of the change: -- use the imperative, present tense: "change" not "changed" nor "changes" +- use the imperative, present tense: "change" not "changed" or "changes" - don't capitalize the first letter - no dot (.) at the end ### Body -Just as in the **subject**, use the imperative, present tense: "change" not "changed" nor "changes". -The body should include the motivation for the change and contrast this with previous behavior. +Just as in the **subject**, use the imperative, present tense: "change" not "changed" or "changes". +The body should include the motivation for the change and contrast it with previous behavior. ### Footer -The footer should contain any information about **Breaking Changes** and is also the place to -reference GitHub issues that this commit **Closes**. +The footer should include any information about **Breaking Changes** and is also the place to reference GitHub issues that this commit **Closes**. -**Breaking Changes** should start with the word `BREAKING CHANGE:` with a space or two newlines. The rest of the commit message is then used for this. +**Breaking Changes** must start with the word `BREAKING CHANGE:` followed by a space or two new lines. The rest of the breaking change details should be provided after this. Example @@ -133,9 +131,7 @@ Migration: see webpack/webpack#5225 ## Testing Your Pull Request -You may have the need to test your changes in a real-world project or dependent -module. Thankfully, Github provides a means to do this. Add a dependency to the -`package.json` for such a project as follows: +You may need to test your changes in a real-world project or a dependent module. Thankfully, GitHub provides a means to do this. To add a dependency to the `package.json` of such a project, use the following syntax: ```json { @@ -149,9 +145,9 @@ Where `{id}` is the # ID of your Pull Request. ## Contributor License Agreement -When submitting your contribution, a CLA (Contributor License Agreement) bot will come by to verify that you signed the [CLA](https://cla.js.foundation/webpack-contrib/css-loader). +When submitting your contribution, a CLA (Contributor License Agreement) bot will verify whether you have signed the [CLA](https://easycla.lfx.linuxfoundation.org/#/?version=2). If it is your first time, it will link you to the right place to sign it. -However, if you have committed your contributions using an email that is not the same as your email used on GitHub, the CLA bot can't accept your contribution. +However, if the email used in your commits doesn’t match the email associated with your GitHub account, the CLA bot won’t accept your contribution. Run `git config user.email` to see your Git email, and verify it with [your GitHub email](https://github.com/settings/emails). diff --git a/.github/ISSUE_TEMPLATE.md b/.github/ISSUE_TEMPLATE.md index f68cbd3e..3ce9cf32 100644 --- a/.github/ISSUE_TEMPLATE.md +++ b/.github/ISSUE_TEMPLATE.md @@ -6,7 +6,7 @@ You arrived at this template because you felt none of the other options matched the kind of issue you'd like to report. Please use this opportunity to - tell us about your particular type of issue so we can try to accomodate + tell us about your particular type of issue so we can try to accommodate similar issues in the future. PLEASE do note, if you're using this to report an issue already covered by the diff --git a/.github/ISSUE_TEMPLATE/BUG.md b/.github/ISSUE_TEMPLATE/BUG.md index ebc47be4..931d2e2e 100644 --- a/.github/ISSUE_TEMPLATE/BUG.md +++ b/.github/ISSUE_TEMPLATE/BUG.md @@ -3,48 +3,31 @@ name: 🐛 Bug Report about: Something went awry and you'd like to tell us about it. --- - + - If you remove or skip this template, you'll make the 🐼 sad and the mighty god - of Github will appear and pile-drive the close button from a great height - while making animal noises. +### Bug report - 👉🏽 Need support, advice, or help? Don't open an issue! - Head to StackOverflow or https://gitter.im/webpack/webpack. ---> - -- Operating System: -- Node Version: -- NPM Version: -- webpack Version: -- css-loader Version: - -### Expected Behavior - - + + + + ### Actual Behavior - - -### Code + -```js -// webpack.config.js -// If your code blocks are over 20 lines, please paste a link to a gist -// (https://gist.github.com). -``` +### Expected Behavior -```js -// additional code, HEY YO remove this block if you don't need it -``` + + ### How Do We Reproduce? - + + + + - If your webpack config is over 50 lines long, please provide a URL to a repo - for your beefy 🍖 app that we can use to reproduce. ---> +### Please paste the results of `npx webpack-cli info` here, and mention other relevant information. diff --git a/.github/ISSUE_TEMPLATE/DOCS.md b/.github/ISSUE_TEMPLATE/DOCS.md index 88d05ddd..1f9fad79 100644 --- a/.github/ISSUE_TEMPLATE/DOCS.md +++ b/.github/ISSUE_TEMPLATE/DOCS.md @@ -3,20 +3,12 @@ name: 📚 Documentation about: Are the docs lacking or missing something? Do they need some new 🔥 hotness? Tell us here. --- - + - If you remove or skip this template, you'll make the 🐼 sad and the mighty god - of Github will appear and pile-drive the close button from a great height - while making animal noises. +Documentation is: - 👉🏽 Need support, advice, or help? Don't open an issue! - Head to StackOverflow or https://gitter.im/webpack/webpack. ---> - -Documentation Is: - - + - [ ] Missing - [ ] Needed @@ -25,4 +17,9 @@ Documentation Is: ### Please Explain in Detail... + + + + + ### Your Proposal for Changes diff --git a/.github/ISSUE_TEMPLATE/FEATURE.md b/.github/ISSUE_TEMPLATE/FEATURE.md index 84d4adeb..d1e618fe 100644 --- a/.github/ISSUE_TEMPLATE/FEATURE.md +++ b/.github/ISSUE_TEMPLATE/FEATURE.md @@ -3,23 +3,18 @@ name: ✨ Feature Request about: Suggest an idea for this project --- - + - If you remove or skip this template, you'll make the 🐼 sad and the mighty god - of Github will appear and pile-drive the close button from a great height - while making animal noises. +### Feature Proposal - 👉🏽 Need support, advice, or help? Don't open an issue! - Head to StackOverflow or https://gitter.im/webpack/webpack. ---> + + + + -- Operating System: -- Node Version: -- NPM Version: -- webpack Version: -- css-loader Version: +### Feature Use Case -### Feature Proposal + -### Feature Use Case +### Please paste the results of `npx webpack-cli info` here, and mention other relevant information. diff --git a/.github/ISSUE_TEMPLATE/MODIFICATION.md b/.github/ISSUE_TEMPLATE/MODIFICATION.md index bd64d529..35602449 100644 --- a/.github/ISSUE_TEMPLATE/MODIFICATION.md +++ b/.github/ISSUE_TEMPLATE/MODIFICATION.md @@ -1,27 +1,25 @@ --- name: 🔧 Modification Request -about: Would you like something work differently? Have an alternative approach? This is the template for you. +about: Want something to work differently? Have an alternative approach? This is the template for you. --- - + - If you remove or skip this template, you'll make the 🐼 sad and the mighty god - of Github will appear and pile-drive the close button from a great height - while making animal noises. - - 👉🏽 Need support, advice, or help? Don't open an issue! - Head to StackOverflow or https://gitter.im/webpack/webpack. ---> +### Modification Proposal -- Operating System: -- Node Version: -- NPM Version: -- webpack Version: -- css-loader Version: + + + + + ### Expected Behavior / Situation + + ### Actual Behavior / Situation -### Modification Proposal + + +### Please paste the results of `npx webpack-cli info` here, and mention other relevant information. diff --git a/.github/ISSUE_TEMPLATE/SUPPORT.md b/.github/ISSUE_TEMPLATE/SUPPORT.md index 558934ac..65f014ac 100644 --- a/.github/ISSUE_TEMPLATE/SUPPORT.md +++ b/.github/ISSUE_TEMPLATE/SUPPORT.md @@ -1,8 +1,15 @@ --- name: 🆘 Support, Help, and Advice -about: 👉🏽 Need support, help, or advice? Don't open an issue! Head to StackOverflow or https://gitter.im/webpack/webpack. +about: 👉🏽 Need support, help, or advice? Don't open an issue! Head to https://github.com/webpack/webpack/discussions or StackOverflow --- -Hey there! If you need support, help, or advice then this is not the place to ask. -Please visit [StackOverflow](https://stackoverflow.com/questions/tagged/webpack) -or [the Webpack Gitter](https://gitter.im/webpack/webpack) instead. +Hey there! 👋 + +If you need support, help, or advice then this is not the right place to ask. + +Please visit one of the following instead: + +- [GitHub Discussions](https://github.com/webpack/webpack/discussions) +- [StackOverflow](https://stackoverflow.com/questions/tagged/webpack) + +Thanks for understanding! diff --git a/.github/workflows/dependency-review.yml b/.github/workflows/dependency-review.yml new file mode 100644 index 00000000..8caf799d --- /dev/null +++ b/.github/workflows/dependency-review.yml @@ -0,0 +1,14 @@ +name: "Dependency Review" +on: [pull_request] + +permissions: + contents: read + +jobs: + dependency-review: + runs-on: ubuntu-latest + steps: + - name: "Checkout Repository" + uses: actions/checkout@v4 + - name: "Dependency Review" + uses: actions/dependency-review-action@v4 diff --git a/.github/workflows/nodejs.yml b/.github/workflows/nodejs.yml index b96dee19..8938f6fa 100644 --- a/.github/workflows/nodejs.yml +++ b/.github/workflows/nodejs.yml @@ -10,6 +10,9 @@ on: - master - next +permissions: + contents: read + jobs: lint: name: Lint - ${{ matrix.os }} - Node v${{ matrix.node-version }} @@ -20,22 +23,24 @@ jobs: strategy: matrix: os: [ubuntu-latest] - node-version: [12.x] + node-version: [lts/*] runs-on: ${{ matrix.os }} + concurrency: + group: lint-${{ matrix.os }}-v${{ matrix.node-version }}-${{ github.ref }} + cancel-in-progress: true + steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 with: fetch-depth: 0 - - name: Use Node.js ${{ env.node-version }} - uses: actions/setup-node@v1 + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v4 with: - node-version: ${{ env.node-version }} - - - name: Use latest NPM - run: sudo npm i -g npm + node-version: ${{ matrix.node-version }} + cache: "npm" - name: Install dependencies run: npm ci @@ -43,11 +48,12 @@ jobs: - name: Lint run: npm run lint - # - name: Security audit - # run: npm run security + - name: Security audit + run: npm run security - - name: Check commit message - uses: wagoid/commitlint-github-action@v1 + - name: Validate PR commits with commitlint + if: github.event_name == 'pull_request' + run: npx commitlint --from ${{ github.event.pull_request.head.sha }}~${{ github.event.pull_request.commits }} --to ${{ github.event.pull_request.head.sha }} --verbose test: name: Test - ${{ matrix.os }} - Node v${{ matrix.node-version }}, Webpack ${{ matrix.webpack-version }} @@ -55,41 +61,39 @@ jobs: strategy: matrix: os: [ubuntu-latest, windows-latest, macos-latest] - node-version: [8.x, 10.x, 12.x, 14.x] - webpack-version: [latest, next] + node-version: [18.x, 20.x, 22.x, 24.x] + webpack-version: [latest] runs-on: ${{ matrix.os }} + concurrency: + group: test-${{ matrix.os }}-v${{ matrix.node-version }}-${{ matrix.webpack-version }}-${{ github.ref }} + cancel-in-progress: true + steps: - name: Setup Git if: matrix.os == 'windows-latest' run: git config --global core.autocrlf input - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - name: Use Node.js ${{ matrix.node-version }} - uses: actions/setup-node@v1 + uses: actions/setup-node@v4 with: node-version: ${{ matrix.node-version }} - - - name: Use latest NPM on ubuntu/macos - if: matrix.os == 'ubuntu-latest' || matrix.os == 'macos-latest' - run: sudo npm i -g npm - - - name: Use latest NPM on windows - if: matrix.os == 'windows-latest' - run: npm i -g npm + cache: "npm" - name: Install dependencies run: npm ci - name: Install webpack ${{ matrix.webpack-version }} + if: matrix.webpack-version != 'latest' run: npm i webpack@${{ matrix.webpack-version }} - name: Run tests for webpack version ${{ matrix.webpack-version }} run: npm run test:coverage -- --ci - name: Submit coverage data to codecov - uses: codecov/codecov-action@v1 + uses: codecov/codecov-action@v5 with: token: ${{ secrets.CODECOV_TOKEN }} diff --git a/.gitignore b/.gitignore index d81a67f1..46fd3f6e 100644 --- a/.gitignore +++ b/.gitignore @@ -2,12 +2,20 @@ logs *.log npm-debug.log* .eslintcache +.cspellcache /coverage /dist /local /reports /node_modules +/test/outputs +/test/fixtures/import/import-absolute.css +/test/fixtures/url/url-absolute.css +/test/fixtures/modules/composes/composes-absolute.css +/test/fixtures/import/import-file-protocol.css +/test/fixtures/url/url-file-protocol.css +/test/fixtures/url/many-urls.css .DS_Store Thumbs.db diff --git a/.husky/commit-msg b/.husky/commit-msg new file mode 100755 index 00000000..dbce4f4c --- /dev/null +++ b/.husky/commit-msg @@ -0,0 +1 @@ +commitlint --edit $1 diff --git a/.husky/pre-commit b/.husky/pre-commit new file mode 100755 index 00000000..c27d8893 --- /dev/null +++ b/.husky/pre-commit @@ -0,0 +1 @@ +lint-staged diff --git a/.prettierrc.js b/.prettierrc.js deleted file mode 100644 index 4f14003f..00000000 --- a/.prettierrc.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = { singleQuote: true }; diff --git a/CHANGELOG.md b/CHANGELOG.md index 255e656c..5540e26e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,538 @@ All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines. +### [7.1.2](https://github.com/webpack-contrib/css-loader/compare/v7.1.1...v7.1.2) (2024-05-22) + + +### Bug Fixes + +* keep order of `@import`s with the `webpackIgnore` comment ([#1600](https://github.com/webpack-contrib/css-loader/issues/1600)) ([76757ef](https://github.com/webpack-contrib/css-loader/commit/76757ef30ec37f88ccf9d8b82d8d84b7625c5d66)) + +### [7.1.1](https://github.com/webpack-contrib/css-loader/compare/v7.1.0...v7.1.1) (2024-04-10) + + +### Bug Fixes + +* automatically rename class `default` to `_default` when named export is enabled ([#1590](https://github.com/webpack-contrib/css-loader/issues/1590)) ([d6c31a1](https://github.com/webpack-contrib/css-loader/commit/d6c31a17a0dde3e2bcf2b5e55f913c3645d32868)) + +## [7.1.0](https://github.com/webpack-contrib/css-loader/compare/v7.0.0...v7.1.0) (2024-04-08) + + +### Features + +* added the `getJSON` option to output CSS modules mapping ([#1577](https://github.com/webpack-contrib/css-loader/issues/1577)) ([af834b4](https://github.com/webpack-contrib/css-loader/commit/af834b43b375f336108d74ff7bd9ed13bc79200a)) + +## [7.0.0](https://github.com/webpack-contrib/css-loader/compare/v6.11.0...v7.0.0) (2024-04-04) + + +### ⚠ BREAKING CHANGES + +* The `modules.namedExport` option is `true` by default if you enable the `esModule` option + +Migration guide: + +Before: + +```js +import style from "./style.css"; + +console.log(style.myClass); +``` + +After: + +```js +import * as style from "./style.css"; + +console.log(style.myClass); +``` + +To restore 6.x behavior, please use: + +```js +module.exports = { + module: { + rules: [ + { + test: /\.css$/i, + loader: "css-loader", + options: { + modules: { + namedExport: false, + exportLocalsConvention: 'as-is', + // + // or, if you prefer camelcase style + // + // exportLocalsConvention: 'camel-case-only' + }, + }, + }, + ], + }, +}; +``` + +Typescript migration: + +Before: + +```ts +declare module '*.module.css' { + const classes: { [key: string]: string }; + export default classes; +} +``` + +After: + +```ts +declare module '*.module.css' { + const classes: { [key: string]: string }; + export = classes; +} +``` + +* The `modules.exportLocalsConvention` has the value `as-is` when the `modules.namedExport` option is `true` and you don't specify a value +* Minimum supported webpack version is `5.27.0` +* Minimum supported Node.js version is `18.12.0` + +### Features + +* The `modules.namedExports` option works fine with any `modules.exportLocalsConvention` values ([f96a110](https://github.com/webpack-contrib/css-loader/commit/f96a11007da55a632de7f58167895e1b5814d717)) +* Added dashed variants for the `modules.exportLocalsConvention` options ([40e1668](https://github.com/webpack-contrib/css-loader/commit/40e1668b8366f0df63343efe706ba848c2b5dfb2)) + +## [6.11.0](https://github.com/webpack-contrib/css-loader/compare/v6.10.0...v6.11.0) (2024-04-03) + + +### Features + +* supports multiple composes ([#1582](https://github.com/webpack-contrib/css-loader/issues/1582)) ([bbca614](https://github.com/webpack-contrib/css-loader/commit/bbca61411dc5f82964653a6d1aa27854519b743d)) + + +### Bug Fixes + +* do not break `@scope` at-rule without params ([#1581](https://github.com/webpack-contrib/css-loader/issues/1581)) ([e022e3b](https://github.com/webpack-contrib/css-loader/commit/e022e3bb405472ac7d51ff1114783fc2811dfe04)) + +## [6.10.0](https://github.com/webpack-contrib/css-loader/compare/v6.9.1...v6.10.0) (2024-01-30) + + +### Features + +* add `@rspack/core` as an optional peer dependency ([#1568](https://github.com/webpack-contrib/css-loader/issues/1568)) ([3924679](https://github.com/webpack-contrib/css-loader/commit/3924679cb9a8f31996c742290a71a3446c9782b9)) +* pass the `resourceQuery` and `resourceFragment` to the `auto` and `mode` callback ([#1569](https://github.com/webpack-contrib/css-loader/issues/1569)) ([d641c4d](https://github.com/webpack-contrib/css-loader/commit/d641c4d48264518dfeb77d7e1e8ef03bbb09b645)) +* support named exports with any characters ([6f43929](https://github.com/webpack-contrib/css-loader/commit/6f439299838eab7e6fb18f6e9f47b9dee2208463)) + +### [6.9.1](https://github.com/webpack-contrib/css-loader/compare/v6.9.0...v6.9.1) (2024-01-18) + + +### Bug Fixes + +* css nesting support +* `@scope` at-rule support + +## [6.9.0](https://github.com/webpack-contrib/css-loader/compare/v6.8.1...v6.9.0) (2024-01-09) + + +### Features + +* updated generateExportEntry to expose node details ([#1556](https://github.com/webpack-contrib/css-loader/issues/1556)) ([05002f3](https://github.com/webpack-contrib/css-loader/commit/05002f39e29afd7e12f9efca4d073bc23e3d2150)) + + +### Bug Fixes + +* css experiment detection ([#1559](https://github.com/webpack-contrib/css-loader/issues/1559)) ([f2cfe30](https://github.com/webpack-contrib/css-loader/commit/f2cfe30a8f6b0053a268c0d9c1943bb3c8f01338)) + +### [6.8.1](https://github.com/webpack-contrib/css-loader/compare/v6.8.0...v6.8.1) (2023-05-28) + + +### Bug Fixes + +* use `cause` for original errors and warnings ([#1526](https://github.com/webpack-contrib/css-loader/issues/1526)) ([ae3d8ae](https://github.com/webpack-contrib/css-loader/commit/ae3d8ae54ecb5706fe9c3449487cc8306699469f)) + +## [6.8.0](https://github.com/webpack-contrib/css-loader/compare/v6.7.4...v6.8.0) (2023-05-27) + + +### Features + +* use template literal when it possible to prevent `Maximum call stack size exceeded` ([#1525](https://github.com/webpack-contrib/css-loader/issues/1525)) ([6eb5661](https://github.com/webpack-contrib/css-loader/commit/6eb56618185e974abf339c952c263cc7b8a9a066)) + + +### Bug Fixes + +* warning and error serialization ([#1523](https://github.com/webpack-contrib/css-loader/issues/1523)) ([3e52969](https://github.com/webpack-contrib/css-loader/commit/3e52969f0f6b1c9d4d16db41ebff8804b340742c)) + +### [6.7.4](https://github.com/webpack-contrib/css-loader/compare/v6.7.3...v6.7.4) (2023-05-19) + + +### Bug Fixes + +* bugs in css modules ([c3099fb](https://github.com/webpack-contrib/css-loader/commit/c3099fb0cf03927f879f911ab5f51d9edc20d871)) +* output warning when built-in CSS support enabled ([#1520](https://github.com/webpack-contrib/css-loader/issues/1520)) ([0700ce8](https://github.com/webpack-contrib/css-loader/commit/0700ce8cfab2f25d538eaa2309ae80e1a097a6c1)) + +### [6.7.3](https://github.com/webpack-contrib/css-loader/compare/v6.7.2...v6.7.3) (2022-12-14) + + +### Bug Fixes + +* remove `sourceURL` from emitted CSS ([#1487](https://github.com/webpack-contrib/css-loader/issues/1487)) ([962924c](https://github.com/webpack-contrib/css-loader/commit/962924c79e274be9f6f81d39eac651c1a4876bc2)) + +### [6.7.2](https://github.com/webpack-contrib/css-loader/compare/v6.7.1...v6.7.2) (2022-11-13) + + +### Bug Fixes + +* css modules generation with inline syntax ([#1480](https://github.com/webpack-contrib/css-loader/issues/1480)) ([2f4c273](https://github.com/webpack-contrib/css-loader/commit/2f4c27399fdadace5af221ae8df95a36642a377e)) + +### [6.7.1](https://github.com/webpack-contrib/css-loader/compare/v6.7.0...v6.7.1) (2022-03-08) + + +### Bug Fixes + +* defaultGetLocalIdent export ([#1427](https://github.com/webpack-contrib/css-loader/issues/1427)) ([74dac1e](https://github.com/webpack-contrib/css-loader/commit/74dac1e428569236d386ff4e0f971e35c334087a)) + +## [6.7.0](https://github.com/webpack-contrib/css-loader/compare/v6.6.0...v6.7.0) (2022-03-04) + + +### Features + +* re-export defaultGetLocalIdent ([#1423](https://github.com/webpack-contrib/css-loader/issues/1423)) ([207cf36](https://github.com/webpack-contrib/css-loader/commit/207cf36d541423f12a8d6680b21530c52a2f07d5)) + +## [6.6.0](https://github.com/webpack-contrib/css-loader/compare/v6.5.1...v6.6.0) (2022-02-02) + + +### Features + +* added the `hashStrategy` option ([ca4abce](https://github.com/webpack-contrib/css-loader/commit/ca4abce74d01bc13959e30a4dbbd1ca3a0516d72)) + + +### [6.5.1](https://github.com/webpack-contrib/css-loader/compare/v6.5.0...v6.5.1) (2021-11-03) + + +### Bug Fixes + +* regression with unicode characters in locals ([b7a8441](https://github.com/webpack-contrib/css-loader/commit/b7a84414fb3f6e6ff413cbbb7004fa74a78da331)) +* runtime path generation ([#1393](https://github.com/webpack-contrib/css-loader/issues/1393)) ([feafea8](https://github.com/webpack-contrib/css-loader/commit/feafea812a95db05e9b52beaced0def611bba5c8)) + +## [6.5.0](https://github.com/webpack-contrib/css-loader/compare/v6.4.0...v6.5.0) (2021-10-26) + + +### Features + +* support absolute URL in `url()` when `experiments.buildHttp` enabled ([#1389](https://github.com/webpack-contrib/css-loader/issues/1389)) ([8946be4](https://github.com/webpack-contrib/css-loader/commit/8946be4d0f2c0237cd5fa846d67d469ff20058a4)) + + +### Bug Fixes + +* respect `nosources` in the `devtool` option ([c60eff2](https://github.com/webpack-contrib/css-loader/commit/c60eff212337c8a65995f6675d25f49bb515e77d)) + +## [6.4.0](https://github.com/webpack-contrib/css-loader/compare/v6.3.0...v6.4.0) (2021-10-09) + + +### Features + +* generate more collision resistant for locals ([c7db752](https://github.com/webpack-contrib/css-loader/commit/c7db752fe6a9c7ff28d165fd24a37be08ef83af5)) + + +### Bug Fixes + +* classes generation for client and server bundling ([303a3a1](https://github.com/webpack-contrib/css-loader/commit/303a3a171793cf1044c131e291f5c29f9ab86c77)) + +## [6.3.0](https://github.com/webpack-contrib/css-loader/compare/v6.2.0...v6.3.0) (2021-09-18) + + +### Features + +* added `[folder]` placeholder ([a0dee4f](https://github.com/webpack-contrib/css-loader/commit/a0dee4fd34dd1b9892dac7645a4e57ec134e561b)) +* added the `exportType` option with `'array'`, `'string'` and `'css-style-sheet'` values ([c6d2066](https://github.com/webpack-contrib/css-loader/commit/c6d20664ca03226ace26b9766e484e437ec74f60)) + * `'array'` - the default export is `Array` with API for `style-loader` and other + * `'string'` - the default export is `String` you don't need [`to-string-loader`](https://www.npmjs.com/package/to-string-loader) loader anymore + * `'css-style-sheet'` - the default export is a [`constructable stylesheet`](https://developers.google.com/web/updates/2019/02/constructable-stylesheets), you can use `import sheet from './styles.css' assert { type: 'css' };` like in a browser, more information you can find [here](https://github.com/webpack-contrib/css-loader#css-style-sheet) +* supported `supports()` and `layer()` functions in `@import` at-rules ([#1377](https://github.com/webpack-contrib/css-loader/issues/1377)) ([bce2c17](https://github.com/webpack-contrib/css-loader/commit/bce2c17524290591be243829187f909a0ae5a6f7)) +* fix multiple merging multiple `@media` at-rules ([#1377](https://github.com/webpack-contrib/css-loader/issues/1377)) ([bce2c17](https://github.com/webpack-contrib/css-loader/commit/bce2c17524290591be243829187f909a0ae5a6f7)) + + +### Bug Fixes + +* reduce runtime ([#1378](https://github.com/webpack-contrib/css-loader/issues/1378)) ([cf3a3a7](https://github.com/webpack-contrib/css-loader/commit/cf3a3a7346aa73637ee6aae6fef5648965c31a47)) + +## [6.2.0](https://github.com/webpack-contrib/css-loader/compare/v6.1.0...v6.2.0) (2021-07-19) + + +### Features + +* allow the `exportLocalsConvention` option can be a function, useful for named export ([#1351](https://github.com/webpack-contrib/css-loader/issues/1351)) ([3c4b357](https://github.com/webpack-contrib/css-loader/commit/3c4b35718273baaf9e0480db715b596fbe5d7453)) + +## [6.1.0](https://github.com/webpack-contrib/css-loader/compare/v6.0.0...v6.1.0) (2021-07-17) + + +### Features + +* add `link` in schema ([#1345](https://github.com/webpack-contrib/css-loader/issues/1345)) ([7d4e493](https://github.com/webpack-contrib/css-loader/commit/7d4e4931390f9e9356af45ae03057d1505d73109)) + + +### Bug Fixes + +* respect the `localIdentRegExp` option ([#1349](https://github.com/webpack-contrib/css-loader/issues/1349)) ([42f150b](https://github.com/webpack-contrib/css-loader/commit/42f150b429afad9b0851d2e6bd75cec120885aa4)) + +## [6.0.0](https://github.com/webpack-contrib/css-loader/compare/v5.2.7...v6.0.0) (2021-07-14) + +### Notes + +* using `~` is deprecated when the `esModule` option is enabled (enabled by default) and can be removed from your code (**we recommend it**) (`url(~package/image.png)` -> `url(package/image.png)`, `@import url(~package/style.css)` -> `@import url(package/style.css)`, `composes: import from '~package/one.css';` -> `composes: import from 'package/one.css';`), but we still support it for historical reasons. Why can you remove it? The loader will first try to resolve `@import`/`url()`/etc as relative, if it cannot be resolved, the loader will try to resolve `@import`/`url()`/etc inside [`node_modules` or modules directories](https://webpack.js.org/configuration/resolve/#resolvemodules). +* `file-loader` and `url-loader` are deprecated, please migrate on [`asset modules`](https://webpack.js.org/guides/asset-modules/), since v6 `css-loader` is generating `new URL(...)` syntax, it enables by default built-in [`assets modules`](https://webpack.js.org/guides/asset-modules/), i.e. `type: 'asset'` for all `url()` + +### ⚠ BREAKING CHANGES + +* minimum supported `Node.js` version is `12.13.0` +* minimum supported `webpack` version is `5`, we recommend to update to the latest version for better performance +* for `url` and `import` options `Function` type was removed in favor `Object` type with the `filter` property, i.e. before `{ url: () => true }`, now `{ url: { filter: () => true } }` and before `{ import: () => true }`, now `{ import: { filter: () => true } }` +* the `modules.compileType` option was removed in favor the `modules.mode` option with `icss` value, also the `modules` option can have `icss` string value +* `new URL()` syntax used for `url()`, only when the `esModule` option is enabled (enabled by default), it means you can bundle CSS for libraries +* [data URI](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/Data_URIs) are handling in `url()`, it means you can register loaders for them, [example](https://webpack.js.org/configuration/module/#rulescheme) +* aliases with `false` value for `url()` now generate empty data URI (i.e. `data:0,`), only when the `esModule` option is enabled (enabled by default) +* `[ext]` placeholder don't need `.` (dot) before for the `localIdentName` option, i.e. please change `.[ext]` on `[ext]` (no dot before) +* `[folder]` placeholder was removed without replacement for the `localIdentName` option, please use a custom function if you need complex logic +* `[emoji]` placeholder was removed without replacement for the `localIdentName` option, please use a custom function if you need complex logic +* the `localIdentHashPrefix` was removed in favor the `localIdentHashSalt` option + +### Features + +* supported [`resolve.byDependency.css`](https://webpack.js.org/configuration/resolve/#resolvebydependency) resolve options for `@import` +* supported [`resolve.byDependency.icss`](https://webpack.js.org/configuration/resolve/#resolvebydependency) resolve CSS modules and ICSS imports (i.e. `composes`/etc) +* added `modules.localIdentHashFunction`, `modules.localIdentHashDigest`, `modules.localIdentHashDigestLength` options for better class hashing controlling +* less dependencies + +### Bug Fixes + +* better performance +* fixed circular `@import` + +### Notes + +* **we strongly recommend not to add `.css` to `resolve.extensions`, it reduces performance and in most cases it is simply not necessary, alternative you can set resolve options [by dependency](https://webpack.js.org/configuration/resolve/#resolvebydependency)** + +### [5.2.7](https://github.com/webpack-contrib/css-loader/compare/v5.2.6...v5.2.7) (2021-07-13) + + +### Bug Fixes + +* fix crash when source map is unavailable with external URL in `[@import](https://github.com/import)` ([bb76fe4](https://github.com/webpack-contrib/css-loader/commit/bb76fe48a198e74cacf29ad4b1c01d485f4db11f)) + +### [5.2.6](https://github.com/webpack-contrib/css-loader/compare/v5.2.5...v5.2.6) (2021-05-24) + + +### Bug Fixes + +* always write locals export when css modules/icss enabled ([#1315](https://github.com/webpack-contrib/css-loader/issues/1315)) ([075d9bd](https://github.com/webpack-contrib/css-loader/commit/075d9bd044a78543479cbf10ccd3c386a3e434e6)) + +### [5.2.5](https://github.com/webpack-contrib/css-loader/compare/v5.2.4...v5.2.5) (2021-05-20) + + +### Bug Fixes + +* compatibility with named export and es5 ([#1314](https://github.com/webpack-contrib/css-loader/issues/1314)) ([0cf8cde](https://github.com/webpack-contrib/css-loader/commit/0cf8cdedd8667b1ba13d3b4322087943a25176f6)) + +### [5.2.4](https://github.com/webpack-contrib/css-loader/compare/v5.2.3...v5.2.4) (2021-04-19) + + +### Bug Fixes + +* do not crash on 'false' aliases ([#1292](https://github.com/webpack-contrib/css-loader/issues/1292)) ([e913cb1](https://github.com/webpack-contrib/css-loader/commit/e913cb1d73a4f5c3c4464e0446a885e9f677a005)) + +### [5.2.3](https://github.com/webpack-contrib/css-loader/compare/v5.2.2...v5.2.3) (2021-04-19) + +### Bug Fixes + +* improve performance + +### [5.2.2](https://github.com/webpack-contrib/css-loader/compare/v5.2.1...v5.2.2) (2021-04-16) + + +### Bug Fixes + +* avoid escape nonASCII characters in local names ([0722733](https://github.com/webpack-contrib/css-loader/commit/072273308a8ab4b7efdae31440689dc81978ca1d)) + +### [5.2.1](https://github.com/webpack-contrib/css-loader/compare/v5.2.0...v5.2.1) (2021-04-09) + + +### Bug Fixes + +* do not crash on unescaped svg data uri ([#1288](https://github.com/webpack-contrib/css-loader/issues/1288)) ([4f289c5](https://github.com/webpack-contrib/css-loader/commit/4f289c5e4df6c666fdf6dd3402560ae74d4bf7ee)) + +## [5.2.0](https://github.com/webpack-contrib/css-loader/compare/v5.1.4...v5.2.0) (2021-03-24) + + +### Features + +* support async functions for `url` and `import` options ([#1277](https://github.com/webpack-contrib/css-loader/issues/1277)) ([c5062db](https://github.com/webpack-contrib/css-loader/commit/c5062db3fc849d882a07b9f2c9f66f00325c8896)) + +### [5.1.4](https://github.com/webpack-contrib/css-loader/compare/v5.1.3...v5.1.4) (2021-03-24) + + +### Bug Fixes + +* crash with thread-loader ([#1281](https://github.com/webpack-contrib/css-loader/issues/1281)) ([7095a7c](https://github.com/webpack-contrib/css-loader/commit/7095a7ca7d985d5447aed80cf3e41a4f8c19b954)) + +### [5.1.3](https://github.com/webpack-contrib/css-loader/compare/v5.1.2...v5.1.3) (2021-03-15) + + +### Bug Fixes + +* the `auto` option works using inline module syntax ([#1274](https://github.com/webpack-contrib/css-loader/issues/1274)) ([1db2f4d](https://github.com/webpack-contrib/css-loader/commit/1db2f4df3ff9ae8f0667a2304853c8e7cdd0afc1)) +* ident generation for CSS modules using inline module syntax ([#1274](https://github.com/webpack-contrib/css-loader/issues/1274)) ([1db2f4d](https://github.com/webpack-contrib/css-loader/commit/1db2f4df3ff9ae8f0667a2304853c8e7cdd0afc1)) + +### [5.1.2](https://github.com/webpack-contrib/css-loader/compare/v5.1.1...v5.1.2) (2021-03-10) + + +### Bug Fixes + +* handling `@import` with spaces before and after and any extensions ([#1272](https://github.com/webpack-contrib/css-loader/issues/1272)) ([0c47cf7](https://github.com/webpack-contrib/css-loader/commit/0c47cf7ccbe3635900e8e8840650f69a7eca004d)) +* inline loader syntax in `@import` and modules ([3f49ed0](https://github.com/webpack-contrib/css-loader/commit/3f49ed0864457f9467f560856377c890c392aee7)) + +### [5.1.1](https://github.com/webpack-contrib/css-loader/compare/v5.1.0...v5.1.1) (2021-03-01) + + +### Bug Fixes + +* crash on modified AST from `postcss-loader` ([#1268](https://github.com/webpack-contrib/css-loader/issues/1268)) ([d2a1a84](https://github.com/webpack-contrib/css-loader/commit/d2a1a84afc63fdfb2a4ce6668ed9f2d7f1ba56ca)) + +## [5.1.0](https://github.com/webpack-contrib/css-loader/compare/v5.0.2...v5.1.0) (2021-02-25) + + +### Features + +* added support webpackIgnore comment ([#1264](https://github.com/webpack-contrib/css-loader/issues/1264)) ([53d40a9](https://github.com/webpack-contrib/css-loader/commit/53d40a9bb35a79e6a15308bbb7a01358f39816df)) + +### [5.0.2](https://github.com/webpack-contrib/css-loader/compare/v5.0.1...v5.0.2) (2021-02-08) + + +### Bug Fixes + +* pass query with hash to other loaders ([#1261](https://github.com/webpack-contrib/css-loader/issues/1261)) ([729a314](https://github.com/webpack-contrib/css-loader/commit/729a314529cd0607c374b07bdf425337f9a778d4)) + +### [5.0.1](https://github.com/webpack-contrib/css-loader/compare/v5.0.0...v5.0.1) (2020-11-04) + + +### Bug Fixes + +* sources in source maps have relative paths ([#1219](https://github.com/webpack-contrib/css-loader/issues/1219)) ([3229b3c](https://github.com/webpack-contrib/css-loader/commit/3229b3cca3cb5d762daeff57239a965b06fd7593)) + +## [5.0.0](https://github.com/webpack-contrib/css-loader/compare/v4.3.0...v5.0.0) (2020-10-13) + + +### ⚠ BREAKING CHANGES + +* migrate on PostCSS 8 +* runtime doesn't contain source maps code without `sourceMap: true` +* returned value from the `getLocalIdent` escapes by default, the `exportName` value is always unescaped +* Auto enable icss modules for all files for which `/\.icss\.\w+$/i` (the `modules.compileType` option is `icss`) +* `[emoji]` placeholder was deprecated +* `icss` option was removed (it was deprecated previously) + +### Features + +* allow named exports to have underscores in names ([#1209](https://github.com/webpack-contrib/css-loader/issues/1209)) ([747d62b](https://github.com/webpack-contrib/css-loader/commit/747d62b75a878d8881f4819b96297667dc689b8f)) +* hide warning when you don't need handle `url()`/`@import` ([#1195](https://github.com/webpack-contrib/css-loader/issues/1195)) ([dd52931](https://github.com/webpack-contrib/css-loader/commit/dd52931150ed42f122d9017642437c26cc1b2422)) +* improve error message ([52412f6](https://github.com/webpack-contrib/css-loader/commit/52412f6d5a54745ee37a4a67f038455c26ba5772)) +* reduce runtime ([9f974be](https://github.com/webpack-contrib/css-loader/commit/9f974be81f5942d3afaf783529677bd541952fa3)) +* add fallback if custom getLocalIdent returns `null`/`undefined` ([#1193](https://github.com/webpack-contrib/css-loader/issues/1193)) ([0f95841](https://github.com/webpack-contrib/css-loader/commit/0f9584135e63f9f354043e7f414e0c1aad0edc6e)) + +## [4.3.0](https://github.com/webpack-contrib/css-loader/compare/v4.2.2...v4.3.0) (2020-09-08) + + +### Features + +* the `importLoaders` can be `string` ([#1178](https://github.com/webpack-contrib/css-loader/issues/1178)) ([ec58a7c](https://github.com/webpack-contrib/css-loader/commit/ec58a7cfda46443e35539d66b86685195fa5db03)) + + +### Bug Fixes + +* line breaks in `url` function ([88b8ddc](https://github.com/webpack-contrib/css-loader/commit/88b8ddc1d78a2b6a917ed2dfe2f2a37cf6a84190)) + +### [4.2.2](https://github.com/webpack-contrib/css-loader/compare/v4.2.1...v4.2.2) (2020-08-24) + + +### Bug Fixes + +* source maps generation, source from source maps are now relative to `compiler.context` and use `webpack://` protocol ([#1169](https://github.com/webpack-contrib/css-loader/issues/1169)) ([fb5c53d](https://github.com/webpack-contrib/css-loader/commit/fb5c53d80b10ee698762238bb7b122aec8c5048d)) + +### [4.2.1](https://github.com/webpack-contrib/css-loader/compare/v4.2.0...v4.2.1) (2020-08-06) + + +### Bug Fixes + +* regression with the `exportOnlyLocals` option, now `locals` are not exported under the `locals` name, it was big regression, we apologize for that ([24c0a12](https://github.com/webpack-contrib/css-loader/commit/24c0a122d1396c08326a24f6184f5da09cf52ccc)) + +## [4.2.0](https://github.com/webpack-contrib/css-loader/compare/v4.1.1...v4.2.0) (2020-07-31) + + +### Features + +* add `module.type` option, the `icss` option is deprecated ([#1150](https://github.com/webpack-contrib/css-loader/issues/1150)) ([68f72af](https://github.com/webpack-contrib/css-loader/commit/68f72af2a09111f74dcacbf7af019fe7eb40cb6c)) + +### [4.1.1](https://github.com/webpack-contrib/css-loader/compare/v4.1.0...v4.1.1) (2020-07-30) + + +### Bug Fixes + +* remove unnecessary `console` call ([#1148](https://github.com/webpack-contrib/css-loader/issues/1148)) ([b1b90ca](https://github.com/webpack-contrib/css-loader/commit/b1b90caaea8eb045177749729340c7906454a84b)) + +## [4.1.0](https://github.com/webpack-contrib/css-loader/compare/v4.0.0...v4.1.0) (2020-07-29) + + +### Features + +* add `icss` option ([#1140](https://github.com/webpack-contrib/css-loader/issues/1140)) ([a8ec7da](https://github.com/webpack-contrib/css-loader/commit/a8ec7da42234e0b2eb061d2a920669940bcbdf05)) +* support absolute paths ([f9ba0ce](https://github.com/webpack-contrib/css-loader/commit/f9ba0ce11789770c4c9220478e9c98dbd432a5d6)) + + +### Bug Fixes + +* do not crash with `data` URLs ([#1142](https://github.com/webpack-contrib/css-loader/issues/1142)) ([91bc64b](https://github.com/webpack-contrib/css-loader/commit/91bc64b81abfeffd174639a8fdf2366412c11426)) +* performance ([#1144](https://github.com/webpack-contrib/css-loader/issues/1144)) ([4f1baa2](https://github.com/webpack-contrib/css-loader/commit/4f1baa211eb27b0b281ba9f262fa12e8aaefc0ba)) + +## [4.0.0](https://github.com/webpack-contrib/css-loader/compare/v3.6.0...v4.0.0) (2020-07-25) + + +### ⚠ BREAKING CHANGES + +* minimum required `Node.js` version is `10.13.0` +* minimum required `webpack` version is `4.27.0` +* the `esModule` option is `true` by default +* default value of the `sourceMap` option depends on the `devtool` option +* `icss` plugin disable by default, you need to setup the `modules` option to enable it +* the `modules` option is `true` by default for all files matching `/\.module\.\w+$/i.test(filename)` regular expression, `module.auto` is `true` by default +* the `modules.context` option was renamed to the `modules.localIdentContext` option +* default the `modules.localIdentContext` value is `compiler.context` for the `module.getLocalIdent` option +* the `modules.hashPrefix` option was renamed to the `modules.localIdentHashPrefix` option +* the `localsConvention` option was moved and renamed to the `modules.exportLocalsConvention` option +* the `getLocalIndent` option should be always `Function` and should always return `String` value +* the `onlyLocals` option was moved and renamed to the `modules.exportOnlyLocals` option +* function arguments of the `import` option were changed, it is now `function(url, media, resourcePath) {}` +* inline syntax was changed, please write `~` before the file request, i.e. rewrite `url(~!!loader!package/img.png)` to `url(!!loader!~package/img.png)` + * `url()` resolving algorithm now handles absolute paths instead of ignoring them. This can break builds which relied on absolute paths to refer to the asset directory. ([bc19ddd](https://github.com/webpack-contrib/css-loader/commit/bc19ddd8779dafbc2a420870a3cb841041ce9c7c)) + +### Features + +* `@value` supports importing `url()` ([#1126](https://github.com/webpack-contrib/css-loader/issues/1126)) ([7f49a0a](https://github.com/webpack-contrib/css-loader/commit/7f49a0a6047846bb2e432558365e19d4a0dfb366)) +* improve `url()` resolving algorithm to support more path types ([bc19ddd](https://github.com/webpack-contrib/css-loader/commit/bc19ddd8779dafbc2a420870a3cb841041ce9c7c)) +* named export for locals ([#1108](https://github.com/webpack-contrib/css-loader/issues/1108)) ([d139ec1](https://github.com/webpack-contrib/css-loader/commit/d139ec1d763f9944550b31f2a75183e488dd1224)) +* respected the `style` field from package.json ([#1099](https://github.com/webpack-contrib/css-loader/issues/1099)) ([edf5347](https://github.com/webpack-contrib/css-loader/commit/edf5347e4203a62e50b87248a83da198afdc6eba)) +* support `file:` protocol ([5604205](https://github.com/webpack-contrib/css-loader/commit/560420567eb0e1a635648b7f4ff0365db475384c)) +* support server relative URLs + +### Bug Fixes + +* resolution algorithm, you don't need `~` inside packages in `node_modules` ([76f1480](https://github.com/webpack-contrib/css-loader/commit/76f1480b14265369ac5dc8dbbce467cfb8e814c5)) + + +## [3.6.0](https://github.com/webpack-contrib/css-loader/compare/v3.5.3...v3.6.0) (2020-06-13) + + +### Features + +* allow `modules.auto` to be a filter function ([#1086](https://github.com/webpack-contrib/css-loader/issues/1086)) ([0902353](https://github.com/webpack-contrib/css-loader/commit/0902353c328d4d18e8ed2755fe9c83c03c53df81)) + ### [3.5.3](https://github.com/webpack-contrib/css-loader/compare/v3.5.2...v3.5.3) (2020-04-24) diff --git a/README.md b/README.md index d1b58a34..5ab730dc 100644 --- a/README.md +++ b/README.md @@ -9,54 +9,46 @@ [![npm][npm]][npm-url] [![node][node]][node-url] -[![deps][deps]][deps-url] [![tests][tests]][tests-url] [![coverage][cover]][cover-url] -[![chat][chat]][chat-url] +[![discussion][discussion]][discussion-url] [![size][size]][size-url] # css-loader -The `css-loader` interprets `@import` and `url()` like `import/require()` and will resolve them. +The `css-loader` interprets `@import` and `url()` like `import/require()` and resolves them. ## Getting Started +> [!WARNING] +> +> To use the latest version of css-loader, webpack@5 is required + To begin, you'll need to install `css-loader`: ```console npm install --save-dev css-loader ``` -Then add the plugin to your `webpack` config. For example: - -**file.js** +or -```js -import css from 'file.css'; +```console +yarn add -D css-loader ``` -**webpack.config.js** +or -```js -module.exports = { - module: { - rules: [ - { - test: /\.css$/i, - use: ['style-loader', 'css-loader'], - }, - ], - }, -}; +```console +pnpm add -D css-loader ``` -Good loaders for requiring your assets are the [file-loader](https://github.com/webpack/file-loader) and the [url-loader](https://github.com/webpack/url-loader) which you should specify in your config (see [below](https://github.com/webpack-contrib/css-loader#assets)). - -And run `webpack` via your preferred method. +Then, add the loader to your `webpack` configuration. For example: -### `toString` +**file.js** -You can also use the css-loader results directly as a string, such as in Angular's component style. +```js +import * as css from "file.css"; +``` **webpack.config.js** @@ -66,71 +58,51 @@ module.exports = { rules: [ { test: /\.css$/i, - use: ['to-string-loader', 'css-loader'], + use: ["style-loader", "css-loader"], }, ], }, }; ``` -or +Finally, run `webpack` using the method you normally use (e.g., via CLI or an npm script). -```js -const css = require('./test.css').toString(); +If you need to extract CSS into a separate file (i.e. do not store CSS in a JS module), consider using the [recommend example](https://github.com/webpack-contrib/css-loader#recommend). -console.log(css); // {String} -``` +## Options -If there are SourceMaps, they will also be included in the result string. +- **[`url`](#url)** +- **[`import`](#import)** +- **[`modules`](#modules)** +- **[`sourceMap`](#sourcemap)** +- **[`importLoaders`](#importloaders)** +- **[`esModule`](#esmodule)** +- **[`exportType`](#exporttype)** -If, for one reason or another, you need to extract CSS as a -plain string resource (i.e. not wrapped in a JS module) you -might want to check out the [extract-loader](https://github.com/peerigon/extract-loader). -It's useful when you, for instance, need to post process the CSS as a string. +### `url` -**webpack.config.js** +Type: -```js -module.exports = { - module: { - rules: [ - { - test: /\.css$/i, - use: [ - 'handlebars-loader', // handlebars loader expects raw resource string - 'extract-loader', - 'css-loader', - ], - }, - ], - }, -}; +```ts +type url = + | boolean + | { + filter: (url: string, resourcePath: string) => boolean; + }; ``` -## Options - -| Name | Type | Default | Description | -| :-----------------------------------------: | :-------------------------: | :------: | :--------------------------------------------------------------------- | -| **[`url`](#url)** | `{Boolean\|Function}` | `true` | Enables/Disables `url`/`image-set` functions handling | -| **[`import`](#import)** | `{Boolean\|Function}` | `true` | Enables/Disables `@import` at-rules handling | -| **[`modules`](#modules)** | `{Boolean\|String\|Object}` | `false` | Enables/Disables CSS Modules and their configuration | -| **[`sourceMap`](#sourcemap)** | `{Boolean}` | `false` | Enables/Disables generation of source maps | -| **[`importLoaders`](#importloaders)** | `{Number}` | `0` | Enables/Disables or setups number of loaders applied before CSS loader | -| **[`localsConvention`](#localsconvention)** | `{String}` | `'asIs'` | Style of exported classnames | -| **[`onlyLocals`](#onlylocals)** | `{Boolean}` | `false` | Export only locals | -| **[`esModule`](#esmodule)** | `{Boolean}` | `false` | Use ES modules syntax | +Default: `true` -### `url` +Enables or disables handling the CSS functions `url` and `image-set`. -Type: `Boolean|Function` -Default: `true` +- If set to `false`, `css-loader` will not parse any paths specified in `url` or `image-set`. +- You can also pass a function to control this behavior dynamically based on the asset path. -Enables/Disables `url`/`image-set` functions handling. -Control `url()` resolving. Absolute URLs and root-relative URLs are not resolving. +As of version [4.0.0](https://github.com/webpack-contrib/css-loader/blob/master/CHANGELOG.md#400-2020-07-25), absolute paths are resolved based on the server root. Examples resolutions: -``` +```js url(image.png) => require('./image.png') url('image.png') => require('./image.png') url(./image.png) => require('./image.png') @@ -139,15 +111,15 @@ url('http://dontwritehorriblecode.com/2112.png') => require('http://dontwritehor image-set(url('image2x.png') 1x, url('image1x.png') 2x) => require('./image1x.png') and require('./image2x.png') ``` -To import assets from a `node_modules` path (include `resolve.modules`) and for `alias`, prefix it with a `~`: +To import assets from a `node_modules` path (including `resolve.modules`) or an `alias`, prefix it with a `~`: -``` +```js url(~module/image.png) => require('module/image.png') url('~module/image.png') => require('module/image.png') url(~aliasDirectory/image.png) => require('otherDirectory/image.png') ``` -#### `Boolean` +#### `boolean` Enable/disable `url()` resolving. @@ -159,7 +131,7 @@ module.exports = { rules: [ { test: /\.css$/i, - loader: 'css-loader', + loader: "css-loader", options: { url: true, }, @@ -169,9 +141,11 @@ module.exports = { }; ``` -#### `Function` +#### `object` -Allow to filter `url()`. All filtered `url()` will not be resolved (left in the code as they were written). +Allows filtering of `url()` values. + +Any filtered `url()` will not be resolved (left in the code as they were written). **webpack.config.js** @@ -181,17 +155,24 @@ module.exports = { rules: [ { test: /\.css$/i, - loader: 'css-loader', + loader: "css-loader", options: { - url: (url, resourcePath) => { - // resourcePath - path to css file + url: { + filter: (url, resourcePath) => { + // resourcePath - path to css file + + // Don't handle `img.png` urls + if (url.includes("img.png")) { + return false; + } - // Don't handle `img.png` urls - if (url.includes('img.png')) { - return false; - } + // Don't handle images under root-relative /external_images/ + if (/^\/external_images\//.test(url)) { + return false; + } - return true; + return true; + }, }, }, }, @@ -202,11 +183,31 @@ module.exports = { ### `import` -Type: `Boolean|Function` +Type: + + + +```ts +type importFn = + | boolean + | { + filter: ( + url: string, + media: string, + resourcePath: string, + supports?: string, + layer?: string, + ) => boolean; + }; +``` + Default: `true` -Enables/Disables `@import` at-rules handling. -Control `@import` resolving. Absolute urls in `@import` will be moved in runtime code. +Allows you to enable or disable handling of `@import` at-rules. + +Controls how `@import` statements are resolved. + +Absolute URLs in `@import` will be moved in runtime code. Examples resolutions: @@ -220,7 +221,7 @@ Examples resolutions: @import url('http://dontwritehorriblecode.com/style.css') => @import url('http://dontwritehorriblecode.com/style.css') in runtime ``` -To import styles from a `node_modules` path (include `resolve.modules`) and for `alias`, prefix it with a `~`: +To import styles from a `node_modules` path (include `resolve.modules`) or an `alias`, prefix it with a `~`: ``` @import url(~module/style.css) => require('module/style.css') @@ -228,7 +229,7 @@ To import styles from a `node_modules` path (include `resolve.modules`) and for @import url(~aliasDirectory/style.css) => require('otherDirectory/style.css') ``` -#### `Boolean` +#### `boolean` Enable/disable `@import` resolving. @@ -240,7 +241,7 @@ module.exports = { rules: [ { test: /\.css$/i, - loader: 'css-loader', + loader: "css-loader", options: { import: true, }, @@ -250,9 +251,21 @@ module.exports = { }; ``` -#### `Function` +#### `object` + +##### `filter` + +Type: + +```ts +type filter = (url: string, media: string, resourcePath: string) => boolean; +``` + +Default: `undefined` + +Allows filtering of `@import`. -Allow to filter `@import`. All filtered `@import` will not be resolved (left in the code as they were written). +Any filtered `@import` will not be resolved (left in the code as they were written). **webpack.config.js** @@ -262,19 +275,19 @@ module.exports = { rules: [ { test: /\.css$/i, - loader: 'css-loader', + loader: "css-loader", options: { - import: (parsedImport, resourcePath) => { - // parsedImport.url - url of `@import` - // parsedImport.media - media query of `@import` - // resourcePath - path to css file + import: { + filter: (url, media, resourcePath) => { + // resourcePath - path to css file - // Don't handle `style.css` import - if (parsedImport.url.includes('style.css')) { - return false; - } + // Don't handle `style.css` import + if (url.includes("style.css")) { + return false; + } - return true; + return true; + }, }, }, }, @@ -285,14 +298,71 @@ module.exports = { ### `modules` -Type: `Boolean|String|Object` -Default: `false` +Type: + +```ts +type modules = + | boolean + | "local" + | "global" + | "pure" + | "icss" + | { + auto: boolean | regExp | ((resourcePath: string) => boolean); + mode: + | "local" + | "global" + | "pure" + | "icss" + | ((resourcePath) => "local" | "global" | "pure" | "icss"); + localIdentName: string; + localIdentContext: string; + localIdentHashSalt: string; + localIdentHashFunction: string; + localIdentHashDigest: string; + localIdentRegExp: string | regExp; + getLocalIdent: ( + context: LoaderContext, + localIdentName: string, + localName: string, + ) => string; + namedExport: boolean; + exportGlobals: boolean; + exportLocalsConvention: + | "as-is" + | "camel-case" + | "camel-case-only" + | "dashes" + | "dashes-only" + | ((name: string) => string); + exportOnlyLocals: boolean; + getJSON: ({ + resourcePath, + imports, + exports, + replacements, + }: { + resourcePath: string; + imports: object[]; + exports: object[]; + replacements: object[]; + }) => Promise | void; + }; +``` + +Default: `undefined` -Enables/Disables CSS Modules and their configuration. +Allows you to enable or disable CSS Modules or ICSS and configure them: -The `modules` option enables/disables the **[CSS Modules](https://github.com/css-modules/css-modules)** specification and setup basic behaviour. +- `undefined`: Enables CSS modules for all files matching `/\.module\.\w+$/i.test(filename)` or `/\.icss\.\w+$/i.test(filename)` regexp. +- `true`: Enables CSS modules for all files. +- `false`: Disables CSS Modules for all files. +- `string`: Disables CSS Modules for all files and set the `mode` option (see [mode](https://github.com/webpack-contrib/css-loader#mode) for details). +- `object`: Enables CSS modules for all files unless the `modules.auto` option is provided. otherwise the `modules.auto` option will determine whether if it is CSS Modules or not (see [auto](https://github.com/webpack-contrib/css-loader#auto) for more details). -Using `false` value increase performance because we avoid parsing **CSS Modules** features, it will be useful for developers who use vanilla css or use other technologies. +The `modules` option enables/disables the **[CSS Modules](https://github.com/css-modules/css-modules)** specification and configures its behavior. + +Setting `modules: false` can improve performance because we avoid parsing **CSS Modules** features, this is useful for developers using use vanilla CSS or other technologies. **webpack.config.js** @@ -302,7 +372,7 @@ module.exports = { rules: [ { test: /\.css$/i, - loader: 'css-loader', + loader: "css-loader", options: { modules: true, }, @@ -316,21 +386,21 @@ module.exports = { ##### `Scope` -Using `local` value requires you to specify `:global` classes. -Using `global` value requires you to specify `:local` classes. -Using `pure` value requires selectors must contain at least one local class or id. +- Using `local` value requires you to specify `:global` classes. +- Using `global` value requires you to specify `:local` classes. +- Using `pure` value requires selectors must contain at least one local class or ID. -You can find more information [here](https://github.com/css-modules/css-modules). +You can find more information on scoping module [here](https://github.com/css-modules/css-modules). -Styles can be locally scoped to avoid globally scoping styles. +With CSS Modules, styles are scoped locally, preventing conflicts with global styles. -The syntax `:local(.className)` can be used to declare `className` in the local scope. The local identifiers are exported by the module. +Use `:local(.className)` to declare a `className` in the local scope. The local identifiers are exported by the module. -With `:local` (without brackets) local mode can be switched on for this selector. -The `:global(.className)` notation can be used to declare an explicit global selector. -With `:global` (without brackets) global mode can be switched on for this selector. +- With `:local` (without parentheses) local mode can be switched `on` for this selector. +- The `:global(.className)` notation can be used to declare an explicit global selector. +- With `:global` (without parentheses) global mode can be switched `on` for this selector. -The loader replaces local selectors with unique identifiers. The chosen unique identifiers are exported by the module. +The loader replaces local selectors with unique, scoped identifiers. The chosen unique identifiers are exported by the module. ```css :local(.className) { @@ -347,6 +417,8 @@ The loader replaces local selectors with unique identifiers. The chosen unique i } ``` +Output (example): + ```css ._23_aKvs-b8bW2Vg3fwHozO { background: red; @@ -362,22 +434,24 @@ The loader replaces local selectors with unique identifiers. The chosen unique i } ``` -> ℹ️ Identifiers are exported +> [!NOTE] +> +> Identifiers are exported ```js exports.locals = { - className: '_23_aKvs-b8bW2Vg3fwHozO', - subClass: '_13LGdX8RMStbBE9w-t0gZ1', + className: "_23_aKvs-b8bW2Vg3fwHozO", + subClass: "_13LGdX8RMStbBE9w-t0gZ1", }; ``` -CamelCase is recommended for local selectors. They are easier to use within the imported JS module. +CamelCase naming is recommended for local selectors, as it simplifies usage in imported JS modules. -You can use `:local(#someId)`, but this is not recommended. Use classes instead of ids. +Although you can use `:local(#someId)`, but this is not recommended. Prefer classes instead of IDs for modular styling. ##### `Composing` -When declaring a local classname you can compose a local class from another local classname. +When declaring a local class name, you can compose it from one or more other local class names. ```css :local(.className) { @@ -391,12 +465,12 @@ When declaring a local classname you can compose a local class from another loca } ``` -This doesn't result in any change to the CSS itself but exports multiple classnames. +This does not alter the final CSS output, but the generated `subClass` will include both class names in its export. ```js exports.locals = { - className: '_23_aKvs-b8bW2Vg3fwHozO', - subClass: '_13LGdX8RMStbBE9w-t0gZ1 _23_aKvs-b8bW2Vg3fwHozO', + className: "_23_aKvs-b8bW2Vg3fwHozO", + subClass: "_13LGdX8RMStbBE9w-t0gZ1 _23_aKvs-b8bW2Vg3fwHozO", }; ``` @@ -413,18 +487,22 @@ exports.locals = { ##### `Importing` -To import a local classname from another module. +To import a local class names from another module. + +> [!NOTE] +> +> It is highly recommended to include file extensions when importing a file, since it is possible to import a file with any extension and it is not known in advance which file to use. ```css :local(.continueButton) { - composes: button from 'library/button.css'; + composes: button from "library/button.css"; background: red; } ``` ```css :local(.nameEdit) { - composes: edit highlight from './edit.css'; + composes: edit highlight from "./edit.css"; background: red; } ``` @@ -433,8 +511,20 @@ To import from multiple modules use multiple `composes:` rules. ```css :local(.className) { - composes: edit hightlight from './edit.css'; - composes: button from 'module/button.css'; + composes: + edit highlight from "./edit.css", + button from "module/button.css", + classFromThisModule; + background: red; +} +``` + +or + +```css +:local(.className) { + composes: edit highlight from "./edit.css"; + composes: button from "module/button.css"; composes: classFromThisModule; background: red; } @@ -444,7 +534,11 @@ To import from multiple modules use multiple `composes:` rules. You can use `@value` to specific values to be reused throughout a document. -We recommend use prefix `v-` for values, `s-` for selectors and `m-` for media at-rules. +We recommend following a naming convention: + +- `v-` prefix for values +- `s-` prefix for selectors +- `m-` prefix for media at-rules. ```css @value v-primary: #BF4040; @@ -467,7 +561,7 @@ We recommend use prefix `v-` for values, `s-` for selectors and `m-` for media a } ``` -#### `Boolean` +#### `boolean` Enable **CSS Modules** features. @@ -479,7 +573,7 @@ module.exports = { rules: [ { test: /\.css$/i, - loader: 'css-loader', + loader: "css-loader", options: { modules: true, }, @@ -489,7 +583,7 @@ module.exports = { }; ``` -#### `String` +#### `string` Enable **CSS Modules** features and setup `mode`. @@ -501,10 +595,10 @@ module.exports = { rules: [ { test: /\.css$/i, - loader: 'css-loader', + loader: "css-loader", options: { // Using `local` value has same effect like using `modules: true` - modules: 'global', + modules: "global", }, }, ], @@ -512,9 +606,9 @@ module.exports = { }; ``` -#### `Object` +#### `object` -Enable **CSS Modules** features and setup options for them. +Enable **CSS Modules** features and configure its behavior through `options`. **webpack.config.js** @@ -524,14 +618,19 @@ module.exports = { rules: [ { test: /\.css$/i, - loader: 'css-loader', + loader: "css-loader", options: { modules: { - mode: 'local', + mode: "local", + auto: true, exportGlobals: true, - localIdentName: '[path][name]__[local]--[hash:base64:5]', - context: path.resolve(__dirname, 'src'), - hashPrefix: 'my-custom-hash', + localIdentName: "[path][name]__[local]--[hash:base64:5]", + localIdentContext: path.resolve(__dirname, "src"), + localIdentHashSalt: "my-custom-hash", + namedExport: true, + exportLocalsConvention: "as-is", + exportOnlyLocals: false, + getJSON: ({ resourcePath, imports, exports, replacements }) => {}, }, }, }, @@ -542,17 +641,37 @@ module.exports = { ##### `auto` -Type: `Boolean|RegExp` -Default: `'undefined'` +Type: + +```ts +type auto = + | boolean + | regExp + | (( + resourcePath: string, + resourceQuery: string, + resourceFragment: string, + ) => boolean); +``` + +Default: `undefined` + +Allows auto enable CSS modules or ICSS based on the file name, query or fragment when `modules` option is an object. + +Possible values: -Allows auto enable css modules based on filename. +- `undefined`: Enables CSS modules for all files. +- `true`: Enables CSS modules for files matching `/\.module\.\w+$/i.test(filename)` and `/\.icss\.\w+$/i.test(filename)` regexp. +- `false`: Disables CSS Modules for all files. +- `RegExp`: Enables CSS modules for all files matching `/RegExp/i.test(filename)` regexp. +- `function`: Enables CSS Modules for files based on the file name satisfying your filter function check. -###### `Boolean` +###### `boolean` Possible values: -- `true` - enable css modules for all files for which `/\.module\.\w+$/i.test(filename)` return true -- `false` - disable css modules +- `true`: Enables CSS modules or Interoperable CSS (ICSS) format, sets the [`modules.mode`](#mode) option to `local` value for all files which satisfy `/\.module(s)?\.\w+$/i.test(filename)` condition or sets the [`modules.mode`](#mode) option to `icss` value for all files which satisfy `/\.icss\.\w+$/i.test(filename)` condition. +- `false`: Disables CSS modules or ICSS format based on filename for all files. **webpack.config.js** @@ -562,7 +681,7 @@ module.exports = { rules: [ { test: /\.css$/i, - loader: 'css-loader', + loader: "css-loader", options: { modules: { auto: true, @@ -576,7 +695,7 @@ module.exports = { ###### `RegExp` -Enable css modules for files based on a filename and satisfying your regex. +Enables CSS modules for files based on the filename satisfying your regex check. **webpack.config.js** @@ -586,7 +705,7 @@ module.exports = { rules: [ { test: /\.css$/i, - loader: 'css-loader', + loader: "css-loader", options: { modules: { auto: /\.custom-module\.\w+$/i, @@ -598,16 +717,9 @@ module.exports = { }; ``` -##### `mode` - -Type: `String|Function` -Default: `'local'` - -Setup `mode` option. You can omit the value when you want `local` mode. - -###### `String` +###### `function` -Possible values - `local`, `global`, and `pure`. +Enables CSS Modules for files based on the filename, query or fragment satisfying your filter function check. **webpack.config.js** @@ -617,10 +729,12 @@ module.exports = { rules: [ { test: /\.css$/i, - loader: 'css-loader', + loader: "css-loader", options: { modules: { - mode: 'global', + auto: (resourcePath, resourceQuery, resourceFragment) => { + return resourcePath.endsWith(".custom-module.css"); + }, }, }, }, @@ -629,11 +743,37 @@ module.exports = { }; ``` -###### `Function` +##### `mode` + +Type: + +```ts +type mode = + | "local" + | "global" + | "pure" + | "icss" + | (( + resourcePath: string, + resourceQuery: string, + resourceFragment: string, + ) => "local" | "global" | "pure" | "icss"); +``` + +Default: `'local'` + +Setup `mode` option. You can omit the value when you want `local` mode. + +Controls the level of compilation applied to the input styles. + +- The `local`, `global`, and `pure` handles `class` and `id` scoping and `@value` values. +- The `icss` will only compile the low level `Interoperable CSS (ICSS)` format for declaring `:import` and `:export` dependencies between CSS and other languages. + +ICSS underpins CSS Module support, and provides a low level syntax for other tools to implement CSS-module variations of their own. -Allows set different values for the `mode` option based on a filename +###### `string` -Possible return values - `local`, `global`, and `pure`. +Possible values - `local`, `global`, `pure`, and `icss`. **webpack.config.js** @@ -643,21 +783,10 @@ module.exports = { rules: [ { test: /\.css$/i, - loader: 'css-loader', + loader: "css-loader", options: { modules: { - // Callback must return "local", "global", or "pure" values - mode: (resourcePath) => { - if (/pure.css$/i.test(resourcePath)) { - return 'pure'; - } - - if (/global.css$/i.test(resourcePath)) { - return 'global'; - } - - return 'local'; - }, + mode: "global", }, }, }, @@ -666,12 +795,10 @@ module.exports = { }; ``` -##### `exportGlobals` - -Type: `Boolean` -Default: `false` +###### `function` -Allow `css-loader` to export names from global class or id, so you can use that as local name. +Allows setting different values for the `mode` option based on the filename, query or fragment. +Possible return values - `local`, `global`, `pure` and `icss`. **webpack.config.js** @@ -681,10 +808,21 @@ module.exports = { rules: [ { test: /\.css$/i, - loader: 'css-loader', + loader: "css-loader", options: { modules: { - exportGlobals: true, + // Callback must return "local", "global", or "pure" values + mode: (resourcePath, resourceQuery, resourceFragment) => { + if (/pure.css$/i.test(resourcePath)) { + return "pure"; + } + + if (/global.css$/i.test(resourcePath)) { + return "global"; + } + + return "local"; + }, }, }, }, @@ -695,20 +833,43 @@ module.exports = { ##### `localIdentName` -Type: `String` +Type: + +```ts +type localIdentName = string; +``` + Default: `'[hash:base64]'` -You can configure the generated ident with the `localIdentName` query parameter. -See [loader-utils's documentation](https://github.com/webpack/loader-utils#interpolatename) for more information on options. +Allows to configure the generated local ident name. + +For more information on options see: + +- [webpack template strings](https://webpack.js.org/configuration/output/#template-strings), +- [output.hashDigest](https://webpack.js.org/configuration/output/#outputhashdigest), +- [output.hashDigestLength](https://webpack.js.org/configuration/output/#outputhashdigestlength), +- [output.hashFunction](https://webpack.js.org/configuration/output/#outputhashfunction), +- [output.hashSalt](https://webpack.js.org/configuration/output/#outputhashsalt). + +Supported template strings: + +- `[name]` the basename of the resource +- `[folder]` the folder the resource relative to the `compiler.context` option or `modules.localIdentContext` option. +- `[path]` the path of the resource relative to the `compiler.context` option or `modules.localIdentContext` option. +- `[file]` - filename and path. +- `[ext]` - extension with leading `.`. +- `[hash]` - the hash of the string, generated based on `localIdentHashSalt`, `localIdentHashFunction`, `localIdentHashDigest`, `localIdentHashDigestLength`, `localIdentContext`, `resourcePath` and `exportName` +- `[:hash::]` - hash with hash settings. +- `[local]` - original class. Recommendations: -- use `'[path][name]__[local]'` for development -- use `'[hash:base64]'` for production +- Use `'[path][name]__[local]'` for development +- Use `'[hash:base64]'` for production The `[local]` placeholder contains original class. -**Note:** all reserved (`<>:"/\|?*`) and control filesystem characters (excluding characters in the `[local]` placeholder) will be converted to `-`. +**Note:** all reserved characters (`<>:"/\|?*`) and control filesystem characters (excluding characters in the `[local]` placeholder) will be converted to `-`. **webpack.config.js** @@ -718,10 +879,10 @@ module.exports = { rules: [ { test: /\.css$/i, - loader: 'css-loader', + loader: "css-loader", options: { modules: { - localIdentName: '[path][name]__[local]--[hash:base64:5]', + localIdentName: "[path][name]__[local]--[hash:base64:5]", }, }, }, @@ -730,13 +891,17 @@ module.exports = { }; ``` -##### `context` +##### `localIdentContext` -Type: `String` -Default: `undefined` +Type: -Allow to redefine basic loader context for local ident name. -By default we use `rootContext` of loader. +```ts +type localIdentContex = string; +``` + +Default: `compiler.context` + +Allows redefining the basic loader context for local ident name. **webpack.config.js** @@ -746,10 +911,10 @@ module.exports = { rules: [ { test: /\.css$/i, - loader: 'css-loader', + loader: "css-loader", options: { modules: { - context: path.resolve(__dirname, 'context'), + localIdentContext: path.resolve(__dirname, "src"), }, }, }, @@ -758,12 +923,19 @@ module.exports = { }; ``` -##### `hashPrefix` +##### `localIdentHashSalt` + +Type: + +```ts +type localIdentHashSalt = string; +``` -Type: `String` Default: `undefined` -Allow to add custom hash to generate more unique classes. +Allows to add custom hash to generate more unique classes. + +For more information see [output.hashSalt](https://webpack.js.org/configuration/output/#outputhashsalt). **webpack.config.js** @@ -773,10 +945,10 @@ module.exports = { rules: [ { test: /\.css$/i, - loader: 'css-loader', + loader: "css-loader", options: { modules: { - hashPrefix: 'hash', + localIdentHashSalt: "hash", }, }, }, @@ -785,13 +957,19 @@ module.exports = { }; ``` -##### `getLocalIdent` +##### `localIdentHashFunction` -Type: `Function` -Default: `undefined` +Type: -You can also specify the absolute path to your custom `getLocalIdent` function to generate classname based on a different schema. -By default we use built-in function to generate a classname. +```ts +type localIdentHashFunction = string; +``` + +Default: `md4` + +Allows to specify hash function to generate classes . + +For more information see [output.hashFunction](https://webpack.js.org/configuration/output/#outputhashfunction). **webpack.config.js** @@ -801,12 +979,10 @@ module.exports = { rules: [ { test: /\.css$/i, - loader: 'css-loader', + loader: "css-loader", options: { modules: { - getLocalIdent: (context, localIdentName, localName, options) => { - return 'whatever_random_class_name'; - }, + localIdentHashFunction: "md4", }, }, }, @@ -815,10 +991,19 @@ module.exports = { }; ``` -##### `localIdentRegExp` +##### `localIdentHashDigest` -Type: `String|RegExp` -Default: `undefined` +Type: + +```ts +type localIdentHashDigest = string; +``` + +Default: `hex` + +Allows to specify hash digest to generate classes. + +For more information see [output.hashDigest](https://webpack.js.org/configuration/output/#outputhashdigest). **webpack.config.js** @@ -828,10 +1013,10 @@ module.exports = { rules: [ { test: /\.css$/i, - loader: 'css-loader', + loader: "css-loader", options: { modules: { - localIdentRegExp: /page-(.*)\.css/i, + localIdentHashDigest: "base64", }, }, }, @@ -840,16 +1025,19 @@ module.exports = { }; ``` -### `sourceMap` +##### `localIdentHashDigestLength` -Type: `Boolean` -Default: `false` +Type: + +```ts +type localIdentHashDigestLength = number; +``` -Enables/Disables generation of source maps. +Default: `20` -To include source maps set the `sourceMap` option. +Allows to specify hash digest length to generate classes. -They are not enabled by default because they expose a runtime overhead and increase in bundle size (JS source maps do not). +For more information, see [output.hashDigestLength](https://webpack.js.org/configuration/output/#outputhashdigestlength). **webpack.config.js** @@ -859,9 +1047,11 @@ module.exports = { rules: [ { test: /\.css$/i, - loader: 'css-loader', + loader: "css-loader", options: { - sourceMap: true, + modules: { + localIdentHashDigestLength: 5, + }, }, }, ], @@ -869,14 +1059,15 @@ module.exports = { }; ``` -### `importLoaders` +##### `hashStrategy` -Type: `Number` -Default: `0` +Type: `'resource-path-and-local-name' | 'minimal-subset'` +Default: `'resource-path-and-local-name'` -Enables/Disables or setups number of loaders applied before CSS loader. +Should local name be used when computing the hash. -The option `importLoaders` allows you to configure how many loaders before `css-loader` should be applied to `@import`ed resources. +- `'resource-path-and-local-name'` Both resource path and local name are used when hashing. Each identifier in a module gets its own hash digest, always. +- `'minimal-subset'` Auto detect if identifier names can be omitted from hashing. Use this value to optimize the output for better GZIP or Brotli compression. **webpack.config.js** @@ -886,57 +1077,27 @@ module.exports = { rules: [ { test: /\.css$/i, - use: [ - 'style-loader', - { - loader: 'css-loader', - options: { - importLoaders: 2, - // 0 => no loaders (default); - // 1 => postcss-loader; - // 2 => postcss-loader, sass-loader - }, + loader: "css-loader", + options: { + modules: { + hashStrategy: "minimal-subset", }, - 'postcss-loader', - 'sass-loader', - ], + }, }, ], }, }; ``` -This may change in the future when the module system (i. e. webpack) supports loader matching by origin. - -### `localsConvention` - -Type: `String` -Default: `'asIs'` - -Style of exported classnames. - -By default, the exported JSON keys mirror the class names (i.e `asIs` value). - -| Name | Type | Description | -| :-------------------: | :--------: | :----------------------------------------------------------------------------------------------- | -| **`'asIs'`** | `{String}` | Class names will be exported as is. | -| **`'camelCase'`** | `{String}` | Class names will be camelized, the original class name will not to be removed from the locals | -| **`'camelCaseOnly'`** | `{String}` | Class names will be camelized, the original class name will be removed from the locals | -| **`'dashes'`** | `{String}` | Only dashes in class names will be camelized | -| **`'dashesOnly'`** | `{String}` | Dashes in class names will be camelized, the original class name will be removed from the locals | +##### `localIdentRegExp` -**file.css** +Type: -```css -.class-name { -} +```ts +type localIdentRegExp = string | RegExp; ``` -**file.js** - -```js -import { className } from 'file.css'; -``` +Default: `undefined` **webpack.config.js** @@ -946,9 +1107,11 @@ module.exports = { rules: [ { test: /\.css$/i, - loader: 'css-loader', + loader: "css-loader", options: { - localsConvention: 'camelCase', + modules: { + localIdentRegExp: /page-(.*)\.css/i, + }, }, }, ], @@ -956,16 +1119,25 @@ module.exports = { }; ``` -### `onlyLocals` +##### `getLocalIdent` -Type: `Boolean` -Default: `false` +Type: -Export only locals. +```ts +type getLocalIdent = ( + context: LoaderContext, + localIdentName: string, + localName: string, +) => string; +``` -**Useful** when you use **css modules** for pre-rendering (for example SSR). -For pre-rendering with `mini-css-extract-plugin` you should use this option instead of `style-loader!css-loader` **in the pre-rendering bundle**. -It doesn't embed CSS but only exports the identifier mappings. +Default: `undefined` + +Allows to specify a function to generate the classname. + +By default we use built-in function to generate a classname. + +If your custom function returns `null` or `undefined`, the built-in generator is used as a `fallback`. **webpack.config.js** @@ -975,9 +1147,13 @@ module.exports = { rules: [ { test: /\.css$/i, - loader: 'css-loader', + loader: "css-loader", options: { - onlyLocals: true, + modules: { + getLocalIdent: (context, localIdentName, localName, options) => { + return "whatever_random_class_name"; + }, + }, }, }, ], @@ -985,15 +1161,52 @@ module.exports = { }; ``` -### `esModule` +##### `namedExport` -Type: `Boolean` -Default: `false` +Type: -By default, `css-loader` generates JS modules that use the CommonJS modules syntax. -There are some cases in which using ES modules is beneficial, like in the case of [module concatenation](https://webpack.js.org/plugins/module-concatenation-plugin/) and [tree shaking](https://webpack.js.org/guides/tree-shaking/). +```ts +type namedExport = boolean; +``` + +Default: Depends on the value of the `esModule` option. If the value of the `esModule` options is `true`, `namedExport` defaults to `true` ; otherwise, it defaults to `false`. + +Enables or disables ES modules named export for locals. + +> [!WARNING] +> +> The `default` class name cannot be used directly when `namedExport` is `true` because `default` is a reserved keyword in ECMAScript modules. It is automatically renamed to `_default`. + +**styles.css** + +```css +.foo-baz { + color: red; +} +.bar { + color: blue; +} +.default { + color: green; +} +``` + +**index.js** -You can enable a ES module syntax using: +```js +import * as styles from "./styles.css"; + +// If using `exportLocalsConvention: "as-is"` (default value): +console.log(styles["foo-baz"], styles.bar); + +// If using `exportLocalsConvention: "camel-case-only"`: +console.log(styles.fooBaz, styles.bar); + +// For the `default` classname +console.log(styles["_default"]); +``` + +You can enable ES module named export using: **webpack.config.js** @@ -1003,9 +1216,12 @@ module.exports = { rules: [ { test: /\.css$/i, - loader: 'css-loader', + loader: "css-loader", options: { esModule: true, + modules: { + namedExport: true, + }, }, }, ], @@ -1013,11 +1229,21 @@ module.exports = { }; ``` -## Examples +To set a custom name for namedExport, can use [`exportLocalsConvention`](#exportLocalsConvention) option as a function. -### Assets +See below in the [`examples`](#examples) section. -The following `webpack.config.js` can load CSS files, embed small PNG/JPG/GIF/SVG images as well as fonts as [Data URLs](https://tools.ietf.org/html/rfc2397) and copy larger files to the output directory. +##### `exportGlobals` + +Type: + +```ts +type exportsGLobals = boolean; +``` + +Default: `false` + +Allow `css-loader` to export names from global class or ID, so you can use that as local name. **webpack.config.js** @@ -1027,13 +1253,11 @@ module.exports = { rules: [ { test: /\.css$/i, - use: ['style-loader', 'css-loader'], - }, - { - test: /\.(png|jpe?g|gif|svg|eot|ttf|woff|woff2)$/i, - loader: 'url-loader', + loader: "css-loader", options: { - limit: 8192, + modules: { + exportGlobals: true, + }, }, }, ], @@ -1041,17 +1265,871 @@ module.exports = { }; ``` +##### `exportLocalsConvention` + +Type: + +```ts +type exportLocalsConvention = + | "as-is" + | "camel-case" + | "camel-case-only" + | "dashes" + | "dashes-only" + | ((name: string) => string); +``` + +Default: Depends on the value of the `modules.namedExport` option: + +- If `true` - `as-is` +- Otherwise `camel-case-only` (class names converted to camelCase, original name removed). + +> [!WARNING] +> +> Names of locals are converted to camelCase when the named export is `false`, i.e. the `exportLocalsConvention` option has`camelCaseOnly` value by default. +> You can set this back to any other valid option but selectors which are not valid JavaScript identifiers may run into problems which do not implement the entire modules specification. + +Style of exported class names. + +###### `string` + +By default, the exported JSON keys mirror the class names (i.e `as-is` value). + +| Name | Type | Description | +| :---------------------: | :------: | :-------------------------------------------------------------------------------------------------- | +| **`'as-is'`** | `string` | Class names will be exported as is. | +| **`'camel-case'`** | `string` | Class names will be camelCased, but the original class name will not to be removed from the locals. | +| **`'camel-case-only'`** | `string` | Class names will be camelCased, and original class name will be removed from the locals. | +| **`'dashes'`** | `string` | Only dashes in class names will be camelCased | +| **`'dashes-only'`** | `string` | Dashes in class names will be camelCased, the original class name will be removed from the locals | + +**file.css** + +```css +.class-name { +} +``` + +**file.js** + +```js +import { className } from "file.css"; +``` + +**webpack.config.js** + +```js +module.exports = { + module: { + rules: [ + { + test: /\.css$/i, + loader: "css-loader", + options: { + modules: { + exportLocalsConvention: "camel-case-only", + }, + }, + }, + ], + }, +}; +``` + +###### `function` + +**webpack.config.js** + +```js +module.exports = { + module: { + rules: [ + { + test: /\.css$/i, + loader: "css-loader", + options: { + modules: { + exportLocalsConvention: function (name) { + return name.replace(/-/g, "_"); + }, + }, + }, + }, + ], + }, +}; +``` + +**webpack.config.js** + +```js +module.exports = { + module: { + rules: [ + { + test: /\.css$/i, + loader: "css-loader", + options: { + modules: { + exportLocalsConvention: function (name) { + return [ + name.replace(/-/g, "_"), + // dashesCamelCase + name.replace(/-+(\w)/g, (match, firstLetter) => + firstLetter.toUpperCase(), + ), + ]; + }, + }, + }, + }, + ], + }, +}; +``` + +##### `exportOnlyLocals` + +Type: + +```ts +type exportOnlyLocals = boolean; +``` + +Default: `false` + +Export only locals. + +**Useful** when you use **css modules** for pre-rendering (for example SSR). + +For pre-rendering with `mini-css-extract-plugin` you should use this option instead of `style-loader!css-loader` **in the pre-rendering bundle**. + +It doesn't embed CSS; it only exports the identifier mappings. + +**webpack.config.js** + +```js +module.exports = { + module: { + rules: [ + { + test: /\.css$/i, + loader: "css-loader", + options: { + modules: { + exportOnlyLocals: true, + }, + }, + }, + ], + }, +}; +``` + +##### `getJSON` + +Type: + +```ts +type getJSON = ({ + resourcePath, + imports, + exports, + replacements, +}: { + resourcePath: string; + imports: object[]; + exports: object[]; + replacements: object[]; +}) => Promise | void; +``` + +Default: `undefined` + +Enables a callback to output the CSS modules mapping JSON. + +The callback is invoked with an object containing the following: + +- `resourcePath`: the absolute path of the original resource, e.g., `/foo/bar/baz.module.css` + +- `imports`: an array of import objects with data about import types and file paths, e.g., + +```json +[ + { + "type": "icss_import", + "importName": "___CSS_LOADER_ICSS_IMPORT_0___", + "url": "\"-!../../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].use[1]!../../../../../node_modules/postcss-loader/dist/cjs.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../baz.module.css\"", + "icss": true, + "index": 0 + } +] +``` + +(Note that this will include all imports, not just those relevant to CSS Modules.) + +- `exports`: an array of export objects with exported names and values, e.g., + +```json +[ + { + "name": "main", + "value": "D2Oy" + } +] +``` + +- `replacements`: an array of import replacement objects used for linking `imports` and `exports`, e.g., + +```json +{ + "replacementName": "___CSS_LOADER_ICSS_IMPORT_0_REPLACEMENT_0___", + "importName": "___CSS_LOADER_ICSS_IMPORT_0___", + "localName": "main" +} +``` + +Using `getJSON`, it's possible to output a file with all CSS module mappings. + +In the following example, we use `getJSON` to cache canonical mappings and add stand-ins for any composed values (through `composes`), and we use a custom plugin to consolidate the values and output them to a file: + +**webpack.config.js** + +```js +const path = require("path"); +const fs = require("fs"); + +const CSS_LOADER_REPLACEMENT_REGEX = + /(___CSS_LOADER_ICSS_IMPORT_\d+_REPLACEMENT_\d+___)/g; +const REPLACEMENT_REGEX = /___REPLACEMENT\[(.*?)]\[(.*?)]___/g; +const IDENTIFIER_REGEX = /\[(.*?)]\[(.*?)]/; +const replacementsMap = {}; +const canonicalValuesMap = {}; +const allExportsJson = {}; + +function generateIdentifier(resourcePath, localName) { + return `[${resourcePath}][${localName}]`; +} + +function addReplacements(resourcePath, imports, exportsJson, replacements) { + const importReplacementsMap = {}; + + // create a dict to quickly identify imports and get their absolute stand-in strings in the currently loaded file + // e.g., { '___CSS_LOADER_ICSS_IMPORT_0_REPLACEMENT_0___': '___REPLACEMENT[/foo/bar/baz.css][main]___' } + importReplacementsMap[resourcePath] = replacements.reduce( + (acc, { replacementName, importName, localName }) => { + const replacementImportUrl = imports.find( + (importData) => importData.importName === importName, + ).url; + const relativePathRe = /.*!(.*)"/; + const [, relativePath] = replacementImportUrl.match(relativePathRe); + const importPath = path.resolve(path.dirname(resourcePath), relativePath); + const identifier = generateIdentifier(importPath, localName); + return { ...acc, [replacementName]: `___REPLACEMENT${identifier}___` }; + }, + {}, + ); + + // iterate through the raw exports and add stand-in variables + // ('___REPLACEMENT[][]___') + // to be replaced in the plugin below + for (const [localName, classNames] of Object.entries(exportsJson)) { + const identifier = generateIdentifier(resourcePath, localName); + + if (CSS_LOADER_REPLACEMENT_REGEX.test(classNames)) { + // if there are any replacements needed in the concatenated class names, + // add them all to the replacements map to be replaced altogether later + replacementsMap[identifier] = classNames.replaceAll( + CSS_LOADER_REPLACEMENT_REGEX, + (_, replacementName) => + importReplacementsMap[resourcePath][replacementName], + ); + } else { + // otherwise, no class names need replacements so we can add them to + // canonical values map and all exports JSON verbatim + canonicalValuesMap[identifier] = classNames; + + allExportsJson[resourcePath] = allExportsJson[resourcePath] || {}; + allExportsJson[resourcePath][localName] = classNames; + } + } +} + +function replaceReplacements(classNames) { + return classNames.replaceAll( + REPLACEMENT_REGEX, + (_, resourcePath, localName) => { + const identifier = generateIdentifier(resourcePath, localName); + + if (identifier in canonicalValuesMap) { + return canonicalValuesMap[identifier]; + } + + // Recurse through other stand-in that may be imports + const canonicalValue = replaceReplacements(replacementsMap[identifier]); + + canonicalValuesMap[identifier] = canonicalValue; + + return canonicalValue; + }, + ); +} + +function getJSON({ resourcePath, imports, exports, replacements }) { + const exportsJson = exports.reduce((acc, { name, value }) => { + return { ...acc, [name]: value }; + }, {}); + + if (replacements.length > 0) { + // replacements present --> add stand-in values for absolute paths and local names, + // which will be resolved to their canonical values in the plugin below + addReplacements(resourcePath, imports, exportsJson, replacements); + } else { + // no replacements present --> add to canonicalValuesMap verbatim + // since all values here are canonical/don't need resolution + for (const [key, value] of Object.entries(exportsJson)) { + const id = `[${resourcePath}][${key}]`; + + canonicalValuesMap[id] = value; + } + + allExportsJson[resourcePath] = exportsJson; + } +} + +class CssModulesJsonPlugin { + constructor(options) { + this.options = options; + } + + // eslint-disable-next-line class-methods-use-this + apply(compiler) { + compiler.hooks.emit.tap("CssModulesJsonPlugin", () => { + for (const [identifier, classNames] of Object.entries(replacementsMap)) { + const adjustedClassNames = replaceReplacements(classNames); + + replacementsMap[identifier] = adjustedClassNames; + + const [, resourcePath, localName] = identifier.match(IDENTIFIER_REGEX); + + allExportsJson[resourcePath] = allExportsJson[resourcePath] || {}; + allExportsJson[resourcePath][localName] = adjustedClassNames; + } + + fs.writeFileSync( + this.options.filepath, + JSON.stringify( + // Make path to be relative to `context` (your project root) + Object.fromEntries( + Object.entries(allExportsJson).map((key) => { + key[0] = path + .relative(compiler.context, key[0]) + .replace(/\\/g, "/"); + + return key; + }), + ), + null, + 2, + ), + "utf8", + ); + }); + } +} + +module.exports = { + module: { + rules: [ + { + test: /\.css$/i, + loader: "css-loader", + options: { modules: { getJSON } }, + }, + ], + }, + plugins: [ + new CssModulesJsonPlugin({ + filepath: path.resolve(__dirname, "./output.css.json"), + }), + ], +}; +``` + +In the above, all import aliases are replaced with `___REPLACEMENT[][]___` in `getJSON`, and they're resolved in the custom plugin. All CSS mappings are contained in `allExportsJson`: + +```json +{ + "foo/bar/baz.module.css": { + "main": "D2Oy", + "header": "thNN" + }, + "foot/bear/bath.module.css": { + "logo": "sqiR", + "info": "XMyI" + } +} +``` + +This is saved to a local file named `output.css.json`. + +### `importLoaders` + +Type: + +```ts +type importLoaders = number; +``` + +Default: `0` + +Allows to enables/disables or sets up the number of loaders applied before CSS loader for `@import` at-rules, CSS Modules and ICSS imports, i.e. `@import`/`composes`/`@value value from './values.css'`/etc. + +The option `importLoaders` allows you to configure how many loaders before `css-loader` should be applied to `@import`ed resources and CSS Modules/ICSS imports. + +**webpack.config.js** + +```js +module.exports = { + module: { + rules: [ + { + test: /\.css$/i, + use: [ + "style-loader", + { + loader: "css-loader", + options: { + importLoaders: 2, + // 0 => no loaders (default); + // 1 => postcss-loader; + // 2 => postcss-loader, sass-loader + }, + }, + "postcss-loader", + "sass-loader", + ], + }, + ], + }, +}; +``` + +This may change in the future when the module system (i. e. webpack) supports loader matching by origin. + +### `sourceMap` + +Type: + +```ts +type sourceMap = boolean; +``` + +Default: depends on the `compiler.devtool` value + +By default generation of source maps depends on the [`devtool`](https://webpack.js.org/configuration/devtool/) option. All values enable source map generation except `eval` and `false` values. + +**webpack.config.js** + +```js +module.exports = { + module: { + rules: [ + { + test: /\.css$/i, + loader: "css-loader", + options: { + sourceMap: true, + }, + }, + ], + }, +}; +``` + +### `esModule` + +Type: + +```ts +type esModule = boolean; +``` + +Default: `true` + +By default, `css-loader` generates JS modules that use the ES modules syntax. + +There are some cases in which using ES modules is beneficial, like in the case of [module concatenation](https://webpack.js.org/plugins/module-concatenation-plugin/) and [tree shaking](https://webpack.js.org/guides/tree-shaking/). + +You can enable CommonJS module syntax using: + +**webpack.config.js** + +```js +module.exports = { + module: { + rules: [ + { + test: /\.css$/i, + loader: "css-loader", + options: { + esModule: false, + }, + }, + ], + }, +}; +``` + +### `exportType` + +Type: + +```ts +type exportType = "array" | "string" | "css-style-sheet"; +``` + +Default: `'array'` + +Allows exporting styles as array with modules, string or [constructable stylesheet](https://developers.google.com/web/updates/2019/02/constructable-stylesheets) (i.e. [`CSSStyleSheet`](https://developer.mozilla.org/en-US/docs/Web/API/CSSStyleSheet)). + +The default value is `'array'`, i.e. loader exports an array of modules with a specific API which is used in `style-loader` or other. + +**webpack.config.js** + +```js +module.exports = { + module: { + rules: [ + { + assert: { type: "css" }, + loader: "css-loader", + options: { + exportType: "css-style-sheet", + }, + }, + ], + }, +}; +``` + +**src/index.js** + +```js +import sheet from "./styles.css" assert { type: "css" }; + +document.adoptedStyleSheets = [sheet]; +shadowRoot.adoptedStyleSheets = [sheet]; +``` + +#### `'array'` + +The default export is array of modules with specific API which is used in `style-loader` or other. + +**webpack.config.js** + +```js +module.exports = { + module: { + rules: [ + { + test: /\.(sa|sc|c)ss$/i, + use: ["style-loader", "css-loader", "postcss-loader", "sass-loader"], + }, + ], + }, +}; +``` + +**src/index.js** + +```js +// `style-loader` applies styles to DOM +import "./styles.css"; +``` + +#### `'string'` + +> [!WARNING] +> +> You should not use [`style-loader`](https://github.com/webpack-contrib/style-loader) or [`mini-css-extract-plugin`](https://github.com/webpack-contrib/mini-css-extract-plugin) with this value. +> +> The `esModule` option should be enabled if you want to use it with [`CSS modules`](https://github.com/webpack-contrib/css-loader#modules). By default for locals [named export](https://github.com/webpack-contrib/css-loader#namedexport) will be used. + +The default export is `string`. + +**webpack.config.js** + +```js +module.exports = { + module: { + rules: [ + { + test: /\.(sa|sc|c)ss$/i, + use: ["css-loader", "postcss-loader", "sass-loader"], + }, + ], + }, +}; +``` + +**src/index.js** + +```js +import sheet from "./styles.css"; + +console.log(sheet); +``` + +#### `'css-style-sheet'` + +> [!WARNING] +> +> `@import` rules not yet allowed, more [information](https://web.dev/css-module-scripts/#@import-rules-not-yet-allowed) + +> [!WARNING] +> +> You don't need [`style-loader`](https://github.com/webpack-contrib/style-loader) anymore, please remove it. + +> [!WARNING] +> +> The `esModule` option should be enabled if you want to use it with [`CSS modules`](https://github.com/webpack-contrib/css-loader#modules). By default for locals [named export](https://github.com/webpack-contrib/css-loader#namedexport) will be used. + +> [!WARNING] +> +> Source maps are not currently supported in `Chrome` due to a [bug](https://bugs.chromium.org/p/chromium/issues/detail?id=1174094&q=CSSStyleSheet%20source%20maps&can=2) + +The default export is a [constructable stylesheet](https://developers.google.com/web/updates/2019/02/constructable-stylesheets) (i.e. [`CSSStyleSheet`](https://developer.mozilla.org/en-US/docs/Web/API/CSSStyleSheet)). + +Useful for [custom elements](https://developer.mozilla.org/en-US/docs/Web/Web_Components/Using_custom_elements) and shadow DOM. + +More information: + +- [Using CSS Module Scripts to import stylesheets](https://web.dev/css-module-scripts/) +- [Constructable Stylesheets: seamless reusable styles](https://developers.google.com/web/updates/2019/02/constructable-stylesheets) + +**webpack.config.js** + +```js +module.exports = { + module: { + rules: [ + { + assert: { type: "css" }, + loader: "css-loader", + options: { + exportType: "css-style-sheet", + }, + }, + + // For Sass/SCSS: + // + // { + // assert: { type: "css" }, + // rules: [ + // { + // loader: "css-loader", + // options: { + // exportType: "css-style-sheet", + // // Other options + // }, + // }, + // { + // loader: "sass-loader", + // options: { + // // Other options + // }, + // }, + // ], + // }, + ], + }, +}; +``` + +**src/index.js** + +```js +// Example for Sass/SCSS: +// import sheet from "./styles.scss" assert { type: "css" }; + +// Example for CSS modules: +// import sheet, { myClass } from "./styles.scss" assert { type: "css" }; + +// Example for CSS: +import sheet from "./styles.css" assert { type: "css" }; + +document.adoptedStyleSheets = [sheet]; +shadowRoot.adoptedStyleSheets = [sheet]; +``` + +For migration purposes, you can use the following configuration: + +```js +module.exports = { + module: { + rules: [ + { + test: /\.css$/i, + oneOf: [ + { + assert: { type: "css" }, + loader: "css-loader", + options: { + exportType: "css-style-sheet", + // Other options + }, + }, + { + use: [ + "style-loader", + { + loader: "css-loader", + options: { + // Other options + }, + }, + ], + }, + ], + }, + ], + }, +}; +``` + +## Examples + +### Recommend + +For `production` builds, it's recommended to extract the CSS from your bundle being able to use parallel loading of CSS/JS resources later on. + +This can be achieved by using the [mini-css-extract-plugin](https://github.com/webpack-contrib/mini-css-extract-plugin), because it creates separate css files. + +For `development` mode (including `webpack-dev-server`) you can use [style-loader](https://github.com/webpack-contrib/style-loader), because it injects CSS into the DOM using multiple `` and works faster. + +> [!NOTE] +> +> Do not use `style-loader` and `mini-css-extract-plugin` together. + +**webpack.config.js** + +```js +const MiniCssExtractPlugin = require("mini-css-extract-plugin"); +const devMode = process.env.NODE_ENV !== "production"; + +module.exports = { + module: { + rules: [ + { + // If you enable `experiments.css` or `experiments.futureDefaults`, please uncomment line below + // type: "javascript/auto", + test: /\.(sa|sc|c)ss$/i, + use: [ + devMode ? "style-loader" : MiniCssExtractPlugin.loader, + "css-loader", + "postcss-loader", + "sass-loader", + ], + }, + ], + }, + plugins: [].concat(devMode ? [] : [new MiniCssExtractPlugin()]), +}; +``` + +### Disable URL resolving using the `/* webpackIgnore: true */` comment + +With the help of the `/* webpackIgnore: true */`comment, it is possible to disable sources handling for rules and for individual declarations. + +```css +/* webpackIgnore: true */ +@import url(./basic.css); +@import /* webpackIgnore: true */ url(./imported.css); + +.class { + /* Disabled url handling for the all urls in the 'background' declaration */ + color: red; + /* webpackIgnore: true */ + background: url("./url/img.png"), url("./url/img.png"); +} + +.class { + /* Disabled url handling for the first url in the 'background' declaration */ + color: red; + background: + /* webpackIgnore: true */ url("./url/img.png"), url("./url/img.png"); +} + +.class { + /* Disabled url handling for the second url in the 'background' declaration */ + color: red; + background: + url("./url/img.png"), + /* webpackIgnore: true */ url("./url/img.png"); +} + +/* prettier-ignore */ +.class { + /* Disabled url handling for the second url in the 'background' declaration */ + color: red; + background: url("./url/img.png"), + /* webpackIgnore: true */ + url("./url/img.png"); +} + +/* prettier-ignore */ +.class { + /* Disabled url handling for third and sixth urls in the 'background-image' declaration */ + background-image: image-set( + url(./url/img.png) 2x, + url(./url/img.png) 3x, + /* webpackIgnore: true */ url(./url/img.png) 4x, + url(./url/img.png) 5x, + url(./url/img.png) 6x, + /* webpackIgnore: true */ + url(./url/img.png) 7x + ); +} +``` + +### Assets + +The following `webpack.config.js` can load CSS files, embed small PNG/JPG/GIF/SVG images as well as fonts as [Data URLs](https://tools.ietf.org/html/rfc2397) and copy larger files to the output directory. + +**For webpack v5:** + +**webpack.config.js** + +```js +module.exports = { + module: { + rules: [ + { + test: /\.css$/i, + use: ["style-loader", "css-loader"], + }, + { + test: /\.(png|jpe?g|gif|svg|eot|ttf|woff|woff2)$/i, + // More information here https://webpack.js.org/guides/asset-modules/ + type: "asset", + }, + ], + }, +}; +``` + ### Extract -For production builds it's recommended to extract the CSS from your bundle being able to use parallel loading of CSS/JS resources later on. +For production builds it's recommended to extract the CSS from your bundle to enable parallel loading of CSS/JS resources later on. - This can be achieved by using the [mini-css-extract-plugin](https://github.com/webpack-contrib/mini-css-extract-plugin) to extract the CSS when running in production mode. -- As an alternative, if seeking better development performance and css outputs that mimic production. [extract-css-chunks-webpack-plugin](https://github.com/faceyspacey/extract-css-chunks-webpack-plugin) offers a hot module reload friendly, extended version of mini-css-extract-plugin. HMR real CSS files in dev, works like mini-css in non-dev +- As an alternative, if seeking better development performance and css outputs that mimic production. [extract-css-chunks-webpack-plugin](https://github.com/faceyspacey/extract-css-chunks-webpack-plugin) offers a hot module reload friendly, extended version of mini-css-extract-plugin. HMR real CSS files in dev, works like mini-css in non-dev. -### Pure CSS, CSS modules and PostCSS +### Pure CSS, CSS Modules and PostCSS -When you have pure CSS (without CSS modules), CSS modules and PostCSS in your project you can use this setup: +When you have pure CSS (without CSS modules), CSS modules and PostCSS in your project, you can use this setup: **webpack.config.js** @@ -1060,40 +2138,92 @@ module.exports = { module: { rules: [ { - // For CSS modules // For pure CSS - /\.css$/i, // For Sass/SCSS - /\.((c|sa|sc)ss)$/i, // For Less - /\.((c|le)ss)$/i, test: /\.((c|sa|sc)ss)$/i, use: [ - 'style-loader', + "style-loader", { - loader: 'css-loader', + loader: "css-loader", options: { - // Run `postcss-loader` on each CSS `@import`, do not forget that `sass-loader` compile non CSS `@import`'s into a single file + // Run `postcss-loader` on each CSS `@import` and CSS modules/ICSS imports, do not forget that `sass-loader` compile non CSS `@import`'s into a single file // If you need run `sass-loader` and `postcss-loader` on each CSS `@import` please set it to `2` importLoaders: 1, - // Automatically enable css modules for files satisfying `/\.module\.\w+$/i` RegExp. - modules: { auto: true }, }, }, { - loader: 'postcss-loader', + loader: "postcss-loader", options: { plugins: () => [postcssPresetEnv({ stage: 0 })] }, }, // Can be `less-loader` - // The `test` property should be `\.less/i` { - test: /\.s[ac]ss$/i, - loader: 'sass-loader', + loader: "sass-loader", }, ], }, + // For webpack v5 { test: /\.(png|jpe?g|gif|svg|eot|ttf|woff|woff2)$/i, - loader: 'url-loader', + // More information here https://webpack.js.org/guides/asset-modules/ + type: "asset", + }, + ], + }, +}; +``` + +### Resolve unresolved URLs using an alias + +**index.css** + +```css +.class { + background: url(/assets/unresolved/img.png); +} +``` + +**webpack.config.js** + +```js +module.exports = { + module: { + rules: [ + { + test: /\.css$/i, + use: ["style-loader", "css-loader"], + }, + ], + }, + resolve: { + alias: { + "/assets/unresolved/img.png": path.resolve( + __dirname, + "assets/real-path-to-img/img.png", + ), + }, + }, +}; +``` + +### Named export with custom export names + +**webpack.config.js** + +```js +module.exports = { + module: { + rules: [ + { + test: /\.css$/i, + loader: "css-loader", options: { - limit: 8192, + modules: { + namedExport: true, + exportLocalsConvention: function (name) { + return name.replace(/-/g, "_"); + }, + }, }, }, ], @@ -1101,9 +2231,118 @@ module.exports = { }; ``` +### Separating `Interoperable CSS`-only and `CSS Module` features + +The following setup is an example of allowing `Interoperable CSS` features only (such as `:import` and `:export`) without using further `CSS Module` functionality by setting the `mode` option for all files that do not match the `*.module.scss` naming convention. This is for reference, as having `ICSS` features applied to all files was default `css-loader` behavior before v4. + +Meanwhile, all files matching `*.module.scss` are treated as `CSS Modules` in this example. + +An example case is assumed where a project requires canvas drawing variables to be synchronized with CSS - canvas drawing uses the same color (set by color name in JavaScript) as HTML background (set by class name in CSS). + +**webpack.config.js** + +```js +module.exports = { + module: { + rules: [ + // ... + // -------- + // SCSS ALL EXCEPT MODULES + { + test: /\.scss$/i, + exclude: /\.module\.scss$/i, + use: [ + { + loader: "style-loader", + }, + { + loader: "css-loader", + options: { + importLoaders: 1, + modules: { + mode: "icss", + }, + }, + }, + { + loader: "sass-loader", + }, + ], + }, + // -------- + // SCSS MODULES + { + test: /\.module\.scss$/i, + use: [ + { + loader: "style-loader", + }, + { + loader: "css-loader", + options: { + importLoaders: 1, + modules: { + mode: "local", + }, + }, + }, + { + loader: "sass-loader", + }, + ], + }, + // -------- + // ... + ], + }, +}; +``` + +**variables.scss** + +File treated as `ICSS`-only. + +```scss +$colorBackground: red; +:export { + colorBackgroundCanvas: $colorBackground; +} +``` + +**Component.module.scss** + +File treated as `CSS Module`. + +```scss +@import "variables.scss"; +.componentClass { + background-color: $colorBackground; +} +``` + +**Component.jsx** + +Using both `CSS Module` functionality as well as SCSS variables directly in JavaScript. + +```jsx +import * as svars from "variables.scss"; +import * as styles from "Component.module.scss"; + +// Render DOM with CSS modules class name +//
+// +//
+ +// Somewhere in JavaScript canvas drawing code use the variable directly +// const ctx = mountsCanvas.current.getContext('2d',{alpha: false}); +ctx.fillStyle = `${svars.colorBackgroundCanvas}`; +``` + ## Contributing -Please take a moment to read our contributing guidelines if you haven't yet done so. +We welcome all contributions! + +If you are new here, please take a moment to review our contributing guidelines before submitting issues or pull requests. [CONTRIBUTING](./.github/CONTRIBUTING.md) @@ -1115,13 +2354,11 @@ Please take a moment to read our contributing guidelines if you haven't yet done [npm-url]: https://npmjs.com/package/css-loader [node]: https://img.shields.io/node/v/css-loader.svg [node-url]: https://nodejs.org -[deps]: https://david-dm.org/webpack-contrib/css-loader.svg -[deps-url]: https://david-dm.org/webpack-contrib/css-loader [tests]: https://github.com/webpack-contrib/css-loader/workflows/css-loader/badge.svg [tests-url]: https://github.com/webpack-contrib/css-loader/actions [cover]: https://codecov.io/gh/webpack-contrib/css-loader/branch/master/graph/badge.svg [cover-url]: https://codecov.io/gh/webpack-contrib/css-loader -[chat]: https://badges.gitter.im/webpack/webpack.svg -[chat-url]: https://gitter.im/webpack/webpack +[discussion]: https://img.shields.io/github/discussions/webpack/webpack +[discussion-url]: https://github.com/webpack/webpack/discussions [size]: https://packagephobia.now.sh/badge?p=css-loader [size-url]: https://packagephobia.now.sh/result?p=css-loader diff --git a/babel.config.js b/babel.config.js index c428f395..ff7e3b3d 100644 --- a/babel.config.js +++ b/babel.config.js @@ -7,23 +7,23 @@ module.exports = (api) => { return { presets: [ [ - '@babel/preset-env', + "@babel/preset-env", { targets: { - node: '8.9.0', + node: "18.12.0", }, }, ], ], overrides: [ { - test: './src/runtime', + test: "./src/runtime", presets: [ [ - '@babel/preset-env', + "@babel/preset-env", { targets: { - node: '0.12', + node: "0.12", }, }, ], diff --git a/commitlint.config.js b/commitlint.config.js index 84dcb122..86a8e2df 100644 --- a/commitlint.config.js +++ b/commitlint.config.js @@ -1,3 +1,8 @@ module.exports = { - extends: ['@commitlint/config-conventional'], + extends: ["@commitlint/config-conventional"], + rules: { + "header-max-length": [0], + "body-max-line-length": [0], + "footer-max-line-length": [0], + }, }; diff --git a/husky.config.js b/husky.config.js deleted file mode 100644 index 4c2ec3ae..00000000 --- a/husky.config.js +++ /dev/null @@ -1,6 +0,0 @@ -module.exports = { - hooks: { - 'pre-commit': 'lint-staged', - 'commit-msg': 'commitlint -E HUSKY_GIT_PARAMS', - }, -}; diff --git a/jest.config.js b/jest.config.js new file mode 100644 index 00000000..5da099d9 --- /dev/null +++ b/jest.config.js @@ -0,0 +1,3 @@ +module.exports = { + testEnvironment: "node", +}; diff --git a/lint-staged.config.js b/lint-staged.config.js index c417cb1b..30108433 100644 --- a/lint-staged.config.js +++ b/lint-staged.config.js @@ -1,4 +1,7 @@ module.exports = { - '*.js': ['prettier --write', 'eslint --fix'], - '*.{json,md,yml,css,ts}': ['prettier --write'], + "*": [ + "prettier --cache --write --ignore-unknown", + "cspell --cache --no-must-find-files", + ], + "*.js": ["eslint --cache --fix"], }; diff --git a/package-lock.json b/package-lock.json index f2c71923..1e6d0364 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,14846 +1,21378 @@ { "name": "css-loader", - "version": "3.5.3", - "lockfileVersion": 1, + "version": "7.1.2", + "lockfileVersion": 3, "requires": true, - "dependencies": { - "@babel/cli": { - "version": "7.8.4", - "resolved": "https://registry.npmjs.org/@babel/cli/-/cli-7.8.4.tgz", - "integrity": "sha512-XXLgAm6LBbaNxaGhMAznXXaxtCWfuv6PIDJ9Alsy9JYTOh+j2jJz+L/162kkfU1j/pTSxK1xGmlwI4pdIMkoag==", - "dev": true, - "requires": { - "chokidar": "^2.1.8", - "commander": "^4.0.1", - "convert-source-map": "^1.1.0", - "fs-readdir-recursive": "^1.1.0", - "glob": "^7.0.0", - "lodash": "^4.17.13", - "make-dir": "^2.1.0", - "slash": "^2.0.0", - "source-map": "^0.5.0" - }, + "packages": { + "": { + "name": "css-loader", + "version": "7.1.2", + "license": "MIT", "dependencies": { - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true + "icss-utils": "^5.1.0", + "postcss": "^8.4.40", + "postcss-modules-extract-imports": "^3.1.0", + "postcss-modules-local-by-default": "^4.0.5", + "postcss-modules-scope": "^3.2.0", + "postcss-modules-values": "^4.0.0", + "postcss-value-parser": "^4.2.0", + "semver": "^7.6.3" + }, + "devDependencies": { + "@babel/cli": "^7.24.8", + "@babel/core": "^7.25.2", + "@babel/preset-env": "^7.25.3", + "@commitlint/cli": "^19.3.0", + "@commitlint/config-conventional": "^19.2.2", + "@webpack-contrib/eslint-config-webpack": "^3.0.0", + "babel-jest": "^30.0.0", + "cross-env": "^7.0.3", + "cspell": "^8.13.1", + "del-cli": "^5.1.0", + "es-check": "^7.2.1", + "eslint": "^8.54.0", + "eslint-config-prettier": "^9.1.0", + "eslint-plugin-import": "^2.29.0", + "file-loader": "^6.2.0", + "husky": "^9.1.4", + "jest": "^30.0.0", + "jest-environment-jsdom": "^30.0.0", + "less": "^4.2.0", + "less-loader": "^12.2.0", + "lint-staged": "^15.2.8", + "memfs": "^4.11.1", + "mini-css-extract-plugin": "^2.9.0", + "npm-run-all": "^4.1.5", + "postcss-loader": "^8.1.1", + "postcss-preset-env": "^9.6.0", + "prettier": "^3.3.3", + "sass": "^1.77.8", + "sass-loader": "^14.2.1", + "standard-version": "^9.5.0", + "strip-ansi": "^6.0.0", + "style-loader": "^3.3.4", + "stylus": "^0.63.0", + "stylus-loader": "^8.1.0", + "url-loader": "^4.1.1", + "webpack": "^5.93.0" + }, + "engines": { + "node": ">= 18.12.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "@rspack/core": "0.x || 1.x", + "webpack": "^5.27.0" + }, + "peerDependenciesMeta": { + "@rspack/core": { + "optional": true + }, + "webpack": { + "optional": true } } }, - "@babel/code-frame": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.8.3.tgz", - "integrity": "sha512-a9gxpmdXtZEInkCSHUJDLHZVBgb1QS0jhss4cPP93EW7s+uC5bikET2twEF3KV+7rDblJcmNvTR7VJejqd2C2g==", + "node_modules/@adobe/css-tools": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.3.3.tgz", + "integrity": "sha512-rE0Pygv0sEZ4vBWHlAgJLGDU7Pm8xoO6p3wsEceb7GYAjScrOHpEo8KK/eVkAcnSM+slAEtXjA2JpdjLp4fJQQ==", "dev": true, - "requires": { - "@babel/highlight": "^7.8.3" - } + "license": "MIT" }, - "@babel/compat-data": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.9.0.tgz", - "integrity": "sha512-zeFQrr+284Ekvd9e7KAX954LkapWiOmQtsfHirhxqfdlX6MEC32iRE+pqUGlYIBchdevaCwvzxWGSy/YBNI85g==", + "node_modules/@ampproject/remapping": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.3.0.tgz", + "integrity": "sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==", "dev": true, - "requires": { - "browserslist": "^4.9.1", - "invariant": "^2.2.4", - "semver": "^5.5.0" + "license": "Apache-2.0", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.24" }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@asamuzakjp/css-color": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/@asamuzakjp/css-color/-/css-color-3.2.0.tgz", + "integrity": "sha512-K1A6z8tS3XsmCMM86xoWdn7Fkdn9m6RSVtocUrJYIwZnFVkng/PvkEoWtOWmP+Scc6saYWHWZYbndEEXxl24jw==", + "dev": true, + "license": "MIT", "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true + "@csstools/css-calc": "^2.1.3", + "@csstools/css-color-parser": "^3.0.9", + "@csstools/css-parser-algorithms": "^3.0.4", + "@csstools/css-tokenizer": "^3.0.3", + "lru-cache": "^10.4.3" + } + }, + "node_modules/@asamuzakjp/css-color/node_modules/@csstools/color-helpers": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/@csstools/color-helpers/-/color-helpers-5.0.2.tgz", + "integrity": "sha512-JqWH1vsgdGcw2RR6VliXXdA0/59LttzlU8UlRT/iUUsEeWfYq8I+K0yhihEUTTHLRm1EXvpsCx3083EU15ecsA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" } + ], + "license": "MIT-0", + "engines": { + "node": ">=18" } }, - "@babel/core": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.9.0.tgz", - "integrity": "sha512-kWc7L0fw1xwvI0zi8OKVBuxRVefwGOrKSQMvrQ3dW+bIIavBY3/NpXmpjMy7bQnLgwgzWQZ8TlM57YHpHNHz4w==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.8.3", - "@babel/generator": "^7.9.0", - "@babel/helper-module-transforms": "^7.9.0", - "@babel/helpers": "^7.9.0", - "@babel/parser": "^7.9.0", - "@babel/template": "^7.8.6", - "@babel/traverse": "^7.9.0", - "@babel/types": "^7.9.0", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.1", - "json5": "^2.1.2", - "lodash": "^4.17.13", - "resolve": "^1.3.2", - "semver": "^5.4.1", - "source-map": "^0.5.0" - }, - "dependencies": { - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } + "node_modules/@asamuzakjp/css-color/node_modules/@csstools/css-calc": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@csstools/css-calc/-/css-calc-2.1.4.tgz", + "integrity": "sha512-3N8oaj+0juUw/1H3YwmDDJXCgTB1gKU6Hc/bB502u9zR0q2vd786XJH9QfrKIEgFlZmhZiq6epXl4rHqhzsIgQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" }, - "json5": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.1.3.tgz", - "integrity": "sha512-KXPvOm8K9IJKFM0bmdn8QXh7udDh1g/giieX0NLCaMnb4hEiVFqnop2ImTXCc5e0/oHz3LTqmHGtExn5hfMkOA==", - "dev": true, - "requires": { - "minimist": "^1.2.5" - } + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT", + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "@csstools/css-parser-algorithms": "^3.0.5", + "@csstools/css-tokenizer": "^3.0.4" + } + }, + "node_modules/@asamuzakjp/css-color/node_modules/@csstools/css-color-parser": { + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/@csstools/css-color-parser/-/css-color-parser-3.0.10.tgz", + "integrity": "sha512-TiJ5Ajr6WRd1r8HSiwJvZBiJOqtH86aHpUjq5aEKWHiII2Qfjqd/HCWKPOW8EP4vcspXbHnXrwIDlu5savQipg==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT", + "dependencies": { + "@csstools/color-helpers": "^5.0.2", + "@csstools/css-calc": "^2.1.4" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "@csstools/css-parser-algorithms": "^3.0.5", + "@csstools/css-tokenizer": "^3.0.4" + } + }, + "node_modules/@asamuzakjp/css-color/node_modules/@csstools/css-parser-algorithms": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@csstools/css-parser-algorithms/-/css-parser-algorithms-3.0.5.tgz", + "integrity": "sha512-DaDeUkXZKjdGhgYaHNJTV9pV7Y9B3b644jCLs9Upc3VeNGg6LWARAT6O+Q+/COo+2gg/bM5rhpMAtf70WqfBdQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT", + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "@csstools/css-tokenizer": "^3.0.4" + } + }, + "node_modules/@asamuzakjp/css-color/node_modules/@csstools/css-tokenizer": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@csstools/css-tokenizer/-/css-tokenizer-3.0.4.tgz", + "integrity": "sha512-Vd/9EVDiu6PPJt9yAh6roZP6El1xHrdvIVGjyBsHR0RYwNHgL7FJPyIIW4fANJNG6FtyZfvlRPpFI4ZM/lubvw==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" }, - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" } + ], + "license": "MIT", + "engines": { + "node": ">=18" } }, - "@babel/generator": { - "version": "7.9.4", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.9.4.tgz", - "integrity": "sha512-rjP8ahaDy/ouhrvCoU1E5mqaitWrxwuNGU+dy1EpaoK48jZay4MdkskKGIMHLZNewg8sAsqpGSREJwP0zH3YQA==", + "node_modules/@asamuzakjp/css-color/node_modules/lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", "dev": true, - "requires": { - "@babel/types": "^7.9.0", - "jsesc": "^2.5.1", - "lodash": "^4.17.13", - "source-map": "^0.5.0" - }, + "license": "ISC" + }, + "node_modules/@babel/cli": { + "version": "7.27.2", + "resolved": "https://registry.npmjs.org/@babel/cli/-/cli-7.27.2.tgz", + "integrity": "sha512-cfd7DnGlhH6OIyuPSSj3vcfIdnbXukhAyKY8NaZrFadC7pXyL9mOL5WgjcptiEJLi5k3j8aYvLIVCzezrWTaiA==", + "dev": true, + "license": "MIT", "dependencies": { - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true - } + "@jridgewell/trace-mapping": "^0.3.25", + "commander": "^6.2.0", + "convert-source-map": "^2.0.0", + "fs-readdir-recursive": "^1.1.0", + "glob": "^7.2.0", + "make-dir": "^2.1.0", + "slash": "^2.0.0" + }, + "bin": { + "babel": "bin/babel.js", + "babel-external-helpers": "bin/babel-external-helpers.js" + }, + "engines": { + "node": ">=6.9.0" + }, + "optionalDependencies": { + "@nicolo-ribaudo/chokidar-2": "2.1.8-no-fsevents.3", + "chokidar": "^3.6.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/helper-annotate-as-pure": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.8.3.tgz", - "integrity": "sha512-6o+mJrZBxOoEX77Ezv9zwW7WV8DdluouRKNY/IR5u/YTMuKHgugHOzYWlYvYLpLA9nPsQCAAASpCIbjI9Mv+Uw==", + "node_modules/@babel/code-frame": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.27.1.tgz", + "integrity": "sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==", "dev": true, - "requires": { - "@babel/types": "^7.8.3" + "license": "MIT", + "dependencies": { + "@babel/helper-validator-identifier": "^7.27.1", + "js-tokens": "^4.0.0", + "picocolors": "^1.1.1" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/helper-builder-binary-assignment-operator-visitor": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.8.3.tgz", - "integrity": "sha512-5eFOm2SyFPK4Rh3XMMRDjN7lBH0orh3ss0g3rTYZnBQ+r6YPj7lgDyCvPphynHvUrobJmeMignBr6Acw9mAPlw==", + "node_modules/@babel/compat-data": { + "version": "7.27.5", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.27.5.tgz", + "integrity": "sha512-KiRAp/VoJaWkkte84TvUd9qjdbZAdiqyvMxrGl1N6vzFogKmaLgoM3L1kgtLicp2HP5fBJS8JrZKLVIZGVJAVg==", "dev": true, - "requires": { - "@babel/helper-explode-assignable-expression": "^7.8.3", - "@babel/types": "^7.8.3" + "license": "MIT", + "engines": { + "node": ">=6.9.0" } }, - "@babel/helper-compilation-targets": { - "version": "7.8.7", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.8.7.tgz", - "integrity": "sha512-4mWm8DCK2LugIS+p1yArqvG1Pf162upsIsjE7cNBjez+NjliQpVhj20obE520nao0o14DaTnFJv+Fw5a0JpoUw==", + "node_modules/@babel/core": { + "version": "7.27.4", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.27.4.tgz", + "integrity": "sha512-bXYxrXFubeYdvB0NhD/NBB3Qi6aZeV20GOWVI47t2dkecCEoneR4NPVcb7abpXDEvejgrUfFtG6vG/zxAKmg+g==", "dev": true, - "requires": { - "@babel/compat-data": "^7.8.6", - "browserslist": "^4.9.1", - "invariant": "^2.2.4", - "levenary": "^1.1.1", - "semver": "^5.5.0" - }, + "license": "MIT", "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - } + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.27.1", + "@babel/generator": "^7.27.3", + "@babel/helper-compilation-targets": "^7.27.2", + "@babel/helper-module-transforms": "^7.27.3", + "@babel/helpers": "^7.27.4", + "@babel/parser": "^7.27.4", + "@babel/template": "^7.27.2", + "@babel/traverse": "^7.27.4", + "@babel/types": "^7.27.3", + "convert-source-map": "^2.0.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.3", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" } }, - "@babel/helper-create-regexp-features-plugin": { - "version": "7.8.8", - "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.8.8.tgz", - "integrity": "sha512-LYVPdwkrQEiX9+1R29Ld/wTrmQu1SSKYnuOk3g0CkcZMA1p0gsNxJFj/3gBdaJ7Cg0Fnek5z0DsMULePP7Lrqg==", + "node_modules/@babel/core/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.8.3", - "@babel/helper-regex": "^7.8.3", - "regexpu-core": "^4.7.0" + "license": "ISC", + "bin": { + "semver": "bin/semver.js" } }, - "@babel/helper-define-map": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-define-map/-/helper-define-map-7.8.3.tgz", - "integrity": "sha512-PoeBYtxoZGtct3md6xZOCWPcKuMuk3IHhgxsRRNtnNShebf4C8YonTSblsK4tvDbm+eJAw2HAPOfCr+Q/YRG/g==", + "node_modules/@babel/generator": { + "version": "7.27.5", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.27.5.tgz", + "integrity": "sha512-ZGhA37l0e/g2s1Cnzdix0O3aLYm66eF8aufiVteOgnwxgnRP8GoyMj7VWsgWnQbVKXyge7hqrFh2K2TQM6t1Hw==", "dev": true, - "requires": { - "@babel/helper-function-name": "^7.8.3", - "@babel/types": "^7.8.3", - "lodash": "^4.17.13" + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.27.5", + "@babel/types": "^7.27.3", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", + "jsesc": "^3.0.2" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/helper-explode-assignable-expression": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.8.3.tgz", - "integrity": "sha512-N+8eW86/Kj147bO9G2uclsg5pwfs/fqqY5rwgIL7eTBklgXjcOJ3btzS5iM6AitJcftnY7pm2lGsrJVYLGjzIw==", + "node_modules/@babel/helper-annotate-as-pure": { + "version": "7.27.3", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.27.3.tgz", + "integrity": "sha512-fXSwMQqitTGeHLBC08Eq5yXz2m37E4pJX1qAU1+2cNedz/ifv/bVXft90VeSav5nFO61EcNgwr0aJxbyPaWBPg==", "dev": true, - "requires": { - "@babel/traverse": "^7.8.3", - "@babel/types": "^7.8.3" + "license": "MIT", + "dependencies": { + "@babel/types": "^7.27.3" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/helper-function-name": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.8.3.tgz", - "integrity": "sha512-BCxgX1BC2hD/oBlIFUgOCQDOPV8nSINxCwM3o93xP4P9Fq6aV5sgv2cOOITDMtCfQ+3PvHp3l689XZvAM9QyOA==", + "node_modules/@babel/helper-compilation-targets": { + "version": "7.27.2", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.27.2.tgz", + "integrity": "sha512-2+1thGUUWWjLTYTHZWK1n8Yga0ijBz1XAhUXcKy81rd5g6yh7hGqMp45v7cadSbEHc9G3OTv45SyneRN3ps4DQ==", "dev": true, - "requires": { - "@babel/helper-get-function-arity": "^7.8.3", - "@babel/template": "^7.8.3", - "@babel/types": "^7.8.3" + "license": "MIT", + "dependencies": { + "@babel/compat-data": "^7.27.2", + "@babel/helper-validator-option": "^7.27.1", + "browserslist": "^4.24.0", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/helper-get-function-arity": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.8.3.tgz", - "integrity": "sha512-FVDR+Gd9iLjUMY1fzE2SR0IuaJToR4RkCDARVfsBBPSP53GEqSFjD8gNyxg246VUyc/ALRxFaAK8rVG7UT7xRA==", + "node_modules/@babel/helper-compilation-targets/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", "dev": true, - "requires": { - "@babel/types": "^7.8.3" + "license": "ISC", + "bin": { + "semver": "bin/semver.js" } }, - "@babel/helper-hoist-variables": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.8.3.tgz", - "integrity": "sha512-ky1JLOjcDUtSc+xkt0xhYff7Z6ILTAHKmZLHPxAhOP0Nd77O+3nCsd6uSVYur6nJnCI029CrNbYlc0LoPfAPQg==", + "node_modules/@babel/helper-create-class-features-plugin": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.27.1.tgz", + "integrity": "sha512-QwGAmuvM17btKU5VqXfb+Giw4JcN0hjuufz3DYnpeVDvZLAObloM77bhMXiqry3Iio+Ai4phVRDwl6WU10+r5A==", "dev": true, - "requires": { - "@babel/types": "^7.8.3" + "license": "MIT", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.27.1", + "@babel/helper-member-expression-to-functions": "^7.27.1", + "@babel/helper-optimise-call-expression": "^7.27.1", + "@babel/helper-replace-supers": "^7.27.1", + "@babel/helper-skip-transparent-expression-wrappers": "^7.27.1", + "@babel/traverse": "^7.27.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "@babel/helper-member-expression-to-functions": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.8.3.tgz", - "integrity": "sha512-fO4Egq88utkQFjbPrSHGmGLFqmrshs11d46WI+WZDESt7Wu7wN2G2Iu+NMMZJFDOVRHAMIkB5SNh30NtwCA7RA==", + "node_modules/@babel/helper-create-class-features-plugin/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", "dev": true, - "requires": { - "@babel/types": "^7.8.3" + "license": "ISC", + "bin": { + "semver": "bin/semver.js" } }, - "@babel/helper-module-imports": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.8.3.tgz", - "integrity": "sha512-R0Bx3jippsbAEtzkpZ/6FIiuzOURPcMjHp+Z6xPe6DtApDJx+w7UYyOLanZqO8+wKR9G10s/FmHXvxaMd9s6Kg==", + "node_modules/@babel/helper-create-regexp-features-plugin": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.27.1.tgz", + "integrity": "sha512-uVDC72XVf8UbrH5qQTc18Agb8emwjTiZrQE11Nv3CuBEZmVvTwwE9CBUEvHku06gQCAyYf8Nv6ja1IN+6LMbxQ==", "dev": true, - "requires": { - "@babel/types": "^7.8.3" + "license": "MIT", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.27.1", + "regexpu-core": "^6.2.0", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "@babel/helper-module-transforms": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.9.0.tgz", - "integrity": "sha512-0FvKyu0gpPfIQ8EkxlrAydOWROdHpBmiCiRwLkUiBGhCUPRRbVD2/tm3sFr/c/GWFrQ/ffutGUAnx7V0FzT2wA==", + "node_modules/@babel/helper-create-regexp-features-plugin/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", "dev": true, - "requires": { - "@babel/helper-module-imports": "^7.8.3", - "@babel/helper-replace-supers": "^7.8.6", - "@babel/helper-simple-access": "^7.8.3", - "@babel/helper-split-export-declaration": "^7.8.3", - "@babel/template": "^7.8.6", - "@babel/types": "^7.9.0", - "lodash": "^4.17.13" + "license": "ISC", + "bin": { + "semver": "bin/semver.js" } }, - "@babel/helper-optimise-call-expression": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.8.3.tgz", - "integrity": "sha512-Kag20n86cbO2AvHca6EJsvqAd82gc6VMGule4HwebwMlwkpXuVqrNRj6CkCV2sKxgi9MyAUnZVnZ6lJ1/vKhHQ==", + "node_modules/@babel/helper-define-polyfill-provider": { + "version": "0.6.4", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.6.4.tgz", + "integrity": "sha512-jljfR1rGnXXNWnmQg2K3+bvhkxB51Rl32QRaOTuwwjviGrHzIbSc8+x9CpraDtbT7mfyjXObULP4w/adunNwAw==", "dev": true, - "requires": { - "@babel/types": "^7.8.3" + "license": "MIT", + "dependencies": { + "@babel/helper-compilation-targets": "^7.22.6", + "@babel/helper-plugin-utils": "^7.22.5", + "debug": "^4.1.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.14.2" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" } }, - "@babel/helper-plugin-utils": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz", - "integrity": "sha512-j+fq49Xds2smCUNYmEHF9kGNkhbet6yVIBp4e6oeQpH1RUs/Ir06xUKzDjDkGcaaokPiTNs2JBWHjaE4csUkZQ==", - "dev": true + "node_modules/@babel/helper-member-expression-to-functions": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.27.1.tgz", + "integrity": "sha512-E5chM8eWjTp/aNoVpcbfM7mLxu9XGLWYise2eBKGQomAk/Mb4XoxyqXTZbuTohbsl8EKqdlMhnDI2CCLfcs9wA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/traverse": "^7.27.1", + "@babel/types": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + } }, - "@babel/helper-regex": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-regex/-/helper-regex-7.8.3.tgz", - "integrity": "sha512-BWt0QtYv/cg/NecOAZMdcn/waj/5P26DR4mVLXfFtDokSR6fyuG0Pj+e2FqtSME+MqED1khnSMulkmGl8qWiUQ==", + "node_modules/@babel/helper-module-imports": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.27.1.tgz", + "integrity": "sha512-0gSFWUPNXNopqtIPQvlD5WgXYI5GY2kP2cCvoT8kczjbfcfuIljTbcWrulD1CIPIX2gt1wghbDy08yE1p+/r3w==", "dev": true, - "requires": { - "lodash": "^4.17.13" + "license": "MIT", + "dependencies": { + "@babel/traverse": "^7.27.1", + "@babel/types": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/helper-remap-async-to-generator": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.8.3.tgz", - "integrity": "sha512-kgwDmw4fCg7AVgS4DukQR/roGp+jP+XluJE5hsRZwxCYGg+Rv9wSGErDWhlI90FODdYfd4xG4AQRiMDjjN0GzA==", + "node_modules/@babel/helper-module-transforms": { + "version": "7.27.3", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.27.3.tgz", + "integrity": "sha512-dSOvYwvyLsWBeIRyOeHXp5vPj5l1I011r52FM1+r1jCERv+aFXYk4whgQccYEGYxK2H3ZAIA8nuPkQ0HaUo3qg==", "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.8.3", - "@babel/helper-wrap-function": "^7.8.3", - "@babel/template": "^7.8.3", - "@babel/traverse": "^7.8.3", - "@babel/types": "^7.8.3" + "license": "MIT", + "dependencies": { + "@babel/helper-module-imports": "^7.27.1", + "@babel/helper-validator-identifier": "^7.27.1", + "@babel/traverse": "^7.27.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "@babel/helper-replace-supers": { - "version": "7.8.6", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.8.6.tgz", - "integrity": "sha512-PeMArdA4Sv/Wf4zXwBKPqVj7n9UF/xg6slNRtZW84FM7JpE1CbG8B612FyM4cxrf4fMAMGO0kR7voy1ForHHFA==", + "node_modules/@babel/helper-optimise-call-expression": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.27.1.tgz", + "integrity": "sha512-URMGH08NzYFhubNSGJrpUEphGKQwMQYBySzat5cAByY1/YgIRkULnIy3tAMeszlL/so2HbeilYloUmSpd7GdVw==", "dev": true, - "requires": { - "@babel/helper-member-expression-to-functions": "^7.8.3", - "@babel/helper-optimise-call-expression": "^7.8.3", - "@babel/traverse": "^7.8.6", - "@babel/types": "^7.8.6" + "license": "MIT", + "dependencies": { + "@babel/types": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/helper-simple-access": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.8.3.tgz", - "integrity": "sha512-VNGUDjx5cCWg4vvCTR8qQ7YJYZ+HBjxOgXEl7ounz+4Sn7+LMD3CFrCTEU6/qXKbA2nKg21CwhhBzO0RpRbdCw==", + "node_modules/@babel/helper-plugin-utils": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.27.1.tgz", + "integrity": "sha512-1gn1Up5YXka3YYAHGKpbideQ5Yjf1tDa9qYcgysz+cNCXukyLl6DjPXhD3VRwSb8c0J9tA4b2+rHEZtc6R0tlw==", "dev": true, - "requires": { - "@babel/template": "^7.8.3", - "@babel/types": "^7.8.3" + "license": "MIT", + "engines": { + "node": ">=6.9.0" } }, - "@babel/helper-split-export-declaration": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.8.3.tgz", - "integrity": "sha512-3x3yOeyBhW851hroze7ElzdkeRXQYQbFIb7gLK1WQYsw2GWDay5gAJNw1sWJ0VFP6z5J1whqeXH/WCdCjZv6dA==", + "node_modules/@babel/helper-remap-async-to-generator": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.27.1.tgz", + "integrity": "sha512-7fiA521aVw8lSPeI4ZOD3vRFkoqkJcS+z4hFo82bFSH/2tNd6eJ5qCVMS5OzDmZh/kaHQeBaeyxK6wljcPtveA==", "dev": true, - "requires": { - "@babel/types": "^7.8.3" + "license": "MIT", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.27.1", + "@babel/helper-wrap-function": "^7.27.1", + "@babel/traverse": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "@babel/helper-validator-identifier": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.9.0.tgz", - "integrity": "sha512-6G8bQKjOh+of4PV/ThDm/rRqlU7+IGoJuofpagU5GlEl29Vv0RGqqt86ZGRV8ZuSOY3o+8yXl5y782SMcG7SHw==", - "dev": true + "node_modules/@babel/helper-replace-supers": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.27.1.tgz", + "integrity": "sha512-7EHz6qDZc8RYS5ElPoShMheWvEgERonFCs7IAonWLLUTXW59DP14bCZt89/GKyreYn8g3S83m21FelHKbeDCKA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-member-expression-to-functions": "^7.27.1", + "@babel/helper-optimise-call-expression": "^7.27.1", + "@babel/traverse": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } }, - "@babel/helper-wrap-function": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.8.3.tgz", - "integrity": "sha512-LACJrbUET9cQDzb6kG7EeD7+7doC3JNvUgTEQOx2qaO1fKlzE/Bf05qs9w1oXQMmXlPO65lC3Tq9S6gZpTErEQ==", + "node_modules/@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.27.1.tgz", + "integrity": "sha512-Tub4ZKEXqbPjXgWLl2+3JpQAYBJ8+ikpQ2Ocj/q/r0LwE3UhENh7EUabyHjz2kCEsrRY83ew2DQdHluuiDQFzg==", "dev": true, - "requires": { - "@babel/helper-function-name": "^7.8.3", - "@babel/template": "^7.8.3", - "@babel/traverse": "^7.8.3", - "@babel/types": "^7.8.3" + "license": "MIT", + "dependencies": { + "@babel/traverse": "^7.27.1", + "@babel/types": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/helpers": { - "version": "7.9.2", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.9.2.tgz", - "integrity": "sha512-JwLvzlXVPjO8eU9c/wF9/zOIN7X6h8DYf7mG4CiFRZRvZNKEF5dQ3H3V+ASkHoIB3mWhatgl5ONhyqHRI6MppA==", + "node_modules/@babel/helper-string-parser": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz", + "integrity": "sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==", "dev": true, - "requires": { - "@babel/template": "^7.8.3", - "@babel/traverse": "^7.9.0", - "@babel/types": "^7.9.0" + "license": "MIT", + "engines": { + "node": ">=6.9.0" } }, - "@babel/highlight": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.9.0.tgz", - "integrity": "sha512-lJZPilxX7Op3Nv/2cvFdnlepPXDxi29wxteT57Q965oc5R9v86ztx0jfxVrTcBk8C2kcPkkDa2Z4T3ZsPPVWsQ==", + "node_modules/@babel/helper-validator-identifier": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.27.1.tgz", + "integrity": "sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow==", "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.9.0", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" + "license": "MIT", + "engines": { + "node": ">=6.9.0" } }, - "@babel/parser": { - "version": "7.9.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.9.4.tgz", - "integrity": "sha512-bC49otXX6N0/VYhgOMh4gnP26E9xnDZK3TmbNpxYzzz9BQLBosQwfyOe9/cXUU3txYhTzLCbcqd5c8y/OmCjHA==", - "dev": true + "node_modules/@babel/helper-validator-option": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.27.1.tgz", + "integrity": "sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } }, - "@babel/plugin-proposal-async-generator-functions": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.8.3.tgz", - "integrity": "sha512-NZ9zLv848JsV3hs8ryEh7Uaz/0KsmPLqv0+PdkDJL1cJy0K4kOCFa8zc1E3mp+RHPQcpdfb/6GovEsW4VDrOMw==", + "node_modules/@babel/helper-wrap-function": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.27.1.tgz", + "integrity": "sha512-NFJK2sHUvrjo8wAU/nQTWU890/zB2jj0qBcCbZbbf+005cAsv6tMjXz31fBign6M5ov1o0Bllu+9nbqkfsjjJQ==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.3", - "@babel/helper-remap-async-to-generator": "^7.8.3", - "@babel/plugin-syntax-async-generators": "^7.8.0" + "license": "MIT", + "dependencies": { + "@babel/template": "^7.27.1", + "@babel/traverse": "^7.27.1", + "@babel/types": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/plugin-proposal-dynamic-import": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.8.3.tgz", - "integrity": "sha512-NyaBbyLFXFLT9FP+zk0kYlUlA8XtCUbehs67F0nnEg7KICgMc2mNkIeu9TYhKzyXMkrapZFwAhXLdnt4IYHy1w==", + "node_modules/@babel/helpers": { + "version": "7.27.6", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.27.6.tgz", + "integrity": "sha512-muE8Tt8M22638HU31A3CgfSUciwz1fhATfoVai05aPXGor//CdWDCbnlY1yvBPo07njuVOCNGCSp/GTt12lIug==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.3", - "@babel/plugin-syntax-dynamic-import": "^7.8.0" + "license": "MIT", + "dependencies": { + "@babel/template": "^7.27.2", + "@babel/types": "^7.27.6" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/plugin-proposal-json-strings": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.8.3.tgz", - "integrity": "sha512-KGhQNZ3TVCQG/MjRbAUwuH+14y9q0tpxs1nWWs3pbSleRdDro9SAMMDyye8HhY1gqZ7/NqIc8SKhya0wRDgP1Q==", + "node_modules/@babel/parser": { + "version": "7.27.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.27.5.tgz", + "integrity": "sha512-OsQd175SxWkGlzbny8J3K8TnnDD0N3lrIUtB92xwyRpzaenGZhxDvxN/JgU00U3CDZNj9tPuDJ5H0WS4Nt3vKg==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.3", - "@babel/plugin-syntax-json-strings": "^7.8.0" + "license": "MIT", + "dependencies": { + "@babel/types": "^7.27.3" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" } }, - "@babel/plugin-proposal-nullish-coalescing-operator": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.8.3.tgz", - "integrity": "sha512-TS9MlfzXpXKt6YYomudb/KU7nQI6/xnapG6in1uZxoxDghuSMZsPb6D2fyUwNYSAp4l1iR7QtFOjkqcRYcUsfw==", + "node_modules/@babel/plugin-bugfix-firefox-class-in-computed-class-key": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-firefox-class-in-computed-class-key/-/plugin-bugfix-firefox-class-in-computed-class-key-7.27.1.tgz", + "integrity": "sha512-QPG3C9cCVRQLxAVwmefEmwdTanECuUBMQZ/ym5kiw3XKCGA7qkuQLcjWWHcrD/GKbn/WmJwaezfuuAOcyKlRPA==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.3", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.0" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/traverse": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "@babel/plugin-proposal-numeric-separator": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.8.3.tgz", - "integrity": "sha512-jWioO1s6R/R+wEHizfaScNsAx+xKgwTLNXSh7tTC4Usj3ItsPEhYkEpU4h+lpnBwq7NBVOJXfO6cRFYcX69JUQ==", + "node_modules/@babel/plugin-bugfix-safari-class-field-initializer-scope": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-class-field-initializer-scope/-/plugin-bugfix-safari-class-field-initializer-scope-7.27.1.tgz", + "integrity": "sha512-qNeq3bCKnGgLkEXUuFry6dPlGfCdQNZbn7yUAPCInwAJHMU7THJfrBSozkcWq5sNM6RcF3S8XyQL2A52KNR9IA==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.3", - "@babel/plugin-syntax-numeric-separator": "^7.8.3" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "@babel/plugin-proposal-object-rest-spread": { - "version": "7.9.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.9.5.tgz", - "integrity": "sha512-VP2oXvAf7KCYTthbUHwBlewbl1Iq059f6seJGsxMizaCdgHIeczOr7FBqELhSqfkIl04Fi8okzWzl63UKbQmmg==", + "node_modules/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.27.1.tgz", + "integrity": "sha512-g4L7OYun04N1WyqMNjldFwlfPCLVkgB54A/YCXICZYBsvJJE3kByKv9c9+R/nAfmIfjl2rKYLNyMHboYbZaWaA==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.3", - "@babel/plugin-syntax-object-rest-spread": "^7.8.0", - "@babel/plugin-transform-parameters": "^7.9.5" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "@babel/plugin-proposal-optional-catch-binding": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.8.3.tgz", - "integrity": "sha512-0gkX7J7E+AtAw9fcwlVQj8peP61qhdg/89D5swOkjYbkboA2CVckn3kiyum1DE0wskGb7KJJxBdyEBApDLLVdw==", + "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.27.1.tgz", + "integrity": "sha512-oO02gcONcD5O1iTLi/6frMJBIwWEHceWGSGqrpCmEL8nogiS6J9PBlE48CaK20/Jx1LuRml9aDftLgdjXT8+Cw==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.3", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.0" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-skip-transparent-expression-wrappers": "^7.27.1", + "@babel/plugin-transform-optional-chaining": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.13.0" } }, - "@babel/plugin-proposal-optional-chaining": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.9.0.tgz", - "integrity": "sha512-NDn5tu3tcv4W30jNhmc2hyD5c56G6cXx4TesJubhxrJeCvuuMpttxr0OnNCqbZGhFjLrg+NIhxxC+BK5F6yS3w==", + "node_modules/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/-/plugin-bugfix-v8-static-class-fields-redefine-readonly-7.27.1.tgz", + "integrity": "sha512-6BpaYGDavZqkI6yT+KSPdpZFfpnd68UKXbcjI9pJ13pvHhPrCKWOOLp+ysvMeA+DxnhuPpgIaRpxRxo5A9t5jw==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.3", - "@babel/plugin-syntax-optional-chaining": "^7.8.0" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/traverse": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "@babel/plugin-proposal-unicode-property-regex": { - "version": "7.8.8", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.8.8.tgz", - "integrity": "sha512-EVhjVsMpbhLw9ZfHWSx2iy13Q8Z/eg8e8ccVWt23sWQK5l1UdkoLJPN5w69UA4uITGBnEZD2JOe4QOHycYKv8A==", + "node_modules/@babel/plugin-proposal-private-property-in-object": { + "version": "7.21.0-placeholder-for-preset-env.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz", + "integrity": "sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==", "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.8.8", - "@babel/helper-plugin-utils": "^7.8.3" + "license": "MIT", + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-syntax-async-generators": { + "node_modules/@babel/plugin-syntax-async-generators": { "version": "7.8.4", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-syntax-bigint": { + "node_modules/@babel/plugin-syntax-bigint": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz", "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-syntax-class-properties": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.8.3.tgz", - "integrity": "sha512-UcAyQWg2bAN647Q+O811tG9MrJ38Z10jjhQdKNAL8fsyPzE3cCN/uT+f55cFVY4aGO4jqJAvmqsuY3GQDwAoXg==", + "node_modules/@babel/plugin-syntax-class-properties": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", + "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-syntax-dynamic-import": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", - "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", + "node_modules/@babel/plugin-syntax-class-static-block": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", + "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-assertions": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.27.1.tgz", + "integrity": "sha512-UT/Jrhw57xg4ILHLFnzFpPDlMbcdEicaAtjPQpbj9wa8T4r5KVWCimHcL/460g8Ht0DMxDyjsLgiWSkVjnwPFg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-attributes": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.27.1.tgz", + "integrity": "sha512-oFT0FrKHgF53f4vOsZGi2Hh3I35PfSmVs4IBFLFj4dnafP+hIWDLg3VyKmUHfLoLHlyxY4C7DGtmHuJgn+IGww==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-meta": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", + "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-syntax-json-strings": { + "node_modules/@babel/plugin-syntax-json-strings": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-syntax-logical-assignment-operators": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.8.3.tgz", - "integrity": "sha512-Zpg2Sgc++37kuFl6ppq2Q7Awc6E6AIW671x5PY8E/f7MCIyPPGK/EoeZXvvY3P42exZ3Q4/t3YOzP/HiN79jDg==", + "node_modules/@babel/plugin-syntax-jsx": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.27.1.tgz", + "integrity": "sha512-y8YTNIeKoyhGd9O0Jiyzyyqk8gdjnumGTQPsz0xOZOQ2RmkVJeZ1vmmfIvFEKqucBG6axJGBZDE/7iI5suUI/w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", + "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-syntax-nullish-coalescing-operator": { + "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-syntax-numeric-separator": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.8.3.tgz", - "integrity": "sha512-H7dCMAdN83PcCmqmkHB5dtp+Xa9a6LKSvA2hiFBC/5alSHxM5VgWZXFqDi0YFe8XNGT6iCa+z4V4zSt/PdZ7Dw==", + "node_modules/@babel/plugin-syntax-numeric-separator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", + "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-syntax-object-rest-spread": { + "node_modules/@babel/plugin-syntax-object-rest-spread": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-syntax-optional-catch-binding": { + "node_modules/@babel/plugin-syntax-optional-catch-binding": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-syntax-optional-chaining": { + "node_modules/@babel/plugin-syntax-optional-chaining": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-syntax-top-level-await": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.8.3.tgz", - "integrity": "sha512-kwj1j9lL/6Wd0hROD3b/OZZ7MSrZLqqn9RAZ5+cYYsflQ9HZBIKCUkr3+uL1MEJ1NePiUbf98jjiMQSv0NMR9g==", + "node_modules/@babel/plugin-syntax-private-property-in-object": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", + "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-arrow-functions": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.8.3.tgz", - "integrity": "sha512-0MRF+KC8EqH4dbuITCWwPSzsyO3HIWWlm30v8BbbpOrS1B++isGxPnnuq/IZvOX5J2D/p7DQalQm+/2PnlKGxg==", + "node_modules/@babel/plugin-syntax-top-level-await": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", + "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-async-to-generator": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.8.3.tgz", - "integrity": "sha512-imt9tFLD9ogt56Dd5CI/6XgpukMwd/fLGSrix2httihVe7LOGVPhyhMh1BU5kDM7iHD08i8uUtmV2sWaBFlHVQ==", + "node_modules/@babel/plugin-syntax-typescript": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.27.1.tgz", + "integrity": "sha512-xfYCBMxveHrRMnAWl1ZlPXOZjzkN82THFvLhQhFXFt81Z5HnN+EtUkZhv/zcKpmT3fzmWZB0ywiBrbC3vogbwQ==", "dev": true, - "requires": { - "@babel/helper-module-imports": "^7.8.3", - "@babel/helper-plugin-utils": "^7.8.3", - "@babel/helper-remap-async-to-generator": "^7.8.3" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-block-scoped-functions": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.8.3.tgz", - "integrity": "sha512-vo4F2OewqjbB1+yaJ7k2EJFHlTP3jR634Z9Cj9itpqNjuLXvhlVxgnjsHsdRgASR8xYDrx6onw4vW5H6We0Jmg==", + "node_modules/@babel/plugin-syntax-unicode-sets-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-unicode-sets-regex/-/plugin-syntax-unicode-sets-regex-7.18.6.tgz", + "integrity": "sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.3" - } - }, - "@babel/plugin-transform-block-scoping": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.8.3.tgz", - "integrity": "sha512-pGnYfm7RNRgYRi7bids5bHluENHqJhrV4bCZRwc5GamaWIIs07N4rZECcmJL6ZClwjDz1GbdMZFtPs27hTB06w==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.3", - "lodash": "^4.17.13" - } - }, - "@babel/plugin-transform-classes": { - "version": "7.9.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.9.5.tgz", - "integrity": "sha512-x2kZoIuLC//O5iA7PEvecB105o7TLzZo8ofBVhP79N+DO3jaX+KYfww9TQcfBEZD0nikNyYcGB1IKtRq36rdmg==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.8.3", - "@babel/helper-define-map": "^7.8.3", - "@babel/helper-function-name": "^7.9.5", - "@babel/helper-optimise-call-expression": "^7.8.3", - "@babel/helper-plugin-utils": "^7.8.3", - "@babel/helper-replace-supers": "^7.8.6", - "@babel/helper-split-export-declaration": "^7.8.3", - "globals": "^11.1.0" - }, + "license": "MIT", "dependencies": { - "@babel/helper-function-name": { - "version": "7.9.5", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.9.5.tgz", - "integrity": "sha512-JVcQZeXM59Cd1qanDUxv9fgJpt3NeKUaqBqUEvfmQ+BCOKq2xUgaWZW2hr0dkbyJgezYuplEoh5knmrnS68efw==", - "dev": true, - "requires": { - "@babel/helper-get-function-arity": "^7.8.3", - "@babel/template": "^7.8.3", - "@babel/types": "^7.9.5" - } - }, - "@babel/helper-validator-identifier": { - "version": "7.9.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.9.5.tgz", - "integrity": "sha512-/8arLKUFq882w4tWGj9JYzRpAlZgiWUJ+dtteNTDqrRBz9Iguck9Rn3ykuBDoUwh2TO4tSAJlrxDUOXWklJe4g==", - "dev": true - }, - "@babel/types": { - "version": "7.9.5", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.9.5.tgz", - "integrity": "sha512-XjnvNqenk818r5zMaba+sLQjnbda31UfUURv3ei0qPQw4u+j2jMyJ5b11y8ZHYTRSI3NnInQkkkRT4fLqqPdHg==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.9.5", - "lodash": "^4.17.13", - "to-fast-properties": "^2.0.0" - } - } + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "@babel/plugin-transform-computed-properties": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.8.3.tgz", - "integrity": "sha512-O5hiIpSyOGdrQZRQ2ccwtTVkgUDBBiCuK//4RJ6UfePllUTCENOzKxfh6ulckXKc0DixTFLCfb2HVkNA7aDpzA==", + "node_modules/@babel/plugin-transform-arrow-functions": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.27.1.tgz", + "integrity": "sha512-8Z4TGic6xW70FKThA5HYEKKyBpOOsucTOD1DjU3fZxDg+K3zBJcXMFnt/4yQiZnf5+MiOMSXQ9PaEK/Ilh1DeA==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-destructuring": { - "version": "7.9.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.9.5.tgz", - "integrity": "sha512-j3OEsGel8nHL/iusv/mRd5fYZ3DrOxWC82x0ogmdN/vHfAP4MYw+AFKYanzWlktNwikKvlzUV//afBW5FTp17Q==", + "node_modules/@babel/plugin-transform-async-generator-functions": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.27.1.tgz", + "integrity": "sha512-eST9RrwlpaoJBDHShc+DS2SG4ATTi2MYNb4OxYkf3n+7eb49LWpnS+HSpVfW4x927qQwgk8A2hGNVaajAEw0EA==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-remap-async-to-generator": "^7.27.1", + "@babel/traverse": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-dotall-regex": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.8.3.tgz", - "integrity": "sha512-kLs1j9Nn4MQoBYdRXH6AeaXMbEJFaFu/v1nQkvib6QzTj8MZI5OQzqmD83/2jEM1z0DLilra5aWO5YpyC0ALIw==", + "node_modules/@babel/plugin-transform-async-to-generator": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.27.1.tgz", + "integrity": "sha512-NREkZsZVJS4xmTr8qzE5y8AfIPqsdQfRuUiLRTEzb7Qii8iFWCyDKaUV2c0rCuh4ljDZ98ALHP/PetiBV2nddA==", "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.8.3", - "@babel/helper-plugin-utils": "^7.8.3" + "license": "MIT", + "dependencies": { + "@babel/helper-module-imports": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-remap-async-to-generator": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-duplicate-keys": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.8.3.tgz", - "integrity": "sha512-s8dHiBUbcbSgipS4SMFuWGqCvyge5V2ZeAWzR6INTVC3Ltjig/Vw1G2Gztv0vU/hRG9X8IvKvYdoksnUfgXOEQ==", + "node_modules/@babel/plugin-transform-block-scoped-functions": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.27.1.tgz", + "integrity": "sha512-cnqkuOtZLapWYZUYM5rVIdv1nXYuFVIltZ6ZJ7nIj585QsjKM5dhL2Fu/lICXZ1OyIAFc7Qy+bvDAtTXqGrlhg==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-exponentiation-operator": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.8.3.tgz", - "integrity": "sha512-zwIpuIymb3ACcInbksHaNcR12S++0MDLKkiqXHl3AzpgdKlFNhog+z/K0+TGW+b0w5pgTq4H6IwV/WhxbGYSjQ==", + "node_modules/@babel/plugin-transform-block-scoping": { + "version": "7.27.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.27.5.tgz", + "integrity": "sha512-JF6uE2s67f0y2RZcm2kpAUEbD50vH62TyWVebxwHAlbSdM49VqPz8t4a1uIjp4NIOIZ4xzLfjY5emt/RCyC7TQ==", "dev": true, - "requires": { - "@babel/helper-builder-binary-assignment-operator-visitor": "^7.8.3", - "@babel/helper-plugin-utils": "^7.8.3" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-for-of": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.9.0.tgz", - "integrity": "sha512-lTAnWOpMwOXpyDx06N+ywmF3jNbafZEqZ96CGYabxHrxNX8l5ny7dt4bK/rGwAh9utyP2b2Hv7PlZh1AAS54FQ==", + "node_modules/@babel/plugin-transform-class-properties": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.27.1.tgz", + "integrity": "sha512-D0VcalChDMtuRvJIu3U/fwWjf8ZMykz5iZsg77Nuj821vCKI3zCyRLwRdWbsuJ/uRwZhZ002QtCqIkwC/ZkvbA==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "license": "MIT", + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-function-name": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.8.3.tgz", - "integrity": "sha512-rO/OnDS78Eifbjn5Py9v8y0aR+aSYhDhqAwVfsTl0ERuMZyr05L1aFSCJnbv2mmsLkit/4ReeQ9N2BgLnOcPCQ==", + "node_modules/@babel/plugin-transform-class-static-block": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.27.1.tgz", + "integrity": "sha512-s734HmYU78MVzZ++joYM+NkJusItbdRcbm+AGRgJCt3iA+yux0QpD9cBVdz3tKyrjVYWRl7j0mHSmv4lhV0aoA==", "dev": true, - "requires": { - "@babel/helper-function-name": "^7.8.3", - "@babel/helper-plugin-utils": "^7.8.3" + "license": "MIT", + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.12.0" } }, - "@babel/plugin-transform-literals": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.8.3.tgz", - "integrity": "sha512-3Tqf8JJ/qB7TeldGl+TT55+uQei9JfYaregDcEAyBZ7akutriFrt6C/wLYIer6OYhleVQvH/ntEhjE/xMmy10A==", + "node_modules/@babel/plugin-transform-classes": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.27.1.tgz", + "integrity": "sha512-7iLhfFAubmpeJe/Wo2TVuDrykh/zlWXLzPNdL0Jqn/Xu8R3QQ8h9ff8FQoISZOsw74/HFqFI7NX63HN7QFIHKA==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "license": "MIT", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.27.1", + "@babel/helper-compilation-targets": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-replace-supers": "^7.27.1", + "@babel/traverse": "^7.27.1", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-member-expression-literals": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.8.3.tgz", - "integrity": "sha512-3Wk2EXhnw+rP+IDkK6BdtPKsUE5IeZ6QOGrPYvw52NwBStw9V1ZVzxgK6fSKSxqUvH9eQPR3tm3cOq79HlsKYA==", + "node_modules/@babel/plugin-transform-computed-properties": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.27.1.tgz", + "integrity": "sha512-lj9PGWvMTVksbWiDT2tW68zGS/cyo4AkZ/QTp0sQT0mjPopCmrSkzxeXkznjqBxzDI6TclZhOJbBmbBLjuOZUw==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/template": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-modules-amd": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.9.0.tgz", - "integrity": "sha512-vZgDDF003B14O8zJy0XXLnPH4sg+9X5hFBBGN1V+B2rgrB+J2xIypSN6Rk9imB2hSTHQi5OHLrFWsZab1GMk+Q==", + "node_modules/@babel/plugin-transform-destructuring": { + "version": "7.27.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.27.3.tgz", + "integrity": "sha512-s4Jrok82JpiaIprtY2nHsYmrThKvvwgHwjgd7UMiYhZaN0asdXNLr0y+NjTfkA7SyQE5i2Fb7eawUOZmLvyqOA==", "dev": true, - "requires": { - "@babel/helper-module-transforms": "^7.9.0", - "@babel/helper-plugin-utils": "^7.8.3", - "babel-plugin-dynamic-import-node": "^2.3.0" - } + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } }, - "@babel/plugin-transform-modules-commonjs": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.9.0.tgz", - "integrity": "sha512-qzlCrLnKqio4SlgJ6FMMLBe4bySNis8DFn1VkGmOcxG9gqEyPIOzeQrA//u0HAKrWpJlpZbZMPB1n/OPa4+n8g==", + "node_modules/@babel/plugin-transform-dotall-regex": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.27.1.tgz", + "integrity": "sha512-gEbkDVGRvjj7+T1ivxrfgygpT7GUd4vmODtYpbs0gZATdkX8/iSnOtZSxiZnsgm1YjTgjI6VKBGSJJevkrclzw==", "dev": true, - "requires": { - "@babel/helper-module-transforms": "^7.9.0", - "@babel/helper-plugin-utils": "^7.8.3", - "@babel/helper-simple-access": "^7.8.3", - "babel-plugin-dynamic-import-node": "^2.3.0" + "license": "MIT", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-modules-systemjs": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.9.0.tgz", - "integrity": "sha512-FsiAv/nao/ud2ZWy4wFacoLOm5uxl0ExSQ7ErvP7jpoihLR6Cq90ilOFyX9UXct3rbtKsAiZ9kFt5XGfPe/5SQ==", + "node_modules/@babel/plugin-transform-duplicate-keys": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.27.1.tgz", + "integrity": "sha512-MTyJk98sHvSs+cvZ4nOauwTTG1JeonDjSGvGGUNHreGQns+Mpt6WX/dVzWBHgg+dYZhkC4X+zTDfkTU+Vy9y7Q==", "dev": true, - "requires": { - "@babel/helper-hoist-variables": "^7.8.3", - "@babel/helper-module-transforms": "^7.9.0", - "@babel/helper-plugin-utils": "^7.8.3", - "babel-plugin-dynamic-import-node": "^2.3.0" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-modules-umd": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.9.0.tgz", - "integrity": "sha512-uTWkXkIVtg/JGRSIABdBoMsoIeoHQHPTL0Y2E7xf5Oj7sLqwVsNXOkNk0VJc7vF0IMBsPeikHxFjGe+qmwPtTQ==", + "node_modules/@babel/plugin-transform-duplicate-named-capturing-groups-regex": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-named-capturing-groups-regex/-/plugin-transform-duplicate-named-capturing-groups-regex-7.27.1.tgz", + "integrity": "sha512-hkGcueTEzuhB30B3eJCbCYeCaaEQOmQR0AdvzpD4LoN0GXMWzzGSuRrxR2xTnCrvNbVwK9N6/jQ92GSLfiZWoQ==", "dev": true, - "requires": { - "@babel/helper-module-transforms": "^7.9.0", - "@babel/helper-plugin-utils": "^7.8.3" + "license": "MIT", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "@babel/plugin-transform-named-capturing-groups-regex": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.8.3.tgz", - "integrity": "sha512-f+tF/8UVPU86TrCb06JoPWIdDpTNSGGcAtaD9mLP0aYGA0OS0j7j7DHJR0GTFrUZPUU6loZhbsVZgTh0N+Qdnw==", + "node_modules/@babel/plugin-transform-dynamic-import": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.27.1.tgz", + "integrity": "sha512-MHzkWQcEmjzzVW9j2q8LGjwGWpG2mjwaaB0BNQwst3FIjqsg8Ct/mIZlvSPJvfi9y2AC8mi/ktxbFVL9pZ1I4A==", "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.8.3" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-new-target": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.8.3.tgz", - "integrity": "sha512-QuSGysibQpyxexRyui2vca+Cmbljo8bcRckgzYV4kRIsHpVeyeC3JDO63pY+xFZ6bWOBn7pfKZTqV4o/ix9sFw==", + "node_modules/@babel/plugin-transform-exponentiation-operator": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.27.1.tgz", + "integrity": "sha512-uspvXnhHvGKf2r4VVtBpeFnuDWsJLQ6MF6lGJLC89jBR1uoVeqM416AZtTuhTezOfgHicpJQmoD5YUakO/YmXQ==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-object-super": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.8.3.tgz", - "integrity": "sha512-57FXk+gItG/GejofIyLIgBKTas4+pEU47IXKDBWFTxdPd7F80H8zybyAY7UoblVfBhBGs2EKM+bJUu2+iUYPDQ==", + "node_modules/@babel/plugin-transform-export-namespace-from": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.27.1.tgz", + "integrity": "sha512-tQvHWSZ3/jH2xuq/vZDy0jNn+ZdXJeM8gHvX4lnJmsc3+50yPlWdZXIc5ay+umX+2/tJIqHqiEqcJvxlmIvRvQ==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.3", - "@babel/helper-replace-supers": "^7.8.3" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-parameters": { - "version": "7.9.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.9.5.tgz", - "integrity": "sha512-0+1FhHnMfj6lIIhVvS4KGQJeuhe1GI//h5uptK4PvLt+BGBxsoUJbd3/IW002yk//6sZPlFgsG1hY6OHLcy6kA==", + "node_modules/@babel/plugin-transform-for-of": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.27.1.tgz", + "integrity": "sha512-BfbWFFEJFQzLCQ5N8VocnCtA8J1CLkNTe2Ms2wocj75dd6VpiqS5Z5quTYcUoo4Yq+DN0rtikODccuv7RU81sw==", "dev": true, - "requires": { - "@babel/helper-get-function-arity": "^7.8.3", - "@babel/helper-plugin-utils": "^7.8.3" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-skip-transparent-expression-wrappers": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-property-literals": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.8.3.tgz", - "integrity": "sha512-uGiiXAZMqEoQhRWMK17VospMZh5sXWg+dlh2soffpkAl96KAm+WZuJfa6lcELotSRmooLqg0MWdH6UUq85nmmg==", + "node_modules/@babel/plugin-transform-function-name": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.27.1.tgz", + "integrity": "sha512-1bQeydJF9Nr1eBCMMbC+hdwmRlsv5XYOMu03YSWFwNs0HsAmtSxxF1fyuYPqemVldVyFmlCU7w8UE14LupUSZQ==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "license": "MIT", + "dependencies": { + "@babel/helper-compilation-targets": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/traverse": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-regenerator": { - "version": "7.8.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.8.7.tgz", - "integrity": "sha512-TIg+gAl4Z0a3WmD3mbYSk+J9ZUH6n/Yc57rtKRnlA/7rcCvpekHXe0CMZHP1gYp7/KLe9GHTuIba0vXmls6drA==", + "node_modules/@babel/plugin-transform-json-strings": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.27.1.tgz", + "integrity": "sha512-6WVLVJiTjqcQauBhn1LkICsR2H+zm62I3h9faTDKt1qP4jn2o72tSvqMwtGFKGTpojce0gJs+76eZ2uCHRZh0Q==", "dev": true, - "requires": { - "regenerator-transform": "^0.14.2" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-reserved-words": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.8.3.tgz", - "integrity": "sha512-mwMxcycN3omKFDjDQUl+8zyMsBfjRFr0Zn/64I41pmjv4NJuqcYlEtezwYtw9TFd9WR1vN5kiM+O0gMZzO6L0A==", + "node_modules/@babel/plugin-transform-literals": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.27.1.tgz", + "integrity": "sha512-0HCFSepIpLTkLcsi86GG3mTUzxV5jpmbv97hTETW3yzrAij8aqlD36toB1D0daVFJM8NK6GvKO0gslVQmm+zZA==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-shorthand-properties": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.8.3.tgz", - "integrity": "sha512-I9DI6Odg0JJwxCHzbzW08ggMdCezoWcuQRz3ptdudgwaHxTjxw5HgdFJmZIkIMlRymL6YiZcped4TTCB0JcC8w==", + "node_modules/@babel/plugin-transform-logical-assignment-operators": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.27.1.tgz", + "integrity": "sha512-SJvDs5dXxiae4FbSL1aBJlG4wvl594N6YEVVn9e3JGulwioy6z3oPjx/sQBO3Y4NwUu5HNix6KJ3wBZoewcdbw==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-spread": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.8.3.tgz", - "integrity": "sha512-CkuTU9mbmAoFOI1tklFWYYbzX5qCIZVXPVy0jpXgGwkplCndQAa58s2jr66fTeQnA64bDox0HL4U56CFYoyC7g==", + "node_modules/@babel/plugin-transform-member-expression-literals": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.27.1.tgz", + "integrity": "sha512-hqoBX4dcZ1I33jCSWcXrP+1Ku7kdqXf1oeah7ooKOIiAdKQ+uqftgCFNOSzA5AMS2XIHEYeGFg4cKRCdpxzVOQ==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-sticky-regex": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.8.3.tgz", - "integrity": "sha512-9Spq0vGCD5Bb4Z/ZXXSK5wbbLFMG085qd2vhL1JYu1WcQ5bXqZBAYRzU1d+p79GcHs2szYv5pVQCX13QgldaWw==", + "node_modules/@babel/plugin-transform-modules-amd": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.27.1.tgz", + "integrity": "sha512-iCsytMg/N9/oFq6n+gFTvUYDZQOMK5kEdeYxmxt91fcJGycfxVP9CnrxoliM0oumFERba2i8ZtwRUCMhvP1LnA==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.3", - "@babel/helper-regex": "^7.8.3" + "license": "MIT", + "dependencies": { + "@babel/helper-module-transforms": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-template-literals": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.8.3.tgz", - "integrity": "sha512-820QBtykIQOLFT8NZOcTRJ1UNuztIELe4p9DCgvj4NK+PwluSJ49we7s9FB1HIGNIYT7wFUJ0ar2QpCDj0escQ==", + "node_modules/@babel/plugin-transform-modules-commonjs": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.27.1.tgz", + "integrity": "sha512-OJguuwlTYlN0gBZFRPqwOGNWssZjfIUdS7HMYtN8c1KmwpwHFBwTeFZrg9XZa+DFTitWOW5iTAG7tyCUPsCCyw==", "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.8.3", - "@babel/helper-plugin-utils": "^7.8.3" + "license": "MIT", + "dependencies": { + "@babel/helper-module-transforms": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-typeof-symbol": { - "version": "7.8.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.8.4.tgz", - "integrity": "sha512-2QKyfjGdvuNfHsb7qnBBlKclbD4CfshH2KvDabiijLMGXPHJXGxtDzwIF7bQP+T0ysw8fYTtxPafgfs/c1Lrqg==", + "node_modules/@babel/plugin-transform-modules-systemjs": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.27.1.tgz", + "integrity": "sha512-w5N1XzsRbc0PQStASMksmUeqECuzKuTJer7kFagK8AXgpCMkeDMO5S+aaFb7A51ZYDF7XI34qsTX+fkHiIm5yA==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "license": "MIT", + "dependencies": { + "@babel/helper-module-transforms": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-validator-identifier": "^7.27.1", + "@babel/traverse": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-unicode-regex": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.8.3.tgz", - "integrity": "sha512-+ufgJjYdmWfSQ+6NS9VGUR2ns8cjJjYbrbi11mZBTaWm+Fui/ncTLFF28Ei1okavY+xkojGr1eJxNsWYeA5aZw==", - "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.8.3", - "@babel/helper-plugin-utils": "^7.8.3" - } - }, - "@babel/preset-env": { - "version": "7.9.5", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.9.5.tgz", - "integrity": "sha512-eWGYeADTlPJH+wq1F0wNfPbVS1w1wtmMJiYk55Td5Yu28AsdR9AsC97sZ0Qq8fHqQuslVSIYSGJMcblr345GfQ==", - "dev": true, - "requires": { - "@babel/compat-data": "^7.9.0", - "@babel/helper-compilation-targets": "^7.8.7", - "@babel/helper-module-imports": "^7.8.3", - "@babel/helper-plugin-utils": "^7.8.3", - "@babel/plugin-proposal-async-generator-functions": "^7.8.3", - "@babel/plugin-proposal-dynamic-import": "^7.8.3", - "@babel/plugin-proposal-json-strings": "^7.8.3", - "@babel/plugin-proposal-nullish-coalescing-operator": "^7.8.3", - "@babel/plugin-proposal-numeric-separator": "^7.8.3", - "@babel/plugin-proposal-object-rest-spread": "^7.9.5", - "@babel/plugin-proposal-optional-catch-binding": "^7.8.3", - "@babel/plugin-proposal-optional-chaining": "^7.9.0", - "@babel/plugin-proposal-unicode-property-regex": "^7.8.3", - "@babel/plugin-syntax-async-generators": "^7.8.0", - "@babel/plugin-syntax-dynamic-import": "^7.8.0", - "@babel/plugin-syntax-json-strings": "^7.8.0", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.0", - "@babel/plugin-syntax-numeric-separator": "^7.8.0", - "@babel/plugin-syntax-object-rest-spread": "^7.8.0", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.0", - "@babel/plugin-syntax-optional-chaining": "^7.8.0", - "@babel/plugin-syntax-top-level-await": "^7.8.3", - "@babel/plugin-transform-arrow-functions": "^7.8.3", - "@babel/plugin-transform-async-to-generator": "^7.8.3", - "@babel/plugin-transform-block-scoped-functions": "^7.8.3", - "@babel/plugin-transform-block-scoping": "^7.8.3", - "@babel/plugin-transform-classes": "^7.9.5", - "@babel/plugin-transform-computed-properties": "^7.8.3", - "@babel/plugin-transform-destructuring": "^7.9.5", - "@babel/plugin-transform-dotall-regex": "^7.8.3", - "@babel/plugin-transform-duplicate-keys": "^7.8.3", - "@babel/plugin-transform-exponentiation-operator": "^7.8.3", - "@babel/plugin-transform-for-of": "^7.9.0", - "@babel/plugin-transform-function-name": "^7.8.3", - "@babel/plugin-transform-literals": "^7.8.3", - "@babel/plugin-transform-member-expression-literals": "^7.8.3", - "@babel/plugin-transform-modules-amd": "^7.9.0", - "@babel/plugin-transform-modules-commonjs": "^7.9.0", - "@babel/plugin-transform-modules-systemjs": "^7.9.0", - "@babel/plugin-transform-modules-umd": "^7.9.0", - "@babel/plugin-transform-named-capturing-groups-regex": "^7.8.3", - "@babel/plugin-transform-new-target": "^7.8.3", - "@babel/plugin-transform-object-super": "^7.8.3", - "@babel/plugin-transform-parameters": "^7.9.5", - "@babel/plugin-transform-property-literals": "^7.8.3", - "@babel/plugin-transform-regenerator": "^7.8.7", - "@babel/plugin-transform-reserved-words": "^7.8.3", - "@babel/plugin-transform-shorthand-properties": "^7.8.3", - "@babel/plugin-transform-spread": "^7.8.3", - "@babel/plugin-transform-sticky-regex": "^7.8.3", - "@babel/plugin-transform-template-literals": "^7.8.3", - "@babel/plugin-transform-typeof-symbol": "^7.8.4", - "@babel/plugin-transform-unicode-regex": "^7.8.3", - "@babel/preset-modules": "^0.1.3", - "@babel/types": "^7.9.5", - "browserslist": "^4.9.1", - "core-js-compat": "^3.6.2", - "invariant": "^2.2.2", - "levenary": "^1.1.1", - "semver": "^5.5.0" - }, - "dependencies": { - "@babel/helper-validator-identifier": { - "version": "7.9.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.9.5.tgz", - "integrity": "sha512-/8arLKUFq882w4tWGj9JYzRpAlZgiWUJ+dtteNTDqrRBz9Iguck9Rn3ykuBDoUwh2TO4tSAJlrxDUOXWklJe4g==", - "dev": true - }, - "@babel/types": { - "version": "7.9.5", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.9.5.tgz", - "integrity": "sha512-XjnvNqenk818r5zMaba+sLQjnbda31UfUURv3ei0qPQw4u+j2jMyJ5b11y8ZHYTRSI3NnInQkkkRT4fLqqPdHg==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.9.5", - "lodash": "^4.17.13", - "to-fast-properties": "^2.0.0" - } - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - } + "node_modules/@babel/plugin-transform-modules-umd": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.27.1.tgz", + "integrity": "sha512-iQBE/xC5BV1OxJbp6WG7jq9IWiD+xxlZhLrdwpPkTX3ydmXdvoCpyfJN7acaIBZaOqTfr76pgzqBJflNbeRK+w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-module-transforms": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/preset-modules": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.3.tgz", - "integrity": "sha512-Ra3JXOHBq2xd56xSF7lMKXdjBn3T772Y1Wet3yWnkDly9zHvJki029tAFzvAAK5cf4YV3yoxuP61crYRol6SVg==", + "node_modules/@babel/plugin-transform-named-capturing-groups-regex": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.27.1.tgz", + "integrity": "sha512-SstR5JYy8ddZvD6MhV0tM/j16Qds4mIpJTOd1Yu9J9pJjH93bxHECF7pgtc28XvkzTD6Pxcm/0Z73Hvk7kb3Ng==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", - "@babel/plugin-transform-dotall-regex": "^7.4.4", - "@babel/types": "^7.4.4", - "esutils": "^2.0.2" + "license": "MIT", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "@babel/runtime": { - "version": "7.9.2", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.9.2.tgz", - "integrity": "sha512-NE2DtOdufG7R5vnfQUTehdTfNycfUANEtCa9PssN9O/xmTzP4E08UI797ixaei6hBEVL9BI/PsdJS5x7mWoB9Q==", + "node_modules/@babel/plugin-transform-new-target": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.27.1.tgz", + "integrity": "sha512-f6PiYeqXQ05lYq3TIfIDu/MtliKUbNwkGApPUvyo6+tc7uaR4cPjPe7DFPr15Uyycg2lZU6btZ575CuQoYh7MQ==", "dev": true, - "requires": { - "regenerator-runtime": "^0.13.4" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/template": { - "version": "7.8.6", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.8.6.tgz", - "integrity": "sha512-zbMsPMy/v0PWFZEhQJ66bqjhH+z0JgMoBWuikXybgG3Gkd/3t5oQ1Rw2WQhnSrsOmsKXnZOx15tkC4qON/+JPg==", + "node_modules/@babel/plugin-transform-nullish-coalescing-operator": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.27.1.tgz", + "integrity": "sha512-aGZh6xMo6q9vq1JGcw58lZ1Z0+i0xB2x0XaauNIUXd6O1xXc3RwoWEBlsTQrY4KQ9Jf0s5rgD6SiNkaUdJegTA==", "dev": true, - "requires": { - "@babel/code-frame": "^7.8.3", - "@babel/parser": "^7.8.6", - "@babel/types": "^7.8.6" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/traverse": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.9.0.tgz", - "integrity": "sha512-jAZQj0+kn4WTHO5dUZkZKhbFrqZE7K5LAQ5JysMnmvGij+wOdr+8lWqPeW0BcF4wFwrEXXtdGO7wcV6YPJcf3w==", + "node_modules/@babel/plugin-transform-numeric-separator": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.27.1.tgz", + "integrity": "sha512-fdPKAcujuvEChxDBJ5c+0BTaS6revLV7CJL08e4m3de8qJfNIuCc2nc7XJYOjBoTMJeqSmwXJ0ypE14RCjLwaw==", "dev": true, - "requires": { - "@babel/code-frame": "^7.8.3", - "@babel/generator": "^7.9.0", - "@babel/helper-function-name": "^7.8.3", - "@babel/helper-split-export-declaration": "^7.8.3", - "@babel/parser": "^7.9.0", - "@babel/types": "^7.9.0", - "debug": "^4.1.0", - "globals": "^11.1.0", - "lodash": "^4.17.13" - }, - "dependencies": { - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - } + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/types": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.9.0.tgz", - "integrity": "sha512-BS9JKfXkzzJl8RluW4JGknzpiUV7ZrvTayM6yfqLTVBEnFtyowVIOu6rqxRd5cVO6yGoWf4T8u8dgK9oB+GCng==", + "node_modules/@babel/plugin-transform-object-rest-spread": { + "version": "7.27.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.27.3.tgz", + "integrity": "sha512-7ZZtznF9g4l2JCImCo5LNKFHB5eXnN39lLtLY5Tg+VkR0jwOt7TBciMckuiQIOIW7L5tkQOCh3bVGYeXgMx52Q==", "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.9.0", - "lodash": "^4.17.13", - "to-fast-properties": "^2.0.0" + "license": "MIT", + "dependencies": { + "@babel/helper-compilation-targets": "^7.27.2", + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/plugin-transform-destructuring": "^7.27.3", + "@babel/plugin-transform-parameters": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@bcoe/v8-coverage": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", - "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", - "dev": true - }, - "@cnakazawa/watch": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@cnakazawa/watch/-/watch-1.0.4.tgz", - "integrity": "sha512-v9kIhKwjeZThiWrLmj0y17CWoyddASLj9O2yvbZkbvw/N3rWOYy9zkV66ursAoVr0mV15bL8g0c4QZUE6cdDoQ==", + "node_modules/@babel/plugin-transform-object-super": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.27.1.tgz", + "integrity": "sha512-SFy8S9plRPbIcxlJ8A6mT/CxFdJx/c04JEctz4jf8YZaVS2px34j7NXRrlGlHkN/M2gnpL37ZpGRGVFLd3l8Ng==", "dev": true, - "requires": { - "exec-sh": "^0.3.2", - "minimist": "^1.2.0" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-replace-supers": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@commitlint/cli": { - "version": "8.3.5", - "resolved": "https://registry.npmjs.org/@commitlint/cli/-/cli-8.3.5.tgz", - "integrity": "sha512-6+L0vbw55UEdht71pgWOE55SRgb+8OHcEwGDB234VlIBFGK9P2QOBU7MHiYJ5cjdjCQ0rReNrGjOHmJ99jwf0w==", + "node_modules/@babel/plugin-transform-optional-catch-binding": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.27.1.tgz", + "integrity": "sha512-txEAEKzYrHEX4xSZN4kJ+OfKXFVSWKB2ZxM9dpcE3wT7smwkNmXo5ORRlVzMVdJbD+Q8ILTgSD7959uj+3Dm3Q==", "dev": true, - "requires": { - "@commitlint/format": "^8.3.4", - "@commitlint/lint": "^8.3.5", - "@commitlint/load": "^8.3.5", - "@commitlint/read": "^8.3.4", - "babel-polyfill": "6.26.0", - "chalk": "2.4.2", - "get-stdin": "7.0.0", - "lodash": "4.17.15", - "meow": "5.0.0", - "resolve-from": "5.0.0", - "resolve-global": "1.0.0" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@commitlint/config-conventional": { - "version": "8.3.4", - "resolved": "https://registry.npmjs.org/@commitlint/config-conventional/-/config-conventional-8.3.4.tgz", - "integrity": "sha512-w0Yc5+aVAjZgjYqx29igBOnVCj8O22gy3Vo6Fyp7PwoS7+AYS1x3sN7IBq6i7Ae15Mv5P+rEx1pkxXo5zOMe4g==", + "node_modules/@babel/plugin-transform-optional-chaining": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.27.1.tgz", + "integrity": "sha512-BQmKPPIuc8EkZgNKsv0X4bPmOoayeu4F1YCwx2/CfmDSXDbp7GnzlUH+/ul5VGfRg1AoFPsrIThlEBj2xb4CAg==", "dev": true, - "requires": { - "conventional-changelog-conventionalcommits": "4.2.1" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-skip-transparent-expression-wrappers": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@commitlint/ensure": { - "version": "8.3.4", - "resolved": "https://registry.npmjs.org/@commitlint/ensure/-/ensure-8.3.4.tgz", - "integrity": "sha512-8NW77VxviLhD16O3EUd02lApMFnrHexq10YS4F4NftNoErKbKaJ0YYedktk2boKrtNRf/gQHY/Qf65edPx4ipw==", + "node_modules/@babel/plugin-transform-parameters": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.27.1.tgz", + "integrity": "sha512-018KRk76HWKeZ5l4oTj2zPpSh+NbGdt0st5S6x0pga6HgrjBOJb24mMDHorFopOOd6YHkLgOZ+zaCjZGPO4aKg==", "dev": true, - "requires": { - "lodash": "4.17.15" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@commitlint/execute-rule": { - "version": "8.3.4", - "resolved": "https://registry.npmjs.org/@commitlint/execute-rule/-/execute-rule-8.3.4.tgz", - "integrity": "sha512-f4HigYjeIBn9f7OuNv5zh2y5vWaAhNFrfeul8CRJDy82l3Y+09lxOTGxfF3uMXKrZq4LmuK6qvvRCZ8mUrVvzQ==", - "dev": true - }, - "@commitlint/format": { - "version": "8.3.4", - "resolved": "https://registry.npmjs.org/@commitlint/format/-/format-8.3.4.tgz", - "integrity": "sha512-809wlQ/ND6CLZON+w2Rb3YM2TLNDfU2xyyqpZeqzf2reJNpySMSUAeaO/fNDJSOKIsOsR3bI01rGu6hv28k+Nw==", + "node_modules/@babel/plugin-transform-private-methods": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.27.1.tgz", + "integrity": "sha512-10FVt+X55AjRAYI9BrdISN9/AQWHqldOeZDUoLyif1Kn05a56xVBXb8ZouL8pZ9jem8QpXaOt8TS7RHUIS+GPA==", "dev": true, - "requires": { - "chalk": "^2.0.1" + "license": "MIT", + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@commitlint/is-ignored": { - "version": "8.3.5", - "resolved": "https://registry.npmjs.org/@commitlint/is-ignored/-/is-ignored-8.3.5.tgz", - "integrity": "sha512-Zo+8a6gJLFDTqyNRx53wQi/XTiz8mncvmWf/4oRG+6WRcBfjSSHY7KPVj5Y6UaLy2EgZ0WQ2Tt6RdTDeQiQplA==", + "node_modules/@babel/plugin-transform-private-property-in-object": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.27.1.tgz", + "integrity": "sha512-5J+IhqTi1XPa0DXF83jYOaARrX+41gOewWbkPyjMNRDqgOCqdffGh8L3f/Ek5utaEBZExjSAzcyjmV9SSAWObQ==", "dev": true, - "requires": { - "semver": "6.3.0" + "license": "MIT", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.27.1", + "@babel/helper-create-class-features-plugin": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@commitlint/lint": { - "version": "8.3.5", - "resolved": "https://registry.npmjs.org/@commitlint/lint/-/lint-8.3.5.tgz", - "integrity": "sha512-02AkI0a6PU6rzqUvuDkSi6rDQ2hUgkq9GpmdJqfai5bDbxx2939mK4ZO+7apbIh4H6Pae7EpYi7ffxuJgm+3hQ==", + "node_modules/@babel/plugin-transform-property-literals": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.27.1.tgz", + "integrity": "sha512-oThy3BCuCha8kDZ8ZkgOg2exvPYUlprMukKQXI1r1pJ47NCvxfkEy8vK+r/hT9nF0Aa4H1WUPZZjHTFtAhGfmQ==", "dev": true, - "requires": { - "@commitlint/is-ignored": "^8.3.5", - "@commitlint/parse": "^8.3.4", - "@commitlint/rules": "^8.3.4", - "babel-runtime": "^6.23.0", - "lodash": "4.17.15" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@commitlint/load": { - "version": "8.3.5", - "resolved": "https://registry.npmjs.org/@commitlint/load/-/load-8.3.5.tgz", - "integrity": "sha512-poF7R1CtQvIXRmVIe63FjSQmN9KDqjRtU5A6hxqXBga87yB2VUJzic85TV6PcQc+wStk52cjrMI+g0zFx+Zxrw==", + "node_modules/@babel/plugin-transform-regenerator": { + "version": "7.27.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.27.5.tgz", + "integrity": "sha512-uhB8yHerfe3MWnuLAhEbeQ4afVoqv8BQsPqrTv7e/jZ9y00kJL6l9a/f4OWaKxotmjzewfEyXE1vgDJenkQ2/Q==", "dev": true, - "requires": { - "@commitlint/execute-rule": "^8.3.4", - "@commitlint/resolve-extends": "^8.3.5", - "babel-runtime": "^6.23.0", - "chalk": "2.4.2", - "cosmiconfig": "^5.2.0", - "lodash": "4.17.15", - "resolve-from": "^5.0.0" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@commitlint/message": { - "version": "8.3.4", - "resolved": "https://registry.npmjs.org/@commitlint/message/-/message-8.3.4.tgz", - "integrity": "sha512-nEj5tknoOKXqBsaQtCtgPcsAaf5VCg3+fWhss4Vmtq40633xLq0irkdDdMEsYIx8rGR0XPBTukqzln9kAWCkcA==", - "dev": true - }, - "@commitlint/parse": { - "version": "8.3.4", - "resolved": "https://registry.npmjs.org/@commitlint/parse/-/parse-8.3.4.tgz", - "integrity": "sha512-b3uQvpUQWC20EBfKSfMRnyx5Wc4Cn778bVeVOFErF/cXQK725L1bYFvPnEjQO/GT8yGVzq2wtLaoEqjm1NJ/Bw==", + "node_modules/@babel/plugin-transform-regexp-modifiers": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regexp-modifiers/-/plugin-transform-regexp-modifiers-7.27.1.tgz", + "integrity": "sha512-TtEciroaiODtXvLZv4rmfMhkCv8jx3wgKpL68PuiPh2M4fvz5jhsA7697N1gMvkvr/JTF13DrFYyEbY9U7cVPA==", "dev": true, - "requires": { - "conventional-changelog-angular": "^1.3.3", - "conventional-commits-parser": "^3.0.0", - "lodash": "^4.17.11" + "license": "MIT", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "@commitlint/read": { - "version": "8.3.4", - "resolved": "https://registry.npmjs.org/@commitlint/read/-/read-8.3.4.tgz", - "integrity": "sha512-FKv1kHPrvcAG5j+OSbd41IWexsbLhfIXpxVC/YwQZO+FR0EHmygxQNYs66r+GnhD1EfYJYM4WQIqd5bJRx6OIw==", + "node_modules/@babel/plugin-transform-reserved-words": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.27.1.tgz", + "integrity": "sha512-V2ABPHIJX4kC7HegLkYoDpfg9PVmuWy/i6vUM5eGK22bx4YVFD3M5F0QQnWQoDs6AGsUWTVOopBiMFQgHaSkVw==", "dev": true, - "requires": { - "@commitlint/top-level": "^8.3.4", - "@marionebl/sander": "^0.6.0", - "babel-runtime": "^6.23.0", - "git-raw-commits": "^2.0.0" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@commitlint/resolve-extends": { - "version": "8.3.5", - "resolved": "https://registry.npmjs.org/@commitlint/resolve-extends/-/resolve-extends-8.3.5.tgz", - "integrity": "sha512-nHhFAK29qiXNe6oH6uG5wqBnCR+BQnxlBW/q5fjtxIaQALgfoNLHwLS9exzbIRFqwJckpR6yMCfgMbmbAOtklQ==", + "node_modules/@babel/plugin-transform-shorthand-properties": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.27.1.tgz", + "integrity": "sha512-N/wH1vcn4oYawbJ13Y/FxcQrWk63jhfNa7jef0ih7PHSIHX2LB7GWE1rkPrOnka9kwMxb6hMl19p7lidA+EHmQ==", "dev": true, - "requires": { - "import-fresh": "^3.0.0", - "lodash": "4.17.15", - "resolve-from": "^5.0.0", - "resolve-global": "^1.0.0" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@commitlint/rules": { - "version": "8.3.4", - "resolved": "https://registry.npmjs.org/@commitlint/rules/-/rules-8.3.4.tgz", - "integrity": "sha512-xuC9dlqD5xgAoDFgnbs578cJySvwOSkMLQyZADb1xD5n7BNcUJfP8WjT9W1Aw8K3Wf8+Ym/ysr9FZHXInLeaRg==", + "node_modules/@babel/plugin-transform-spread": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.27.1.tgz", + "integrity": "sha512-kpb3HUqaILBJcRFVhFUs6Trdd4mkrzcGXss+6/mxUd273PfbWqSDHRzMT2234gIg2QYfAjvXLSquP1xECSg09Q==", "dev": true, - "requires": { - "@commitlint/ensure": "^8.3.4", - "@commitlint/message": "^8.3.4", - "@commitlint/to-lines": "^8.3.4", - "babel-runtime": "^6.23.0" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-skip-transparent-expression-wrappers": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@commitlint/to-lines": { - "version": "8.3.4", - "resolved": "https://registry.npmjs.org/@commitlint/to-lines/-/to-lines-8.3.4.tgz", - "integrity": "sha512-5AvcdwRsMIVq0lrzXTwpbbG5fKRTWcHkhn/hCXJJ9pm1JidsnidS1y0RGkb3O50TEHGewhXwNoavxW9VToscUA==", - "dev": true - }, - "@commitlint/top-level": { - "version": "8.3.4", - "resolved": "https://registry.npmjs.org/@commitlint/top-level/-/top-level-8.3.4.tgz", - "integrity": "sha512-nOaeLBbAqSZNpKgEtO6NAxmui1G8ZvLG+0wb4rvv6mWhPDzK1GNZkCd8FUZPahCoJ1iHDoatw7F8BbJLg4nDjg==", + "node_modules/@babel/plugin-transform-sticky-regex": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.27.1.tgz", + "integrity": "sha512-lhInBO5bi/Kowe2/aLdBAawijx+q1pQzicSgnkB6dUPc1+RC8QmJHKf2OjvU+NZWitguJHEaEmbV6VWEouT58g==", "dev": true, - "requires": { - "find-up": "^4.0.0" - }, + "license": "MIT", "dependencies": { - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "requires": { - "p-locate": "^4.1.0" - } - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "requires": { - "p-limit": "^2.2.0" - } - }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - } + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@csstools/convert-colors": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@csstools/convert-colors/-/convert-colors-1.4.0.tgz", - "integrity": "sha512-5a6wqoJV/xEdbRNKVo6I4hO3VjyDq//8q2f9I6PBAvMesJHFauXDorcNCsr9RzvsZnaWi5NYCcfyqP1QeFHFbw==", - "dev": true - }, - "@istanbuljs/load-nyc-config": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.0.0.tgz", - "integrity": "sha512-ZR0rq/f/E4f4XcgnDvtMWXCUJpi8eO0rssVhmztsZqLIEFA9UUP9zmpE0VxlM+kv/E1ul2I876Fwil2ayptDVg==", + "node_modules/@babel/plugin-transform-template-literals": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.27.1.tgz", + "integrity": "sha512-fBJKiV7F2DxZUkg5EtHKXQdbsbURW3DZKQUWphDum0uRP6eHGGa/He9mc0mypL680pb+e/lDIthRohlv8NCHkg==", "dev": true, - "requires": { - "camelcase": "^5.3.1", - "find-up": "^4.1.0", - "js-yaml": "^3.13.1", - "resolve-from": "^5.0.0" - }, + "license": "MIT", "dependencies": { - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "requires": { - "p-locate": "^4.1.0" - } - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "requires": { - "p-limit": "^2.2.0" - } - }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - } + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@istanbuljs/schema": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.2.tgz", - "integrity": "sha512-tsAQNx32a8CoFhjhijUIhI4kccIAgmGhy8LZMZgGfmXcpMbPRUqn5LWmgRttILi6yeGmBJd2xsPkFMs0PzgPCw==", - "dev": true - }, - "@jest/console": { - "version": "25.4.0", - "resolved": "https://registry.npmjs.org/@jest/console/-/console-25.4.0.tgz", - "integrity": "sha512-CfE0erx4hdJ6t7RzAcE1wLG6ZzsHSmybvIBQDoCkDM1QaSeWL9wJMzID/2BbHHa7ll9SsbbK43HjbERbBaFX2A==", - "dev": true, - "requires": { - "@jest/types": "^25.4.0", - "chalk": "^3.0.0", - "jest-message-util": "^25.4.0", - "jest-util": "^25.4.0", - "slash": "^3.0.0" - }, + "node_modules/@babel/plugin-transform-typeof-symbol": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.27.1.tgz", + "integrity": "sha512-RiSILC+nRJM7FY5srIyc4/fGIwUhyDuuBSdWn4y6yT6gm652DpCHZjIipgn6B7MQ1ITOUnAKWixEUjQRIBIcLw==", + "dev": true, + "license": "MIT", "dependencies": { - "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "requires": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true - }, - "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@jest/core": { - "version": "25.4.0", - "resolved": "https://registry.npmjs.org/@jest/core/-/core-25.4.0.tgz", - "integrity": "sha512-h1x9WSVV0+TKVtATGjyQIMJENs8aF6eUjnCoi4jyRemYZmekLr8EJOGQqTWEX8W6SbZ6Skesy9pGXrKeAolUJw==", - "dev": true, - "requires": { - "@jest/console": "^25.4.0", - "@jest/reporters": "^25.4.0", - "@jest/test-result": "^25.4.0", - "@jest/transform": "^25.4.0", - "@jest/types": "^25.4.0", - "ansi-escapes": "^4.2.1", - "chalk": "^3.0.0", - "exit": "^0.1.2", - "graceful-fs": "^4.2.3", - "jest-changed-files": "^25.4.0", - "jest-config": "^25.4.0", - "jest-haste-map": "^25.4.0", - "jest-message-util": "^25.4.0", - "jest-regex-util": "^25.2.6", - "jest-resolve": "^25.4.0", - "jest-resolve-dependencies": "^25.4.0", - "jest-runner": "^25.4.0", - "jest-runtime": "^25.4.0", - "jest-snapshot": "^25.4.0", - "jest-util": "^25.4.0", - "jest-validate": "^25.4.0", - "jest-watcher": "^25.4.0", - "micromatch": "^4.0.2", - "p-each-series": "^2.1.0", - "realpath-native": "^2.0.0", - "rimraf": "^3.0.0", - "slash": "^3.0.0", - "strip-ansi": "^6.0.0" - }, + "node_modules/@babel/plugin-transform-unicode-escapes": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.27.1.tgz", + "integrity": "sha512-Ysg4v6AmF26k9vpfFuTZg8HRfVWzsh1kVfowA23y9j/Gu6dOuahdUVhkLqpObp3JIv27MLSii6noRnuKN8H0Mg==", + "dev": true, + "license": "MIT", "dependencies": { - "ansi-escapes": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.1.tgz", - "integrity": "sha512-JWF7ocqNrp8u9oqpgV+wH5ftbt+cfvv+PTjOvKLT3AdYly/LmORARfEVT1iyjwN+4MqE5UmVKoAdIBqeoCHgLA==", - "dev": true, - "requires": { - "type-fest": "^0.11.0" - } - }, - "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "requires": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - } - }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true - }, - "micromatch": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", - "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", - "dev": true, - "requires": { - "braces": "^3.0.1", - "picomatch": "^2.0.5" - } - }, - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - }, - "slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true - }, - "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - }, - "to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "requires": { - "is-number": "^7.0.0" - } - }, - "type-fest": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.11.0.tgz", - "integrity": "sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ==", - "dev": true - } + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@jest/environment": { - "version": "25.4.0", - "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-25.4.0.tgz", - "integrity": "sha512-KDctiak4mu7b4J6BIoN/+LUL3pscBzoUCP+EtSPd2tK9fqyDY5OF+CmkBywkFWezS9tyH5ACOQNtpjtueEDH6Q==", + "node_modules/@babel/plugin-transform-unicode-property-regex": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.27.1.tgz", + "integrity": "sha512-uW20S39PnaTImxp39O5qFlHLS9LJEmANjMG7SxIhap8rCHqu0Ik+tLEPX5DKmHn6CsWQ7j3lix2tFOa5YtL12Q==", "dev": true, - "requires": { - "@jest/fake-timers": "^25.4.0", - "@jest/types": "^25.4.0", - "jest-mock": "^25.4.0" + "license": "MIT", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@jest/fake-timers": { - "version": "25.4.0", - "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-25.4.0.tgz", - "integrity": "sha512-lI9z+VOmVX4dPPFzyj0vm+UtaB8dCJJ852lcDnY0uCPRvZAaVGnMwBBc1wxtf+h7Vz6KszoOvKAt4QijDnHDkg==", + "node_modules/@babel/plugin-transform-unicode-regex": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.27.1.tgz", + "integrity": "sha512-xvINq24TRojDuyt6JGtHmkVkrfVV3FPT16uytxImLeBZqW3/H52yN+kM1MGuyPkIQxrzKwPHs5U/MP3qKyzkGw==", "dev": true, - "requires": { - "@jest/types": "^25.4.0", - "jest-message-util": "^25.4.0", - "jest-mock": "^25.4.0", - "jest-util": "^25.4.0", - "lolex": "^5.0.0" + "license": "MIT", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@jest/reporters": { - "version": "25.4.0", - "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-25.4.0.tgz", - "integrity": "sha512-bhx/buYbZgLZm4JWLcRJ/q9Gvmd3oUh7k2V7gA4ZYBx6J28pIuykIouclRdiAC6eGVX1uRZT+GK4CQJLd/PwPg==", + "node_modules/@babel/plugin-transform-unicode-sets-regex": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.27.1.tgz", + "integrity": "sha512-EtkOujbc4cgvb0mlpQefi4NTPBzhSIevblFevACNLUspmrALgmEBdL/XfnyyITfd8fKBZrZys92zOWcik7j9Tw==", "dev": true, - "requires": { - "@bcoe/v8-coverage": "^0.2.3", - "@jest/console": "^25.4.0", - "@jest/test-result": "^25.4.0", - "@jest/transform": "^25.4.0", - "@jest/types": "^25.4.0", - "chalk": "^3.0.0", - "collect-v8-coverage": "^1.0.0", - "exit": "^0.1.2", - "glob": "^7.1.2", - "istanbul-lib-coverage": "^3.0.0", - "istanbul-lib-instrument": "^4.0.0", - "istanbul-lib-report": "^3.0.0", - "istanbul-lib-source-maps": "^4.0.0", - "istanbul-reports": "^3.0.2", - "jest-haste-map": "^25.4.0", - "jest-resolve": "^25.4.0", - "jest-util": "^25.4.0", - "jest-worker": "^25.4.0", - "node-notifier": "^6.0.0", - "slash": "^3.0.0", - "source-map": "^0.6.0", - "string-length": "^3.1.0", - "terminal-link": "^2.0.0", - "v8-to-istanbul": "^4.1.3" - }, - "dependencies": { - "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "requires": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true - }, - "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } + "license": "MIT", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "@jest/source-map": { - "version": "25.2.6", - "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-25.2.6.tgz", - "integrity": "sha512-VuIRZF8M2zxYFGTEhkNSvQkUKafQro4y+mwUxy5ewRqs5N/ynSFUODYp3fy1zCnbCMy1pz3k+u57uCqx8QRSQQ==", + "node_modules/@babel/preset-env": { + "version": "7.27.2", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.27.2.tgz", + "integrity": "sha512-Ma4zSuYSlGNRlCLO+EAzLnCmJK2vdstgv+n7aUP+/IKZrOfWHOJVdSJtuub8RzHTj3ahD37k5OKJWvzf16TQyQ==", "dev": true, - "requires": { - "callsites": "^3.0.0", - "graceful-fs": "^4.2.3", - "source-map": "^0.6.0" + "license": "MIT", + "dependencies": { + "@babel/compat-data": "^7.27.2", + "@babel/helper-compilation-targets": "^7.27.2", + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-validator-option": "^7.27.1", + "@babel/plugin-bugfix-firefox-class-in-computed-class-key": "^7.27.1", + "@babel/plugin-bugfix-safari-class-field-initializer-scope": "^7.27.1", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.27.1", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.27.1", + "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": "^7.27.1", + "@babel/plugin-proposal-private-property-in-object": "7.21.0-placeholder-for-preset-env.2", + "@babel/plugin-syntax-import-assertions": "^7.27.1", + "@babel/plugin-syntax-import-attributes": "^7.27.1", + "@babel/plugin-syntax-unicode-sets-regex": "^7.18.6", + "@babel/plugin-transform-arrow-functions": "^7.27.1", + "@babel/plugin-transform-async-generator-functions": "^7.27.1", + "@babel/plugin-transform-async-to-generator": "^7.27.1", + "@babel/plugin-transform-block-scoped-functions": "^7.27.1", + "@babel/plugin-transform-block-scoping": "^7.27.1", + "@babel/plugin-transform-class-properties": "^7.27.1", + "@babel/plugin-transform-class-static-block": "^7.27.1", + "@babel/plugin-transform-classes": "^7.27.1", + "@babel/plugin-transform-computed-properties": "^7.27.1", + "@babel/plugin-transform-destructuring": "^7.27.1", + "@babel/plugin-transform-dotall-regex": "^7.27.1", + "@babel/plugin-transform-duplicate-keys": "^7.27.1", + "@babel/plugin-transform-duplicate-named-capturing-groups-regex": "^7.27.1", + "@babel/plugin-transform-dynamic-import": "^7.27.1", + "@babel/plugin-transform-exponentiation-operator": "^7.27.1", + "@babel/plugin-transform-export-namespace-from": "^7.27.1", + "@babel/plugin-transform-for-of": "^7.27.1", + "@babel/plugin-transform-function-name": "^7.27.1", + "@babel/plugin-transform-json-strings": "^7.27.1", + "@babel/plugin-transform-literals": "^7.27.1", + "@babel/plugin-transform-logical-assignment-operators": "^7.27.1", + "@babel/plugin-transform-member-expression-literals": "^7.27.1", + "@babel/plugin-transform-modules-amd": "^7.27.1", + "@babel/plugin-transform-modules-commonjs": "^7.27.1", + "@babel/plugin-transform-modules-systemjs": "^7.27.1", + "@babel/plugin-transform-modules-umd": "^7.27.1", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.27.1", + "@babel/plugin-transform-new-target": "^7.27.1", + "@babel/plugin-transform-nullish-coalescing-operator": "^7.27.1", + "@babel/plugin-transform-numeric-separator": "^7.27.1", + "@babel/plugin-transform-object-rest-spread": "^7.27.2", + "@babel/plugin-transform-object-super": "^7.27.1", + "@babel/plugin-transform-optional-catch-binding": "^7.27.1", + "@babel/plugin-transform-optional-chaining": "^7.27.1", + "@babel/plugin-transform-parameters": "^7.27.1", + "@babel/plugin-transform-private-methods": "^7.27.1", + "@babel/plugin-transform-private-property-in-object": "^7.27.1", + "@babel/plugin-transform-property-literals": "^7.27.1", + "@babel/plugin-transform-regenerator": "^7.27.1", + "@babel/plugin-transform-regexp-modifiers": "^7.27.1", + "@babel/plugin-transform-reserved-words": "^7.27.1", + "@babel/plugin-transform-shorthand-properties": "^7.27.1", + "@babel/plugin-transform-spread": "^7.27.1", + "@babel/plugin-transform-sticky-regex": "^7.27.1", + "@babel/plugin-transform-template-literals": "^7.27.1", + "@babel/plugin-transform-typeof-symbol": "^7.27.1", + "@babel/plugin-transform-unicode-escapes": "^7.27.1", + "@babel/plugin-transform-unicode-property-regex": "^7.27.1", + "@babel/plugin-transform-unicode-regex": "^7.27.1", + "@babel/plugin-transform-unicode-sets-regex": "^7.27.1", + "@babel/preset-modules": "0.1.6-no-external-plugins", + "babel-plugin-polyfill-corejs2": "^0.4.10", + "babel-plugin-polyfill-corejs3": "^0.11.0", + "babel-plugin-polyfill-regenerator": "^0.6.1", + "core-js-compat": "^3.40.0", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@jest/test-result": { - "version": "25.4.0", - "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-25.4.0.tgz", - "integrity": "sha512-8BAKPaMCHlL941eyfqhWbmp3MebtzywlxzV+qtngQ3FH+RBqnoSAhNEPj4MG7d2NVUrMOVfrwuzGpVIK+QnMAA==", + "node_modules/@babel/preset-env/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", "dev": true, - "requires": { - "@jest/console": "^25.4.0", - "@jest/types": "^25.4.0", - "@types/istanbul-lib-coverage": "^2.0.0", - "collect-v8-coverage": "^1.0.0" + "license": "ISC", + "bin": { + "semver": "bin/semver.js" } }, - "@jest/test-sequencer": { - "version": "25.4.0", - "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-25.4.0.tgz", - "integrity": "sha512-240cI+nsM3attx2bMp9uGjjHrwrpvxxrZi8Tyqp/cfOzl98oZXVakXBgxODGyBYAy/UGXPKXLvNc2GaqItrsJg==", + "node_modules/@babel/preset-modules": { + "version": "0.1.6-no-external-plugins", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.6-no-external-plugins.tgz", + "integrity": "sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==", "dev": true, - "requires": { - "@jest/test-result": "^25.4.0", - "jest-haste-map": "^25.4.0", - "jest-runner": "^25.4.0", - "jest-runtime": "^25.4.0" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/types": "^7.4.4", + "esutils": "^2.0.2" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0 || ^8.0.0-0 <8.0.0" } }, - "@jest/transform": { - "version": "25.4.0", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-25.4.0.tgz", - "integrity": "sha512-t1w2S6V1sk++1HHsxboWxPEuSpN8pxEvNrZN+Ud/knkROWtf8LeUmz73A4ezE8476a5AM00IZr9a8FO9x1+j3g==", + "node_modules/@babel/template": { + "version": "7.27.2", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.27.2.tgz", + "integrity": "sha512-LPDZ85aEJyYSd18/DkjNh4/y1ntkE5KwUHWTiqgRxruuZL2F1yuHligVHLvcHY2vMHXttKFpJn6LwfI7cw7ODw==", "dev": true, - "requires": { - "@babel/core": "^7.1.0", - "@jest/types": "^25.4.0", - "babel-plugin-istanbul": "^6.0.0", - "chalk": "^3.0.0", - "convert-source-map": "^1.4.0", - "fast-json-stable-stringify": "^2.0.0", - "graceful-fs": "^4.2.3", - "jest-haste-map": "^25.4.0", - "jest-regex-util": "^25.2.6", - "jest-util": "^25.4.0", - "micromatch": "^4.0.2", - "pirates": "^4.0.1", - "realpath-native": "^2.0.0", - "slash": "^3.0.0", - "source-map": "^0.6.1", - "write-file-atomic": "^3.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "requires": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - } - }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true - }, - "micromatch": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", - "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", - "dev": true, - "requires": { - "braces": "^3.0.1", - "picomatch": "^2.0.5" - } - }, - "slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true - }, - "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - }, - "to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "requires": { - "is-number": "^7.0.0" - } - } + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.27.1", + "@babel/parser": "^7.27.2", + "@babel/types": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" } }, - "@jest/types": { - "version": "25.4.0", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-25.4.0.tgz", - "integrity": "sha512-XBeaWNzw2PPnGW5aXvZt3+VO60M+34RY3XDsCK5tW7kyj3RK0XClRutCfjqcBuaR2aBQTbluEDME9b5MB9UAPw==", + "node_modules/@babel/traverse": { + "version": "7.27.4", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.27.4.tgz", + "integrity": "sha512-oNcu2QbHqts9BtOWJosOVJapWjBDSxGCpFvikNR5TGDYDQf3JwpIoMzIKrvfoti93cLfPJEG4tH9SPVeyCGgdA==", "dev": true, - "requires": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^1.1.1", - "@types/yargs": "^15.0.0", - "chalk": "^3.0.0" - }, + "license": "MIT", "dependencies": { - "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "requires": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } + "@babel/code-frame": "^7.27.1", + "@babel/generator": "^7.27.3", + "@babel/parser": "^7.27.4", + "@babel/template": "^7.27.2", + "@babel/types": "^7.27.3", + "debug": "^4.3.1", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" } }, - "@marionebl/sander": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/@marionebl/sander/-/sander-0.6.1.tgz", - "integrity": "sha1-GViWWHTyS8Ub5Ih1/rUNZC/EH3s=", + "node_modules/@babel/types": { + "version": "7.27.6", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.27.6.tgz", + "integrity": "sha512-ETyHEk2VHHvl9b9jZP5IHPavHYk57EhanlRRuae9XCpb/j5bDCbPPMOBfCWhnl/7EDJz0jEMCi/RhccCE8r1+Q==", "dev": true, - "requires": { - "graceful-fs": "^4.1.3", - "mkdirp": "^0.5.1", - "rimraf": "^2.5.2" + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.27.1", + "@babel/helper-validator-identifier": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" } }, - "@nodelib/fs.scandir": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.3.tgz", - "integrity": "sha512-eGmwYQn3gxo4r7jdQnkrrN6bY478C3P+a/y72IJukF8LjB6ZHeB3c+Ehacj3sYeSmUXGlnA67/PmbM9CVwL7Dw==", + "node_modules/@bcoe/v8-coverage": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", + "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", "dev": true, - "requires": { - "@nodelib/fs.stat": "2.0.3", - "run-parallel": "^1.1.9" - } - }, - "@nodelib/fs.stat": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.3.tgz", - "integrity": "sha512-bQBFruR2TAwoevBEd/NWMoAAtNGzTRgdrqnYCc7dhzfoNvqPzLyqlEQnzZ3kVnNrSp25iyxE00/3h2fqGAGArA==", - "dev": true + "license": "MIT" }, - "@nodelib/fs.walk": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.4.tgz", - "integrity": "sha512-1V9XOY4rDW0rehzbrcqAmHnz8e7SKvX27gh8Gt2WgB0+pdzdiLV83p72kZPU+jvMbS1qU5mauP2iOvO8rhmurQ==", + "node_modules/@colors/colors": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.6.0.tgz", + "integrity": "sha512-Ir+AOibqzrIsL6ajt3Rz3LskB7OiMVHqltZmspbW/TJuTVuyOMirVqAkjfY6JISiLHgyNqicAC8AyHHGzNd/dA==", "dev": true, - "requires": { - "@nodelib/fs.scandir": "2.1.3", - "fastq": "^1.6.0" + "license": "MIT", + "engines": { + "node": ">=0.1.90" } }, - "@samverschueren/stream-to-observable": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/@samverschueren/stream-to-observable/-/stream-to-observable-0.3.0.tgz", - "integrity": "sha512-MI4Xx6LHs4Webyvi6EbspgyAb4D2Q2VtnCQ1blOJcoLS6mVa8lNN2rkIy1CVxfTUpoyIbCTkXES1rLXztFD1lg==", + "node_modules/@commitlint/cli": { + "version": "19.8.1", + "resolved": "https://registry.npmjs.org/@commitlint/cli/-/cli-19.8.1.tgz", + "integrity": "sha512-LXUdNIkspyxrlV6VDHWBmCZRtkEVRpBKxi2Gtw3J54cGWhLCTouVD/Q6ZSaSvd2YaDObWK8mDjrz3TIKtaQMAA==", "dev": true, - "requires": { - "any-observable": "^0.3.0" + "license": "MIT", + "dependencies": { + "@commitlint/format": "^19.8.1", + "@commitlint/lint": "^19.8.1", + "@commitlint/load": "^19.8.1", + "@commitlint/read": "^19.8.1", + "@commitlint/types": "^19.8.1", + "tinyexec": "^1.0.0", + "yargs": "^17.0.0" + }, + "bin": { + "commitlint": "cli.js" + }, + "engines": { + "node": ">=v18" } }, - "@sinonjs/commons": { - "version": "1.7.2", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.7.2.tgz", - "integrity": "sha512-+DUO6pnp3udV/v2VfUWgaY5BIE1IfT7lLfeDzPVeMT1XKkaAp9LgSI9x5RtrFQoZ9Oi0PgXQQHPaoKu7dCjVxw==", + "node_modules/@commitlint/config-conventional": { + "version": "19.8.1", + "resolved": "https://registry.npmjs.org/@commitlint/config-conventional/-/config-conventional-19.8.1.tgz", + "integrity": "sha512-/AZHJL6F6B/G959CsMAzrPKKZjeEiAVifRyEwXxcT6qtqbPwGw+iQxmNS+Bu+i09OCtdNRW6pNpBvgPrtMr9EQ==", "dev": true, - "requires": { - "type-detect": "4.0.8" + "license": "MIT", + "dependencies": { + "@commitlint/types": "^19.8.1", + "conventional-changelog-conventionalcommits": "^7.0.2" + }, + "engines": { + "node": ">=v18" } }, - "@types/babel__core": { - "version": "7.1.7", - "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.7.tgz", - "integrity": "sha512-RL62NqSFPCDK2FM1pSDH0scHpJvsXtZNiYlMB73DgPBaG1E38ZYVL+ei5EkWRbr+KC4YNiAUNBnRj+bgwpgjMw==", + "node_modules/@commitlint/config-validator": { + "version": "19.8.1", + "resolved": "https://registry.npmjs.org/@commitlint/config-validator/-/config-validator-19.8.1.tgz", + "integrity": "sha512-0jvJ4u+eqGPBIzzSdqKNX1rvdbSU1lPNYlfQQRIFnBgLy26BtC0cFnr7c/AyuzExMxWsMOte6MkTi9I3SQ3iGQ==", "dev": true, - "requires": { - "@babel/parser": "^7.1.0", - "@babel/types": "^7.0.0", - "@types/babel__generator": "*", - "@types/babel__template": "*", - "@types/babel__traverse": "*" + "license": "MIT", + "dependencies": { + "@commitlint/types": "^19.8.1", + "ajv": "^8.11.0" + }, + "engines": { + "node": ">=v18" } }, - "@types/babel__generator": { - "version": "7.6.1", - "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.1.tgz", - "integrity": "sha512-bBKm+2VPJcMRVwNhxKu8W+5/zT7pwNEqeokFOmbvVSqGzFneNxYcEBro9Ac7/N9tlsaPYnZLK8J1LWKkMsLAew==", + "node_modules/@commitlint/config-validator/node_modules/ajv": { + "version": "8.17.1", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.17.1.tgz", + "integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==", "dev": true, - "requires": { - "@babel/types": "^7.0.0" + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.3", + "fast-uri": "^3.0.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" } }, - "@types/babel__template": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.0.2.tgz", - "integrity": "sha512-/K6zCpeW7Imzgab2bLkLEbz0+1JlFSrUMdw7KoIIu+IUdu51GWaBZpd3y1VXGVXzynvGa4DaIaxNZHiON3GXUg==", + "node_modules/@commitlint/config-validator/node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", "dev": true, - "requires": { - "@babel/parser": "^7.1.0", - "@babel/types": "^7.0.0" - } + "license": "MIT" }, - "@types/babel__traverse": { - "version": "7.0.10", - "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.0.10.tgz", - "integrity": "sha512-74fNdUGrWsgIB/V9kTO5FGHPWYY6Eqn+3Z7L6Hc4e/BxjYV7puvBqp5HwsVYYfLm6iURYBNCx4Ut37OF9yitCw==", + "node_modules/@commitlint/ensure": { + "version": "19.8.1", + "resolved": "https://registry.npmjs.org/@commitlint/ensure/-/ensure-19.8.1.tgz", + "integrity": "sha512-mXDnlJdvDzSObafjYrOSvZBwkD01cqB4gbnnFuVyNpGUM5ijwU/r/6uqUmBXAAOKRfyEjpkGVZxaDsCVnHAgyw==", "dev": true, - "requires": { - "@babel/types": "^7.3.0" + "license": "MIT", + "dependencies": { + "@commitlint/types": "^19.8.1", + "lodash.camelcase": "^4.3.0", + "lodash.kebabcase": "^4.1.1", + "lodash.snakecase": "^4.1.1", + "lodash.startcase": "^4.4.0", + "lodash.upperfirst": "^4.3.1" + }, + "engines": { + "node": ">=v18" } }, - "@types/color-name": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@types/color-name/-/color-name-1.1.1.tgz", - "integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==", - "dev": true - }, - "@types/events": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/events/-/events-3.0.0.tgz", - "integrity": "sha512-EaObqwIvayI5a8dCzhFrjKzVwKLxjoG9T6Ppd5CEo07LRKfQ8Yokw54r5+Wq7FaBQ+yXRvQAYPrHwya1/UFt9g==", - "dev": true - }, - "@types/glob": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.1.1.tgz", - "integrity": "sha512-1Bh06cbWJUHMC97acuD6UMG29nMt0Aqz1vF3guLfG+kHHJhy3AyohZFFxYk2f7Q1SQIrNwvncxAE0N/9s70F2w==", + "node_modules/@commitlint/execute-rule": { + "version": "19.8.1", + "resolved": "https://registry.npmjs.org/@commitlint/execute-rule/-/execute-rule-19.8.1.tgz", + "integrity": "sha512-YfJyIqIKWI64Mgvn/sE7FXvVMQER/Cd+s3hZke6cI1xgNT/f6ZAz5heND0QtffH+KbcqAwXDEE1/5niYayYaQA==", "dev": true, - "requires": { - "@types/events": "*", - "@types/minimatch": "*", - "@types/node": "*" + "license": "MIT", + "engines": { + "node": ">=v18" } }, - "@types/istanbul-lib-coverage": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.1.tgz", - "integrity": "sha512-hRJD2ahnnpLgsj6KWMYSrmXkM3rm2Dl1qkx6IOFD5FnuNPXJIG5L0dhgKXCYTRMGzU4n0wImQ/xfmRc4POUFlg==", - "dev": true - }, - "@types/istanbul-lib-report": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", - "integrity": "sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==", + "node_modules/@commitlint/format": { + "version": "19.8.1", + "resolved": "https://registry.npmjs.org/@commitlint/format/-/format-19.8.1.tgz", + "integrity": "sha512-kSJj34Rp10ItP+Eh9oCItiuN/HwGQMXBnIRk69jdOwEW9llW9FlyqcWYbHPSGofmjsqeoxa38UaEA5tsbm2JWw==", "dev": true, - "requires": { - "@types/istanbul-lib-coverage": "*" + "license": "MIT", + "dependencies": { + "@commitlint/types": "^19.8.1", + "chalk": "^5.3.0" + }, + "engines": { + "node": ">=v18" } }, - "@types/istanbul-reports": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-1.1.1.tgz", - "integrity": "sha512-UpYjBi8xefVChsCoBpKShdxTllC9pwISirfoZsUa2AAdQg/Jd2KQGtSbw+ya7GPo7x/wAPlH6JBhKhAsXUEZNA==", + "node_modules/@commitlint/is-ignored": { + "version": "19.8.1", + "resolved": "https://registry.npmjs.org/@commitlint/is-ignored/-/is-ignored-19.8.1.tgz", + "integrity": "sha512-AceOhEhekBUQ5dzrVhDDsbMaY5LqtN8s1mqSnT2Kz1ERvVZkNihrs3Sfk1Je/rxRNbXYFzKZSHaPsEJJDJV8dg==", "dev": true, - "requires": { - "@types/istanbul-lib-coverage": "*", - "@types/istanbul-lib-report": "*" + "license": "MIT", + "dependencies": { + "@commitlint/types": "^19.8.1", + "semver": "^7.6.0" + }, + "engines": { + "node": ">=v18" } }, - "@types/minimatch": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.3.tgz", - "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==", - "dev": true - }, - "@types/node": { - "version": "13.11.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-13.11.0.tgz", - "integrity": "sha512-uM4mnmsIIPK/yeO+42F2RQhGUIs39K2RFmugcJANppXe6J1nvH87PvzPZYpza7Xhhs8Yn9yIAVdLZ84z61+0xQ==", - "dev": true - }, - "@types/normalize-package-data": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.0.tgz", - "integrity": "sha512-f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA==", - "dev": true - }, - "@types/parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==", - "dev": true - }, - "@types/prettier": { - "version": "1.19.1", - "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-1.19.1.tgz", - "integrity": "sha512-5qOlnZscTn4xxM5MeGXAMOsIOIKIbh9e85zJWfBRVPlRMEVawzoPhINYbRGkBZCI8LxvBe7tJCdWiarA99OZfQ==", - "dev": true - }, - "@types/stack-utils": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-1.0.1.tgz", - "integrity": "sha512-l42BggppR6zLmpfU6fq9HEa2oGPEI8yrSPL3GITjfRInppYFahObbIQOQK3UGxEnyQpltZLaPe75046NOZQikw==", - "dev": true - }, - "@types/yargs": { - "version": "15.0.4", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.4.tgz", - "integrity": "sha512-9T1auFmbPZoxHz0enUFlUuKRy3it01R+hlggyVUMtnCTQRunsQYifnSGb8hET4Xo8yiC0o0r1paW3ud5+rbURg==", + "node_modules/@commitlint/lint": { + "version": "19.8.1", + "resolved": "https://registry.npmjs.org/@commitlint/lint/-/lint-19.8.1.tgz", + "integrity": "sha512-52PFbsl+1EvMuokZXLRlOsdcLHf10isTPlWwoY1FQIidTsTvjKXVXYb7AvtpWkDzRO2ZsqIgPK7bI98x8LRUEw==", "dev": true, - "requires": { - "@types/yargs-parser": "*" + "license": "MIT", + "dependencies": { + "@commitlint/is-ignored": "^19.8.1", + "@commitlint/parse": "^19.8.1", + "@commitlint/rules": "^19.8.1", + "@commitlint/types": "^19.8.1" + }, + "engines": { + "node": ">=v18" } }, - "@types/yargs-parser": { - "version": "15.0.0", - "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-15.0.0.tgz", - "integrity": "sha512-FA/BWv8t8ZWJ+gEOnLLd8ygxH/2UFbAvgEonyfN6yWGLKc7zVjbpl2Y4CTjid9h2RfgPP6SEt6uHwEOply00yw==", - "dev": true - }, - "@webassemblyjs/ast": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.9.0.tgz", - "integrity": "sha512-C6wW5L+b7ogSDVqymbkkvuW9kruN//YisMED04xzeBBqjHa2FYnmvOlS6Xj68xWQRgWvI9cIglsjFowH/RJyEA==", + "node_modules/@commitlint/load": { + "version": "19.8.1", + "resolved": "https://registry.npmjs.org/@commitlint/load/-/load-19.8.1.tgz", + "integrity": "sha512-9V99EKG3u7z+FEoe4ikgq7YGRCSukAcvmKQuTtUyiYPnOd9a2/H9Ak1J9nJA1HChRQp9OA/sIKPugGS+FK/k1A==", "dev": true, - "requires": { - "@webassemblyjs/helper-module-context": "1.9.0", - "@webassemblyjs/helper-wasm-bytecode": "1.9.0", - "@webassemblyjs/wast-parser": "1.9.0" + "license": "MIT", + "dependencies": { + "@commitlint/config-validator": "^19.8.1", + "@commitlint/execute-rule": "^19.8.1", + "@commitlint/resolve-extends": "^19.8.1", + "@commitlint/types": "^19.8.1", + "chalk": "^5.3.0", + "cosmiconfig": "^9.0.0", + "cosmiconfig-typescript-loader": "^6.1.0", + "lodash.isplainobject": "^4.0.6", + "lodash.merge": "^4.6.2", + "lodash.uniq": "^4.5.0" + }, + "engines": { + "node": ">=v18" } }, - "@webassemblyjs/floating-point-hex-parser": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.9.0.tgz", - "integrity": "sha512-TG5qcFsS8QB4g4MhrxK5TqfdNe7Ey/7YL/xN+36rRjl/BlGE/NcBvJcqsRgCP6Z92mRE+7N50pRIi8SmKUbcQA==", - "dev": true - }, - "@webassemblyjs/helper-api-error": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.9.0.tgz", - "integrity": "sha512-NcMLjoFMXpsASZFxJ5h2HZRcEhDkvnNFOAKneP5RbKRzaWJN36NC4jqQHKwStIhGXu5mUWlUUk7ygdtrO8lbmw==", - "dev": true - }, - "@webassemblyjs/helper-buffer": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.9.0.tgz", - "integrity": "sha512-qZol43oqhq6yBPx7YM3m9Bv7WMV9Eevj6kMi6InKOuZxhw+q9hOkvq5e/PpKSiLfyetpaBnogSbNCfBwyB00CA==", - "dev": true - }, - "@webassemblyjs/helper-code-frame": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.9.0.tgz", - "integrity": "sha512-ERCYdJBkD9Vu4vtjUYe8LZruWuNIToYq/ME22igL+2vj2dQ2OOujIZr3MEFvfEaqKoVqpsFKAGsRdBSBjrIvZA==", + "node_modules/@commitlint/message": { + "version": "19.8.1", + "resolved": "https://registry.npmjs.org/@commitlint/message/-/message-19.8.1.tgz", + "integrity": "sha512-+PMLQvjRXiU+Ae0Wc+p99EoGEutzSXFVwQfa3jRNUZLNW5odZAyseb92OSBTKCu+9gGZiJASt76Cj3dLTtcTdg==", "dev": true, - "requires": { - "@webassemblyjs/wast-printer": "1.9.0" + "license": "MIT", + "engines": { + "node": ">=v18" } }, - "@webassemblyjs/helper-fsm": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.9.0.tgz", - "integrity": "sha512-OPRowhGbshCb5PxJ8LocpdX9Kl0uB4XsAjl6jH/dWKlk/mzsANvhwbiULsaiqT5GZGT9qinTICdj6PLuM5gslw==", - "dev": true - }, - "@webassemblyjs/helper-module-context": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.9.0.tgz", - "integrity": "sha512-MJCW8iGC08tMk2enck1aPW+BE5Cw8/7ph/VGZxwyvGbJwjktKkDK7vy7gAmMDx88D7mhDTCNKAW5tED+gZ0W8g==", + "node_modules/@commitlint/parse": { + "version": "19.8.1", + "resolved": "https://registry.npmjs.org/@commitlint/parse/-/parse-19.8.1.tgz", + "integrity": "sha512-mmAHYcMBmAgJDKWdkjIGq50X4yB0pSGpxyOODwYmoexxxiUCy5JJT99t1+PEMK7KtsCtzuWYIAXYAiKR+k+/Jw==", "dev": true, - "requires": { - "@webassemblyjs/ast": "1.9.0" + "license": "MIT", + "dependencies": { + "@commitlint/types": "^19.8.1", + "conventional-changelog-angular": "^7.0.0", + "conventional-commits-parser": "^5.0.0" + }, + "engines": { + "node": ">=v18" } }, - "@webassemblyjs/helper-wasm-bytecode": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.9.0.tgz", - "integrity": "sha512-R7FStIzyNcd7xKxCZH5lE0Bqy+hGTwS3LJjuv1ZVxd9O7eHCedSdrId/hMOd20I+v8wDXEn+bjfKDLzTepoaUw==", - "dev": true - }, - "@webassemblyjs/helper-wasm-section": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.9.0.tgz", - "integrity": "sha512-XnMB8l3ek4tvrKUUku+IVaXNHz2YsJyOOmz+MMkZvh8h1uSJpSen6vYnw3IoQ7WwEuAhL8Efjms1ZWjqh2agvw==", + "node_modules/@commitlint/read": { + "version": "19.8.1", + "resolved": "https://registry.npmjs.org/@commitlint/read/-/read-19.8.1.tgz", + "integrity": "sha512-03Jbjb1MqluaVXKHKRuGhcKWtSgh3Jizqy2lJCRbRrnWpcM06MYm8th59Xcns8EqBYvo0Xqb+2DoZFlga97uXQ==", "dev": true, - "requires": { - "@webassemblyjs/ast": "1.9.0", - "@webassemblyjs/helper-buffer": "1.9.0", - "@webassemblyjs/helper-wasm-bytecode": "1.9.0", - "@webassemblyjs/wasm-gen": "1.9.0" + "license": "MIT", + "dependencies": { + "@commitlint/top-level": "^19.8.1", + "@commitlint/types": "^19.8.1", + "git-raw-commits": "^4.0.0", + "minimist": "^1.2.8", + "tinyexec": "^1.0.0" + }, + "engines": { + "node": ">=v18" } }, - "@webassemblyjs/ieee754": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.9.0.tgz", - "integrity": "sha512-dcX8JuYU/gvymzIHc9DgxTzUUTLexWwt8uCTWP3otys596io0L5aW02Gb1RjYpx2+0Jus1h4ZFqjla7umFniTg==", + "node_modules/@commitlint/resolve-extends": { + "version": "19.8.1", + "resolved": "https://registry.npmjs.org/@commitlint/resolve-extends/-/resolve-extends-19.8.1.tgz", + "integrity": "sha512-GM0mAhFk49I+T/5UCYns5ayGStkTt4XFFrjjf0L4S26xoMTSkdCf9ZRO8en1kuopC4isDFuEm7ZOm/WRVeElVg==", "dev": true, - "requires": { - "@xtuc/ieee754": "^1.2.0" + "license": "MIT", + "dependencies": { + "@commitlint/config-validator": "^19.8.1", + "@commitlint/types": "^19.8.1", + "global-directory": "^4.0.1", + "import-meta-resolve": "^4.0.0", + "lodash.mergewith": "^4.6.2", + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=v18" } }, - "@webassemblyjs/leb128": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.9.0.tgz", - "integrity": "sha512-ENVzM5VwV1ojs9jam6vPys97B/S65YQtv/aanqnU7D8aSoHFX8GyhGg0CMfyKNIHBuAVjy3tlzd5QMMINa7wpw==", + "node_modules/@commitlint/rules": { + "version": "19.8.1", + "resolved": "https://registry.npmjs.org/@commitlint/rules/-/rules-19.8.1.tgz", + "integrity": "sha512-Hnlhd9DyvGiGwjfjfToMi1dsnw1EXKGJNLTcsuGORHz6SS9swRgkBsou33MQ2n51/boIDrbsg4tIBbRpEWK2kw==", "dev": true, - "requires": { - "@xtuc/long": "4.2.2" + "license": "MIT", + "dependencies": { + "@commitlint/ensure": "^19.8.1", + "@commitlint/message": "^19.8.1", + "@commitlint/to-lines": "^19.8.1", + "@commitlint/types": "^19.8.1" + }, + "engines": { + "node": ">=v18" } }, - "@webassemblyjs/utf8": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.9.0.tgz", - "integrity": "sha512-GZbQlWtopBTP0u7cHrEx+73yZKrQoBMpwkGEIqlacljhXCkVM1kMQge/Mf+csMJAjEdSwhOyLAS0AoR3AG5P8w==", - "dev": true - }, - "@webassemblyjs/wasm-edit": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.9.0.tgz", - "integrity": "sha512-FgHzBm80uwz5M8WKnMTn6j/sVbqilPdQXTWraSjBwFXSYGirpkSWE2R9Qvz9tNiTKQvoKILpCuTjBKzOIm0nxw==", + "node_modules/@commitlint/to-lines": { + "version": "19.8.1", + "resolved": "https://registry.npmjs.org/@commitlint/to-lines/-/to-lines-19.8.1.tgz", + "integrity": "sha512-98Mm5inzbWTKuZQr2aW4SReY6WUukdWXuZhrqf1QdKPZBCCsXuG87c+iP0bwtD6DBnmVVQjgp4whoHRVixyPBg==", "dev": true, - "requires": { - "@webassemblyjs/ast": "1.9.0", - "@webassemblyjs/helper-buffer": "1.9.0", - "@webassemblyjs/helper-wasm-bytecode": "1.9.0", - "@webassemblyjs/helper-wasm-section": "1.9.0", - "@webassemblyjs/wasm-gen": "1.9.0", - "@webassemblyjs/wasm-opt": "1.9.0", - "@webassemblyjs/wasm-parser": "1.9.0", - "@webassemblyjs/wast-printer": "1.9.0" + "license": "MIT", + "engines": { + "node": ">=v18" } }, - "@webassemblyjs/wasm-gen": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.9.0.tgz", - "integrity": "sha512-cPE3o44YzOOHvlsb4+E9qSqjc9Qf9Na1OO/BHFy4OI91XDE14MjFN4lTMezzaIWdPqHnsTodGGNP+iRSYfGkjA==", + "node_modules/@commitlint/top-level": { + "version": "19.8.1", + "resolved": "https://registry.npmjs.org/@commitlint/top-level/-/top-level-19.8.1.tgz", + "integrity": "sha512-Ph8IN1IOHPSDhURCSXBz44+CIu+60duFwRsg6HqaISFHQHbmBtxVw4ZrFNIYUzEP7WwrNPxa2/5qJ//NK1FGcw==", "dev": true, - "requires": { - "@webassemblyjs/ast": "1.9.0", - "@webassemblyjs/helper-wasm-bytecode": "1.9.0", - "@webassemblyjs/ieee754": "1.9.0", - "@webassemblyjs/leb128": "1.9.0", - "@webassemblyjs/utf8": "1.9.0" + "license": "MIT", + "dependencies": { + "find-up": "^7.0.0" + }, + "engines": { + "node": ">=v18" } }, - "@webassemblyjs/wasm-opt": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.9.0.tgz", - "integrity": "sha512-Qkjgm6Anhm+OMbIL0iokO7meajkzQD71ioelnfPEj6r4eOFuqm4YC3VBPqXjFyyNwowzbMD+hizmprP/Fwkl2A==", + "node_modules/@commitlint/types": { + "version": "19.8.1", + "resolved": "https://registry.npmjs.org/@commitlint/types/-/types-19.8.1.tgz", + "integrity": "sha512-/yCrWGCoA1SVKOks25EGadP9Pnj0oAIHGpl2wH2M2Y46dPM2ueb8wyCVOD7O3WCTkaJ0IkKvzhl1JY7+uCT2Dw==", "dev": true, - "requires": { - "@webassemblyjs/ast": "1.9.0", - "@webassemblyjs/helper-buffer": "1.9.0", - "@webassemblyjs/wasm-gen": "1.9.0", - "@webassemblyjs/wasm-parser": "1.9.0" + "license": "MIT", + "dependencies": { + "@types/conventional-commits-parser": "^5.0.0", + "chalk": "^5.3.0" + }, + "engines": { + "node": ">=v18" } }, - "@webassemblyjs/wasm-parser": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.9.0.tgz", - "integrity": "sha512-9+wkMowR2AmdSWQzsPEjFU7njh8HTO5MqO8vjwEHuM+AMHioNqSBONRdr0NQQ3dVQrzp0s8lTcYqzUdb7YgELA==", + "node_modules/@cspell/cspell-bundled-dicts": { + "version": "8.19.4", + "resolved": "https://registry.npmjs.org/@cspell/cspell-bundled-dicts/-/cspell-bundled-dicts-8.19.4.tgz", + "integrity": "sha512-2ZRcZP/ncJ5q953o8i+R0fb8+14PDt5UefUNMrFZZHvfTI0jukAASOQeLY+WT6ASZv6CgbPrApAdbppy9FaXYQ==", "dev": true, - "requires": { - "@webassemblyjs/ast": "1.9.0", - "@webassemblyjs/helper-api-error": "1.9.0", - "@webassemblyjs/helper-wasm-bytecode": "1.9.0", - "@webassemblyjs/ieee754": "1.9.0", - "@webassemblyjs/leb128": "1.9.0", - "@webassemblyjs/utf8": "1.9.0" + "license": "MIT", + "dependencies": { + "@cspell/dict-ada": "^4.1.0", + "@cspell/dict-al": "^1.1.0", + "@cspell/dict-aws": "^4.0.10", + "@cspell/dict-bash": "^4.2.0", + "@cspell/dict-companies": "^3.1.15", + "@cspell/dict-cpp": "^6.0.8", + "@cspell/dict-cryptocurrencies": "^5.0.4", + "@cspell/dict-csharp": "^4.0.6", + "@cspell/dict-css": "^4.0.17", + "@cspell/dict-dart": "^2.3.0", + "@cspell/dict-data-science": "^2.0.8", + "@cspell/dict-django": "^4.1.4", + "@cspell/dict-docker": "^1.1.13", + "@cspell/dict-dotnet": "^5.0.9", + "@cspell/dict-elixir": "^4.0.7", + "@cspell/dict-en_us": "^4.4.3", + "@cspell/dict-en-common-misspellings": "^2.0.10", + "@cspell/dict-en-gb": "1.1.33", + "@cspell/dict-filetypes": "^3.0.11", + "@cspell/dict-flutter": "^1.1.0", + "@cspell/dict-fonts": "^4.0.4", + "@cspell/dict-fsharp": "^1.1.0", + "@cspell/dict-fullstack": "^3.2.6", + "@cspell/dict-gaming-terms": "^1.1.1", + "@cspell/dict-git": "^3.0.4", + "@cspell/dict-golang": "^6.0.20", + "@cspell/dict-google": "^1.0.8", + "@cspell/dict-haskell": "^4.0.5", + "@cspell/dict-html": "^4.0.11", + "@cspell/dict-html-symbol-entities": "^4.0.3", + "@cspell/dict-java": "^5.0.11", + "@cspell/dict-julia": "^1.1.0", + "@cspell/dict-k8s": "^1.0.10", + "@cspell/dict-kotlin": "^1.1.0", + "@cspell/dict-latex": "^4.0.3", + "@cspell/dict-lorem-ipsum": "^4.0.4", + "@cspell/dict-lua": "^4.0.7", + "@cspell/dict-makefile": "^1.0.4", + "@cspell/dict-markdown": "^2.0.10", + "@cspell/dict-monkeyc": "^1.0.10", + "@cspell/dict-node": "^5.0.7", + "@cspell/dict-npm": "^5.2.1", + "@cspell/dict-php": "^4.0.14", + "@cspell/dict-powershell": "^5.0.14", + "@cspell/dict-public-licenses": "^2.0.13", + "@cspell/dict-python": "^4.2.17", + "@cspell/dict-r": "^2.1.0", + "@cspell/dict-ruby": "^5.0.8", + "@cspell/dict-rust": "^4.0.11", + "@cspell/dict-scala": "^5.0.7", + "@cspell/dict-shell": "^1.1.0", + "@cspell/dict-software-terms": "^5.0.5", + "@cspell/dict-sql": "^2.2.0", + "@cspell/dict-svelte": "^1.0.6", + "@cspell/dict-swift": "^2.0.5", + "@cspell/dict-terraform": "^1.1.1", + "@cspell/dict-typescript": "^3.2.1", + "@cspell/dict-vue": "^3.0.4" + }, + "engines": { + "node": ">=18" } }, - "@webassemblyjs/wast-parser": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.9.0.tgz", - "integrity": "sha512-qsqSAP3QQ3LyZjNC/0jBJ/ToSxfYJ8kYyuiGvtn/8MK89VrNEfwj7BPQzJVHi0jGTRK2dGdJ5PRqhtjzoww+bw==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.9.0", - "@webassemblyjs/floating-point-hex-parser": "1.9.0", - "@webassemblyjs/helper-api-error": "1.9.0", - "@webassemblyjs/helper-code-frame": "1.9.0", - "@webassemblyjs/helper-fsm": "1.9.0", - "@xtuc/long": "4.2.2" + "node_modules/@cspell/cspell-json-reporter": { + "version": "8.19.4", + "resolved": "https://registry.npmjs.org/@cspell/cspell-json-reporter/-/cspell-json-reporter-8.19.4.tgz", + "integrity": "sha512-pOlUtLUmuDdTIOhDTvWxxta0Wm8RCD/p1V0qUqeP6/Ups1ajBI4FWEpRFd7yMBTUHeGeSNicJX5XeX7wNbAbLQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@cspell/cspell-types": "8.19.4" + }, + "engines": { + "node": ">=18" } }, - "@webassemblyjs/wast-printer": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.9.0.tgz", - "integrity": "sha512-2J0nE95rHXHyQ24cWjMKJ1tqB/ds8z/cyeOZxJhcb+rW+SQASVjuznUSmdz5GpVJTzU8JkhYut0D3siFDD6wsA==", + "node_modules/@cspell/cspell-pipe": { + "version": "8.19.4", + "resolved": "https://registry.npmjs.org/@cspell/cspell-pipe/-/cspell-pipe-8.19.4.tgz", + "integrity": "sha512-GNAyk+7ZLEcL2fCMT5KKZprcdsq3L1eYy3e38/tIeXfbZS7Sd1R5FXUe6CHXphVWTItV39TvtLiDwN/2jBts9A==", "dev": true, - "requires": { - "@webassemblyjs/ast": "1.9.0", - "@webassemblyjs/wast-parser": "1.9.0", - "@xtuc/long": "4.2.2" + "license": "MIT", + "engines": { + "node": ">=18" } }, - "@webpack-contrib/defaults": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/@webpack-contrib/defaults/-/defaults-6.3.0.tgz", - "integrity": "sha512-B5oYSmvwWbDILf2mgmJFkQe/BdWoiRm3+KbUkVAl/UdowvWKDDFd5w77WpGES3BTY+bgd4+GYf4cBXNQdbEv4Q==", - "dev": true, - "requires": { - "chalk": "^2.3.0", - "git-username": "^1.0.0", - "loader-utils": "^1.2.3", - "mrm-core": "^3.1.1", - "path-exists": "^4.0.0", - "schema-utils": "^1.0.0", - "user-meta": "^1.0.0" - }, - "dependencies": { - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - }, - "schema-utils": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", - "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", - "dev": true, - "requires": { - "ajv": "^6.1.0", - "ajv-errors": "^1.0.0", - "ajv-keywords": "^3.1.0" - } - } + "node_modules/@cspell/cspell-resolver": { + "version": "8.19.4", + "resolved": "https://registry.npmjs.org/@cspell/cspell-resolver/-/cspell-resolver-8.19.4.tgz", + "integrity": "sha512-S8vJMYlsx0S1D60glX8H2Jbj4mD8519VjyY8lu3fnhjxfsl2bDFZvF3ZHKsLEhBE+Wh87uLqJDUJQiYmevHjDg==", + "dev": true, + "license": "MIT", + "dependencies": { + "global-directory": "^4.0.1" + }, + "engines": { + "node": ">=18" } }, - "@webpack-contrib/eslint-config-webpack": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@webpack-contrib/eslint-config-webpack/-/eslint-config-webpack-3.0.0.tgz", - "integrity": "sha512-3f0dwuTZ1JZpnoGQ6tAKBWluZKZZBXr1ADoaOAbPiW0OvSN7o0wXFLGyfw6J+fW756xIkZLZ8JDYP5zInIRvBA==", - "dev": true - }, - "@xtuc/ieee754": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", - "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", - "dev": true - }, - "@xtuc/long": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", - "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", - "dev": true + "node_modules/@cspell/cspell-service-bus": { + "version": "8.19.4", + "resolved": "https://registry.npmjs.org/@cspell/cspell-service-bus/-/cspell-service-bus-8.19.4.tgz", + "integrity": "sha512-uhY+v8z5JiUogizXW2Ft/gQf3eWrh5P9036jN2Dm0UiwEopG/PLshHcDjRDUiPdlihvA0RovrF0wDh4ptcrjuQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + } }, - "JSONStream": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz", - "integrity": "sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==", + "node_modules/@cspell/cspell-types": { + "version": "8.19.4", + "resolved": "https://registry.npmjs.org/@cspell/cspell-types/-/cspell-types-8.19.4.tgz", + "integrity": "sha512-ekMWuNlFiVGfsKhfj4nmc8JCA+1ZltwJgxiKgDuwYtR09ie340RfXFF6YRd2VTW5zN7l4F1PfaAaPklVz6utSg==", "dev": true, - "requires": { - "jsonparse": "^1.2.0", - "through": ">=2.2.7 <3" + "license": "MIT", + "engines": { + "node": ">=18" } }, - "abab": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.3.tgz", - "integrity": "sha512-tsFzPpcttalNjFBCFMqsKYQcWxxen1pgJR56by//QwvJc4/OUS3kPOOttx2tSIfjsylB0pYu7f5D3K1RCxUnUg==", - "dev": true + "node_modules/@cspell/dict-ada": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/@cspell/dict-ada/-/dict-ada-4.1.0.tgz", + "integrity": "sha512-7SvmhmX170gyPd+uHXrfmqJBY5qLcCX8kTGURPVeGxmt8XNXT75uu9rnZO+jwrfuU2EimNoArdVy5GZRGljGNg==", + "dev": true, + "license": "MIT" }, - "acorn": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.1.1.tgz", - "integrity": "sha512-add7dgA5ppRPxCFJoAGfMDi7PIBXq1RtGo7BhbLaxwrXPOmw8gq48Y9ozT01hUKy9byMjlR20EJhu5zlkErEkg==", - "dev": true + "node_modules/@cspell/dict-al": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@cspell/dict-al/-/dict-al-1.1.0.tgz", + "integrity": "sha512-PtNI1KLmYkELYltbzuoztBxfi11jcE9HXBHCpID2lou/J4VMYKJPNqe4ZjVzSI9NYbMnMnyG3gkbhIdx66VSXg==", + "dev": true, + "license": "MIT" }, - "acorn-globals": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-4.3.4.tgz", - "integrity": "sha512-clfQEh21R+D0leSbUdWf3OcfqyaCSAQ8Ryq00bofSekfr9W8u1jyYZo6ir0xu9Gtcf7BjcHJpnbZH7JOCpP60A==", + "node_modules/@cspell/dict-aws": { + "version": "4.0.10", + "resolved": "https://registry.npmjs.org/@cspell/dict-aws/-/dict-aws-4.0.10.tgz", + "integrity": "sha512-0qW4sI0GX8haELdhfakQNuw7a2pnWXz3VYQA2MpydH2xT2e6EN9DWFpKAi8DfcChm8MgDAogKkoHtIo075iYng==", "dev": true, - "requires": { - "acorn": "^6.0.1", - "acorn-walk": "^6.0.1" - }, + "license": "MIT" + }, + "node_modules/@cspell/dict-bash": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/@cspell/dict-bash/-/dict-bash-4.2.0.tgz", + "integrity": "sha512-HOyOS+4AbCArZHs/wMxX/apRkjxg6NDWdt0jF9i9XkvJQUltMwEhyA2TWYjQ0kssBsnof+9amax2lhiZnh3kCg==", + "dev": true, + "license": "MIT", "dependencies": { - "acorn": { - "version": "6.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.1.tgz", - "integrity": "sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA==", - "dev": true - } + "@cspell/dict-shell": "1.1.0" } }, - "acorn-jsx": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.2.0.tgz", - "integrity": "sha512-HiUX/+K2YpkpJ+SzBffkM/AQ2YE03S0U1kjTLVpoJdhZMOWy8qvXVN9JdLqv2QsaQ6MPYQIuNmwD8zOiYUofLQ==", - "dev": true + "node_modules/@cspell/dict-companies": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/@cspell/dict-companies/-/dict-companies-3.2.1.tgz", + "integrity": "sha512-ryaeJ1KhTTKL4mtinMtKn8wxk6/tqD4vX5tFP+Hg89SiIXmbMk5vZZwVf+eyGUWJOyw5A1CVj9EIWecgoi+jYQ==", + "dev": true, + "license": "MIT" }, - "acorn-walk": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-6.2.0.tgz", - "integrity": "sha512-7evsyfH1cLOCdAzZAd43Cic04yKydNx0cF+7tiA19p1XnLLPU4dpCQOqpjqwokFe//vS0QqfqqjCS2JkiIs0cA==", - "dev": true + "node_modules/@cspell/dict-cpp": { + "version": "6.0.8", + "resolved": "https://registry.npmjs.org/@cspell/dict-cpp/-/dict-cpp-6.0.8.tgz", + "integrity": "sha512-BzurRZilWqaJt32Gif6/yCCPi+FtrchjmnehVEIFzbWyeBd/VOUw77IwrEzehZsu5cRU91yPWuWp5fUsKfDAXA==", + "dev": true, + "license": "MIT" }, - "add-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/add-stream/-/add-stream-1.0.0.tgz", - "integrity": "sha1-anmQQ3ynNtXhKI25K9MmbV9csqo=", - "dev": true + "node_modules/@cspell/dict-cryptocurrencies": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/@cspell/dict-cryptocurrencies/-/dict-cryptocurrencies-5.0.4.tgz", + "integrity": "sha512-6iFu7Abu+4Mgqq08YhTKHfH59mpMpGTwdzDB2Y8bbgiwnGFCeoiSkVkgLn1Kel2++hYcZ8vsAW/MJS9oXxuMag==", + "dev": true, + "license": "MIT" }, - "aggregate-error": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.0.1.tgz", - "integrity": "sha512-quoaXsZ9/BLNae5yiNoUz+Nhkwz83GhWwtYFglcjEQB2NDHCIpApbqXxIFnm4Pq/Nvhrsq5sYJFyohrrxnTGAA==", + "node_modules/@cspell/dict-csharp": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/@cspell/dict-csharp/-/dict-csharp-4.0.6.tgz", + "integrity": "sha512-w/+YsqOknjQXmIlWDRmkW+BHBPJZ/XDrfJhZRQnp0wzpPOGml7W0q1iae65P2AFRtTdPKYmvSz7AL5ZRkCnSIw==", "dev": true, - "requires": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" - }, - "dependencies": { - "indent-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", - "dev": true - } - } + "license": "MIT" }, - "ajv": { - "version": "6.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.0.tgz", - "integrity": "sha512-D6gFiFA0RRLyUbvijN74DWAjXSFxWKaWP7mldxkVhyhAV3+SWA9HEJPHQ2c9soIeTFJqcSdFDGFgdqs1iUU2Hw==", - "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } + "node_modules/@cspell/dict-css": { + "version": "4.0.17", + "resolved": "https://registry.npmjs.org/@cspell/dict-css/-/dict-css-4.0.17.tgz", + "integrity": "sha512-2EisRLHk6X/PdicybwlajLGKF5aJf4xnX2uuG5lexuYKt05xV/J/OiBADmi8q9obhxf1nesrMQbqAt+6CsHo/w==", + "dev": true, + "license": "MIT" }, - "ajv-errors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/ajv-errors/-/ajv-errors-1.0.1.tgz", - "integrity": "sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==", - "dev": true + "node_modules/@cspell/dict-dart": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@cspell/dict-dart/-/dict-dart-2.3.0.tgz", + "integrity": "sha512-1aY90lAicek8vYczGPDKr70pQSTQHwMFLbmWKTAI6iavmb1fisJBS1oTmMOKE4ximDf86MvVN6Ucwx3u/8HqLg==", + "dev": true, + "license": "MIT" }, - "ajv-keywords": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.4.1.tgz", - "integrity": "sha512-RO1ibKvd27e6FEShVFfPALuHI3WjSVNeK5FIsmme/LYRNxjKuNj+Dt7bucLa6NdSv3JcVTyMlm9kGR84z1XpaQ==" + "node_modules/@cspell/dict-data-science": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/@cspell/dict-data-science/-/dict-data-science-2.0.8.tgz", + "integrity": "sha512-uyAtT+32PfM29wRBeAkUSbkytqI8bNszNfAz2sGPtZBRmsZTYugKMEO9eDjAIE/pnT9CmbjNuoiXhk+Ss4fCOg==", + "dev": true, + "license": "MIT" }, - "ansi": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/ansi/-/ansi-0.3.1.tgz", - "integrity": "sha1-DELU+xcWDVqa8eSEus4cZpIsGyE=", - "dev": true + "node_modules/@cspell/dict-django": { + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/@cspell/dict-django/-/dict-django-4.1.4.tgz", + "integrity": "sha512-fX38eUoPvytZ/2GA+g4bbdUtCMGNFSLbdJJPKX2vbewIQGfgSFJKY56vvcHJKAvw7FopjvgyS/98Ta9WN1gckg==", + "dev": true, + "license": "MIT" }, - "ansi-escapes": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-1.4.0.tgz", - "integrity": "sha1-06ioOzGapneTZisT52HHkRQiMG4=", - "dev": true + "node_modules/@cspell/dict-docker": { + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/@cspell/dict-docker/-/dict-docker-1.1.14.tgz", + "integrity": "sha512-p6Qz5mokvcosTpDlgSUREdSbZ10mBL3ndgCdEKMqjCSZJFdfxRdNdjrGER3lQ6LMq5jGr1r7nGXA0gvUJK80nw==", + "dev": true, + "license": "MIT" }, - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true + "node_modules/@cspell/dict-dotnet": { + "version": "5.0.9", + "resolved": "https://registry.npmjs.org/@cspell/dict-dotnet/-/dict-dotnet-5.0.9.tgz", + "integrity": "sha512-JGD6RJW5sHtO5lfiJl11a5DpPN6eKSz5M1YBa1I76j4dDOIqgZB6rQexlDlK1DH9B06X4GdDQwdBfnpAB0r2uQ==", + "dev": true, + "license": "MIT" }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "requires": { - "color-convert": "^1.9.0" - } + "node_modules/@cspell/dict-elixir": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/@cspell/dict-elixir/-/dict-elixir-4.0.7.tgz", + "integrity": "sha512-MAUqlMw73mgtSdxvbAvyRlvc3bYnrDqXQrx5K9SwW8F7fRYf9V4vWYFULh+UWwwkqkhX9w03ZqFYRTdkFku6uA==", + "dev": true, + "license": "MIT" }, - "any-observable": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/any-observable/-/any-observable-0.3.0.tgz", - "integrity": "sha512-/FQM1EDkTsf63Ub2C6O7GuYFDsSXUwsaZDurV0np41ocwq0jthUAYCmhBX9f+KwlaCgIuWyr/4WlUQUBfKfZog==", - "dev": true + "node_modules/@cspell/dict-en_us": { + "version": "4.4.11", + "resolved": "https://registry.npmjs.org/@cspell/dict-en_us/-/dict-en_us-4.4.11.tgz", + "integrity": "sha512-ls3ASwIL0uuAEXsxB7NsIe6GRBQ+NZfqI5k1qtNgOZ1eh1MFYjCiF+YcqArH5SFHNzOwCHRKzlLeX0ZFIok7GQ==", + "dev": true, + "license": "MIT" }, - "anymatch": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", - "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", - "dev": true, - "requires": { - "micromatch": "^3.1.4", - "normalize-path": "^2.1.1" - }, - "dependencies": { - "normalize-path": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", - "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", - "dev": true, - "requires": { - "remove-trailing-separator": "^1.0.1" - } - } - } + "node_modules/@cspell/dict-en-common-misspellings": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@cspell/dict-en-common-misspellings/-/dict-en-common-misspellings-2.1.0.tgz", + "integrity": "sha512-81NUjPIH+nvNIHCRbbMVSqPPLQUqidF/l8JdlY4OFO0W253yDIk1zaZJpJ8crwYRhOLBVBnUUfm7KYx9F2V7Zg==", + "dev": true, + "license": "CC BY-SA 4.0" }, - "aproba": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", - "dev": true + "node_modules/@cspell/dict-en-gb": { + "version": "1.1.33", + "resolved": "https://registry.npmjs.org/@cspell/dict-en-gb/-/dict-en-gb-1.1.33.tgz", + "integrity": "sha512-tKSSUf9BJEV+GJQAYGw5e+ouhEe2ZXE620S7BLKe3ZmpnjlNG9JqlnaBhkIMxKnNFkLY2BP/EARzw31AZnOv4g==", + "dev": true, + "license": "MIT" }, - "are-we-there-yet": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz", - "integrity": "sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==", + "node_modules/@cspell/dict-filetypes": { + "version": "3.0.12", + "resolved": "https://registry.npmjs.org/@cspell/dict-filetypes/-/dict-filetypes-3.0.12.tgz", + "integrity": "sha512-+ds5wgNdlUxuJvhg8A1TjuSpalDFGCh7SkANCWvIplg6QZPXL4j83lqxP7PgjHpx7PsBUS7vw0aiHPjZy9BItw==", "dev": true, - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" - } + "license": "MIT" }, - "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "node_modules/@cspell/dict-flutter": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@cspell/dict-flutter/-/dict-flutter-1.1.0.tgz", + "integrity": "sha512-3zDeS7zc2p8tr9YH9tfbOEYfopKY/srNsAa+kE3rfBTtQERAZeOhe5yxrnTPoufctXLyuUtcGMUTpxr3dO0iaA==", "dev": true, - "requires": { - "sprintf-js": "~1.0.2" - } + "license": "MIT" }, - "arr-diff": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", - "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", - "dev": true + "node_modules/@cspell/dict-fonts": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/@cspell/dict-fonts/-/dict-fonts-4.0.4.tgz", + "integrity": "sha512-cHFho4hjojBcHl6qxidl9CvUb492IuSk7xIf2G2wJzcHwGaCFa2o3gRcxmIg1j62guetAeDDFELizDaJlVRIOg==", + "dev": true, + "license": "MIT" }, - "arr-flatten": { + "node_modules/@cspell/dict-fsharp": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", - "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", - "dev": true - }, - "arr-union": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", - "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=", - "dev": true + "resolved": "https://registry.npmjs.org/@cspell/dict-fsharp/-/dict-fsharp-1.1.0.tgz", + "integrity": "sha512-oguWmHhGzgbgbEIBKtgKPrFSVAFtvGHaQS0oj+vacZqMObwkapcTGu7iwf4V3Bc2T3caf0QE6f6rQfIJFIAVsw==", + "dev": true, + "license": "MIT" }, - "array-equal": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/array-equal/-/array-equal-1.0.0.tgz", - "integrity": "sha1-jCpe8kcv2ep0KwTHenUJO6J1fJM=", - "dev": true + "node_modules/@cspell/dict-fullstack": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/@cspell/dict-fullstack/-/dict-fullstack-3.2.6.tgz", + "integrity": "sha512-cSaq9rz5RIU9j+0jcF2vnKPTQjxGXclntmoNp4XB7yFX2621PxJcekGjwf/lN5heJwVxGLL9toR0CBlGKwQBgA==", + "dev": true, + "license": "MIT" }, - "array-find-index": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", - "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=", - "dev": true + "node_modules/@cspell/dict-gaming-terms": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@cspell/dict-gaming-terms/-/dict-gaming-terms-1.1.1.tgz", + "integrity": "sha512-tb8GFxjTLDQstkJcJ90lDqF4rKKlMUKs5/ewePN9P+PYRSehqDpLI5S5meOfPit8LGszeOrjUdBQ4zXo7NpMyQ==", + "dev": true, + "license": "MIT" }, - "array-ify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/array-ify/-/array-ify-1.0.0.tgz", - "integrity": "sha1-nlKHYrSpBmrRY6aWKjZEGOlibs4=", - "dev": true + "node_modules/@cspell/dict-git": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/@cspell/dict-git/-/dict-git-3.0.6.tgz", + "integrity": "sha512-nazfOqyxlBOQGgcur9ssEOEQCEZkH8vXfQe8SDEx8sCN/g0SFm8ktabgLVmBOXjy3RzjVNLlM2nBfRQ7e6+5hQ==", + "dev": true, + "license": "MIT" }, - "array-includes": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.1.tgz", - "integrity": "sha512-c2VXaCHl7zPsvpkFsw4nxvFie4fh1ur9bpcgsVkIjqn0H/Xwdg+7fv3n2r/isyS8EBj5b06M9kHyZuIr4El6WQ==", + "node_modules/@cspell/dict-golang": { + "version": "6.0.22", + "resolved": "https://registry.npmjs.org/@cspell/dict-golang/-/dict-golang-6.0.22.tgz", + "integrity": "sha512-FvV0m3Y0nUFxw36uDCD8UtfOPv4wsZnnlabNwB3xNZ2IBn0gBURuMUZywScb9sd2wXM8VFBRoU//tc6NQsOVOg==", "dev": true, - "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.0", - "is-string": "^1.0.5" - } + "license": "MIT" }, - "array-union": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", - "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", - "dev": true + "node_modules/@cspell/dict-google": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/@cspell/dict-google/-/dict-google-1.0.8.tgz", + "integrity": "sha512-BnMHgcEeaLyloPmBs8phCqprI+4r2Jb8rni011A8hE+7FNk7FmLE3kiwxLFrcZnnb7eqM0agW4zUaNoB0P+z8A==", + "dev": true, + "license": "MIT" }, - "array-unique": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", - "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", - "dev": true + "node_modules/@cspell/dict-haskell": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/@cspell/dict-haskell/-/dict-haskell-4.0.5.tgz", + "integrity": "sha512-s4BG/4tlj2pPM9Ha7IZYMhUujXDnI0Eq1+38UTTCpatYLbQqDwRFf2KNPLRqkroU+a44yTUAe0rkkKbwy4yRtQ==", + "dev": true, + "license": "MIT" }, - "array.prototype.flat": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.3.tgz", - "integrity": "sha512-gBlRZV0VSmfPIeWfuuy56XZMvbVfbEUnOXUvt3F/eUUUSyzlgLxhEX4YAEpxNAogRGehPSnfXyPtYyKAhkzQhQ==", + "node_modules/@cspell/dict-html": { + "version": "4.0.11", + "resolved": "https://registry.npmjs.org/@cspell/dict-html/-/dict-html-4.0.11.tgz", + "integrity": "sha512-QR3b/PB972SRQ2xICR1Nw/M44IJ6rjypwzA4jn+GH8ydjAX9acFNfc+hLZVyNe0FqsE90Gw3evLCOIF0vy1vQw==", "dev": true, - "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.0-next.1" - } + "license": "MIT" }, - "arrify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", - "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", - "dev": true + "node_modules/@cspell/dict-html-symbol-entities": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@cspell/dict-html-symbol-entities/-/dict-html-symbol-entities-4.0.3.tgz", + "integrity": "sha512-aABXX7dMLNFdSE8aY844X4+hvfK7977sOWgZXo4MTGAmOzR8524fjbJPswIBK7GaD3+SgFZ2yP2o0CFvXDGF+A==", + "dev": true, + "license": "MIT" }, - "asn1": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", - "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==", + "node_modules/@cspell/dict-java": { + "version": "5.0.11", + "resolved": "https://registry.npmjs.org/@cspell/dict-java/-/dict-java-5.0.11.tgz", + "integrity": "sha512-T4t/1JqeH33Raa/QK/eQe26FE17eUCtWu+JsYcTLkQTci2dk1DfcIKo8YVHvZXBnuM43ATns9Xs0s+AlqDeH7w==", "dev": true, - "requires": { - "safer-buffer": "~2.1.0" - } + "license": "MIT" }, - "asn1.js": { - "version": "4.10.1", - "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.10.1.tgz", - "integrity": "sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==", + "node_modules/@cspell/dict-julia": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@cspell/dict-julia/-/dict-julia-1.1.0.tgz", + "integrity": "sha512-CPUiesiXwy3HRoBR3joUseTZ9giFPCydSKu2rkh6I2nVjXnl5vFHzOMLXpbF4HQ1tH2CNfnDbUndxD+I+7eL9w==", "dev": true, - "requires": { - "bn.js": "^4.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0" - } + "license": "MIT" }, - "assert": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/assert/-/assert-1.5.0.tgz", - "integrity": "sha512-EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA==", + "node_modules/@cspell/dict-k8s": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/@cspell/dict-k8s/-/dict-k8s-1.0.11.tgz", + "integrity": "sha512-8ojNwB5j4PfZ1Gq9n5c/HKJCtZD3h6+wFy+zpALpDWFFQ2qT22Be30+3PVd+G5gng8or0LeK8VgKKd0l1uKPTA==", "dev": true, - "requires": { - "object-assign": "^4.1.1", - "util": "0.10.3" - }, - "dependencies": { - "inherits": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", - "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=", - "dev": true - }, - "util": { - "version": "0.10.3", - "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", - "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", - "dev": true, - "requires": { - "inherits": "2.0.1" - } - } - } + "license": "MIT" }, - "assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", - "dev": true + "node_modules/@cspell/dict-kotlin": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@cspell/dict-kotlin/-/dict-kotlin-1.1.0.tgz", + "integrity": "sha512-vySaVw6atY7LdwvstQowSbdxjXG6jDhjkWVWSjg1XsUckyzH1JRHXe9VahZz1i7dpoFEUOWQrhIe5B9482UyJQ==", + "dev": true, + "license": "MIT" }, - "assign-symbols": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", - "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", - "dev": true + "node_modules/@cspell/dict-latex": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@cspell/dict-latex/-/dict-latex-4.0.3.tgz", + "integrity": "sha512-2KXBt9fSpymYHxHfvhUpjUFyzrmN4c4P8mwIzweLyvqntBT3k0YGZJSriOdjfUjwSygrfEwiuPI1EMrvgrOMJw==", + "dev": true, + "license": "MIT" }, - "astral-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz", - "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==", - "dev": true + "node_modules/@cspell/dict-lorem-ipsum": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/@cspell/dict-lorem-ipsum/-/dict-lorem-ipsum-4.0.4.tgz", + "integrity": "sha512-+4f7vtY4dp2b9N5fn0za/UR0kwFq2zDtA62JCbWHbpjvO9wukkbl4rZg4YudHbBgkl73HRnXFgCiwNhdIA1JPw==", + "dev": true, + "license": "MIT" }, - "async": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/async/-/async-1.0.0.tgz", - "integrity": "sha1-+PwEyjoTeErenhZBr5hXjPvWR6k=", - "dev": true + "node_modules/@cspell/dict-lua": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/@cspell/dict-lua/-/dict-lua-4.0.7.tgz", + "integrity": "sha512-Wbr7YSQw+cLHhTYTKV6cAljgMgcY+EUAxVIZW3ljKswEe4OLxnVJ7lPqZF5JKjlXdgCjbPSimsHqyAbC5pQN/Q==", + "dev": true, + "license": "MIT" }, - "async-each": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.3.tgz", - "integrity": "sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==", - "dev": true + "node_modules/@cspell/dict-makefile": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@cspell/dict-makefile/-/dict-makefile-1.0.4.tgz", + "integrity": "sha512-E4hG/c0ekPqUBvlkrVvzSoAA+SsDA9bLi4xSV3AXHTVru7Y2bVVGMPtpfF+fI3zTkww/jwinprcU1LSohI3ylw==", + "dev": true, + "license": "MIT" }, - "asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", - "dev": true - }, - "atob": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", - "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", - "dev": true - }, - "autoprefixer": { - "version": "9.7.5", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-9.7.5.tgz", - "integrity": "sha512-URo6Zvt7VYifomeAfJlMFnYDhow1rk2bufwkbamPEAtQFcL11moLk4PnR7n9vlu7M+BkXAZkHFA0mIcY7tjQFg==", - "dev": true, - "requires": { - "browserslist": "^4.11.0", - "caniuse-lite": "^1.0.30001036", - "chalk": "^2.4.2", - "normalize-range": "^0.1.2", - "num2fraction": "^1.2.2", - "postcss": "^7.0.27", - "postcss-value-parser": "^4.0.3" + "node_modules/@cspell/dict-markdown": { + "version": "2.0.11", + "resolved": "https://registry.npmjs.org/@cspell/dict-markdown/-/dict-markdown-2.0.11.tgz", + "integrity": "sha512-stZieFKJyMQbzKTVoalSx2QqCpB0j8nPJF/5x+sBnDIWgMC65jp8Wil+jccWh9/vnUVukP3Ejewven5NC7SWuQ==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "@cspell/dict-css": "^4.0.17", + "@cspell/dict-html": "^4.0.11", + "@cspell/dict-html-symbol-entities": "^4.0.3", + "@cspell/dict-typescript": "^3.2.2" } }, - "aws-sign2": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", - "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", - "dev": true - }, - "aws4": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.9.1.tgz", - "integrity": "sha512-wMHVg2EOHaMRxbzgFJ9gtjOOCrI80OHLG14rxi28XwOW8ux6IiEbRCGGGqCtdAIg4FQCbW20k9RsT4y3gJlFug==", - "dev": true + "node_modules/@cspell/dict-monkeyc": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/@cspell/dict-monkeyc/-/dict-monkeyc-1.0.10.tgz", + "integrity": "sha512-7RTGyKsTIIVqzbvOtAu6Z/lwwxjGRtY5RkKPlXKHEoEAgIXwfDxb5EkVwzGQwQr8hF/D3HrdYbRT8MFBfsueZw==", + "dev": true, + "license": "MIT" }, - "babel-code-frame": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", - "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", + "node_modules/@cspell/dict-node": { + "version": "5.0.7", + "resolved": "https://registry.npmjs.org/@cspell/dict-node/-/dict-node-5.0.7.tgz", + "integrity": "sha512-ZaPpBsHGQCqUyFPKLyCNUH2qzolDRm1/901IO8e7btk7bEDF56DN82VD43gPvD4HWz3yLs/WkcLa01KYAJpnOw==", "dev": true, - "requires": { - "chalk": "^1.1.3", - "esutils": "^2.0.2", - "js-tokens": "^3.0.2" - }, - "dependencies": { - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true - }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "dev": true, - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - } - }, - "js-tokens": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", - "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", - "dev": true - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true - } - } + "license": "MIT" }, - "babel-jest": { - "version": "25.4.0", - "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-25.4.0.tgz", - "integrity": "sha512-p+epx4K0ypmHuCnd8BapfyOwWwosNCYhedetQey1awddtfmEX0MmdxctGl956uwUmjwXR5VSS5xJcGX9DvdIog==", + "node_modules/@cspell/dict-npm": { + "version": "5.2.6", + "resolved": "https://registry.npmjs.org/@cspell/dict-npm/-/dict-npm-5.2.6.tgz", + "integrity": "sha512-VGEY1ZjE8c8JCA+dic1IdYmVTNfVtWAw7V2n4TXO1+mKfRL+BsPsqEoH8iR0OMutC9QXjVNh32rzMh4D3E+Lxw==", "dev": true, - "requires": { - "@jest/transform": "^25.4.0", - "@jest/types": "^25.4.0", - "@types/babel__core": "^7.1.7", - "babel-plugin-istanbul": "^6.0.0", - "babel-preset-jest": "^25.4.0", - "chalk": "^3.0.0", - "slash": "^3.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "requires": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true - }, - "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } + "license": "MIT" }, - "babel-plugin-dynamic-import-node": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz", - "integrity": "sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==", + "node_modules/@cspell/dict-php": { + "version": "4.0.14", + "resolved": "https://registry.npmjs.org/@cspell/dict-php/-/dict-php-4.0.14.tgz", + "integrity": "sha512-7zur8pyncYZglxNmqsRycOZ6inpDoVd4yFfz1pQRe5xaRWMiK3Km4n0/X/1YMWhh3e3Sl/fQg5Axb2hlN68t1g==", "dev": true, - "requires": { - "object.assign": "^4.1.0" - } + "license": "MIT" }, - "babel-plugin-istanbul": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.0.0.tgz", - "integrity": "sha512-AF55rZXpe7trmEylbaE1Gv54wn6rwU03aptvRoVIGP8YykoSxqdVLV1TfwflBCE/QtHmqtP8SWlTENqbK8GCSQ==", + "node_modules/@cspell/dict-powershell": { + "version": "5.0.14", + "resolved": "https://registry.npmjs.org/@cspell/dict-powershell/-/dict-powershell-5.0.14.tgz", + "integrity": "sha512-ktjjvtkIUIYmj/SoGBYbr3/+CsRGNXGpvVANrY0wlm/IoGlGywhoTUDYN0IsGwI2b8Vktx3DZmQkfb3Wo38jBA==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@istanbuljs/load-nyc-config": "^1.0.0", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-instrument": "^4.0.0", - "test-exclude": "^6.0.0" - } + "license": "MIT" }, - "babel-plugin-jest-hoist": { - "version": "25.4.0", - "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-25.4.0.tgz", - "integrity": "sha512-M3a10JCtTyKevb0MjuH6tU+cP/NVQZ82QPADqI1RQYY1OphztsCeIeQmTsHmF/NS6m0E51Zl4QNsI3odXSQF5w==", + "node_modules/@cspell/dict-public-licenses": { + "version": "2.0.13", + "resolved": "https://registry.npmjs.org/@cspell/dict-public-licenses/-/dict-public-licenses-2.0.13.tgz", + "integrity": "sha512-1Wdp/XH1ieim7CadXYE7YLnUlW0pULEjVl9WEeziZw3EKCAw8ZI8Ih44m4bEa5VNBLnuP5TfqC4iDautAleQzQ==", "dev": true, - "requires": { - "@types/babel__traverse": "^7.0.6" - } + "license": "MIT" }, - "babel-polyfill": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-polyfill/-/babel-polyfill-6.26.0.tgz", - "integrity": "sha1-N5k3q8Z9eJWXCtxiHyhM2WbPIVM=", + "node_modules/@cspell/dict-python": { + "version": "4.2.18", + "resolved": "https://registry.npmjs.org/@cspell/dict-python/-/dict-python-4.2.18.tgz", + "integrity": "sha512-hYczHVqZBsck7DzO5LumBLJM119a3F17aj8a7lApnPIS7cmEwnPc2eACNscAHDk7qAo2127oI7axUoFMe9/g1g==", "dev": true, - "requires": { - "babel-runtime": "^6.26.0", - "core-js": "^2.5.0", - "regenerator-runtime": "^0.10.5" - }, + "license": "MIT", "dependencies": { - "regenerator-runtime": { - "version": "0.10.5", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.5.tgz", - "integrity": "sha1-M2w+/BIgrc7dosn6tntaeVWjNlg=", - "dev": true - } + "@cspell/dict-data-science": "^2.0.8" } }, - "babel-preset-current-node-syntax": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-0.1.2.tgz", - "integrity": "sha512-u/8cS+dEiK1SFILbOC8/rUI3ml9lboKuuMvZ/4aQnQmhecQAgPw5ew066C1ObnEAUmlx7dv/s2z52psWEtLNiw==", + "node_modules/@cspell/dict-r": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@cspell/dict-r/-/dict-r-2.1.0.tgz", + "integrity": "sha512-k2512wgGG0lTpTYH9w5Wwco+lAMf3Vz7mhqV8+OnalIE7muA0RSuD9tWBjiqLcX8zPvEJr4LdgxVju8Gk3OKyA==", "dev": true, - "requires": { - "@babel/plugin-syntax-async-generators": "^7.8.4", - "@babel/plugin-syntax-bigint": "^7.8.3", - "@babel/plugin-syntax-class-properties": "^7.8.3", - "@babel/plugin-syntax-json-strings": "^7.8.3", - "@babel/plugin-syntax-logical-assignment-operators": "^7.8.3", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", - "@babel/plugin-syntax-numeric-separator": "^7.8.3", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", - "@babel/plugin-syntax-optional-chaining": "^7.8.3" - } + "license": "MIT" }, - "babel-preset-jest": { - "version": "25.4.0", - "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-25.4.0.tgz", - "integrity": "sha512-PwFiEWflHdu3JCeTr0Pb9NcHHE34qWFnPQRVPvqQITx4CsDCzs6o05923I10XvLvn9nNsRHuiVgB72wG/90ZHQ==", + "node_modules/@cspell/dict-ruby": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/@cspell/dict-ruby/-/dict-ruby-5.0.8.tgz", + "integrity": "sha512-ixuTneU0aH1cPQRbWJvtvOntMFfeQR2KxT8LuAv5jBKqQWIHSxzGlp+zX3SVyoeR0kOWiu64/O5Yn836A5yMcQ==", "dev": true, - "requires": { - "babel-plugin-jest-hoist": "^25.4.0", - "babel-preset-current-node-syntax": "^0.1.2" - } + "license": "MIT" }, - "babel-runtime": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", - "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", + "node_modules/@cspell/dict-rust": { + "version": "4.0.11", + "resolved": "https://registry.npmjs.org/@cspell/dict-rust/-/dict-rust-4.0.11.tgz", + "integrity": "sha512-OGWDEEzm8HlkSmtD8fV3pEcO2XBpzG2XYjgMCJCRwb2gRKvR+XIm6Dlhs04N/K2kU+iH8bvrqNpM8fS/BFl0uw==", "dev": true, - "requires": { - "core-js": "^2.4.0", - "regenerator-runtime": "^0.11.0" - }, - "dependencies": { - "regenerator-runtime": { - "version": "0.11.1", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", - "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==", - "dev": true - } - } - }, - "balanced-match": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", - "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", - "dev": true - }, - "base": { - "version": "0.11.2", - "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", - "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", - "dev": true, - "requires": { - "cache-base": "^1.0.1", - "class-utils": "^0.3.5", - "component-emitter": "^1.2.1", - "define-property": "^1.0.0", - "isobject": "^3.0.1", - "mixin-deep": "^1.2.0", - "pascalcase": "^0.1.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "dev": true, - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } - } - }, - "base64-js": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.1.tgz", - "integrity": "sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g==", - "dev": true + "license": "MIT" }, - "bcrypt-pbkdf": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", - "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", + "node_modules/@cspell/dict-scala": { + "version": "5.0.7", + "resolved": "https://registry.npmjs.org/@cspell/dict-scala/-/dict-scala-5.0.7.tgz", + "integrity": "sha512-yatpSDW/GwulzO3t7hB5peoWwzo+Y3qTc0pO24Jf6f88jsEeKmDeKkfgPbYuCgbE4jisGR4vs4+jfQZDIYmXPA==", "dev": true, - "requires": { - "tweetnacl": "^0.14.3" - } - }, - "big.js": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", - "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==" + "license": "MIT" }, - "binary-extensions": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", - "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", - "dev": true + "node_modules/@cspell/dict-shell": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@cspell/dict-shell/-/dict-shell-1.1.0.tgz", + "integrity": "sha512-D/xHXX7T37BJxNRf5JJHsvziFDvh23IF/KvkZXNSh8VqcRdod3BAz9VGHZf6VDqcZXr1VRqIYR3mQ8DSvs3AVQ==", + "dev": true, + "license": "MIT" }, - "bindings": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", - "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", + "node_modules/@cspell/dict-software-terms": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@cspell/dict-software-terms/-/dict-software-terms-5.1.0.tgz", + "integrity": "sha512-8zsOVzcHpb4PAaKtOWAIJRbpaNINaUZRsHzqFb3K9hQIC6hxmet/avLlCeKdnmBVZkn3TmRN5caxTJamJvbXww==", "dev": true, - "optional": true, - "requires": { - "file-uri-to-path": "1.0.0" - } + "license": "MIT" }, - "bluebird": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", - "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==", - "dev": true + "node_modules/@cspell/dict-sql": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@cspell/dict-sql/-/dict-sql-2.2.0.tgz", + "integrity": "sha512-MUop+d1AHSzXpBvQgQkCiok8Ejzb+nrzyG16E8TvKL2MQeDwnIvMe3bv90eukP6E1HWb+V/MA/4pnq0pcJWKqQ==", + "dev": true, + "license": "MIT" }, - "bn.js": { - "version": "4.11.8", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", - "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==", - "dev": true + "node_modules/@cspell/dict-svelte": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/@cspell/dict-svelte/-/dict-svelte-1.0.6.tgz", + "integrity": "sha512-8LAJHSBdwHCoKCSy72PXXzz7ulGROD0rP1CQ0StOqXOOlTUeSFaJJlxNYjlONgd2c62XBQiN2wgLhtPN+1Zv7Q==", + "dev": true, + "license": "MIT" }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "node_modules/@cspell/dict-swift": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@cspell/dict-swift/-/dict-swift-2.0.5.tgz", + "integrity": "sha512-3lGzDCwUmnrfckv3Q4eVSW3sK3cHqqHlPprFJZD4nAqt23ot7fic5ALR7J4joHpvDz36nHX34TgcbZNNZOC/JA==", "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } + "license": "MIT" }, - "braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", - "dev": true, - "requires": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } + "node_modules/@cspell/dict-terraform": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@cspell/dict-terraform/-/dict-terraform-1.1.1.tgz", + "integrity": "sha512-07KFDwCU7EnKl4hOZLsLKlj6Zceq/IsQ3LRWUyIjvGFfZHdoGtFdCp3ZPVgnFaAcd/DKv+WVkrOzUBSYqHopQQ==", + "dev": true, + "license": "MIT" }, - "brorand": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", - "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=", - "dev": true + "node_modules/@cspell/dict-typescript": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/@cspell/dict-typescript/-/dict-typescript-3.2.2.tgz", + "integrity": "sha512-H9Y+uUHsTIDFO/jdfUAcqmcd5osT+2DB5b0aRCHfLWN/twUbGn/1qq3b7YwEvttxKlYzWHU3uNFf+KfA93VY7w==", + "dev": true, + "license": "MIT" }, - "browser-process-hrtime": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz", - "integrity": "sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==", - "dev": true + "node_modules/@cspell/dict-vue": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@cspell/dict-vue/-/dict-vue-3.0.4.tgz", + "integrity": "sha512-0dPtI0lwHcAgSiQFx8CzvqjdoXROcH+1LyqgROCpBgppommWpVhbQ0eubnKotFEXgpUCONVkeZJ6Ql8NbTEu+w==", + "dev": true, + "license": "MIT" }, - "browser-resolve": { - "version": "1.11.3", - "resolved": "https://registry.npmjs.org/browser-resolve/-/browser-resolve-1.11.3.tgz", - "integrity": "sha512-exDi1BYWB/6raKHmDTCicQfTkqwN5fioMFV4j8BsfMU4R2DK/QfZfK7kOVkmWCNANf0snkBzqGqAJBao9gZMdQ==", + "node_modules/@cspell/dynamic-import": { + "version": "8.19.4", + "resolved": "https://registry.npmjs.org/@cspell/dynamic-import/-/dynamic-import-8.19.4.tgz", + "integrity": "sha512-0LLghC64+SiwQS20Sa0VfFUBPVia1rNyo0bYeIDoB34AA3qwguDBVJJkthkpmaP1R2JeR/VmxmJowuARc4ZUxA==", "dev": true, - "requires": { - "resolve": "1.1.7" - }, + "license": "MIT", "dependencies": { - "resolve": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz", - "integrity": "sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs=", - "dev": true - } + "@cspell/url": "8.19.4", + "import-meta-resolve": "^4.1.0" + }, + "engines": { + "node": ">=18.0" } }, - "browserify-aes": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", - "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", + "node_modules/@cspell/filetypes": { + "version": "8.19.4", + "resolved": "https://registry.npmjs.org/@cspell/filetypes/-/filetypes-8.19.4.tgz", + "integrity": "sha512-D9hOCMyfKtKjjqQJB8F80PWsjCZhVGCGUMiDoQpcta0e+Zl8vHgzwaC0Ai4QUGBhwYEawHGiWUd7Y05u/WXiNQ==", "dev": true, - "requires": { - "buffer-xor": "^1.0.3", - "cipher-base": "^1.0.0", - "create-hash": "^1.1.0", - "evp_bytestokey": "^1.0.3", - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" + "license": "MIT", + "engines": { + "node": ">=18" } }, - "browserify-cipher": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", - "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", + "node_modules/@cspell/strong-weak-map": { + "version": "8.19.4", + "resolved": "https://registry.npmjs.org/@cspell/strong-weak-map/-/strong-weak-map-8.19.4.tgz", + "integrity": "sha512-MUfFaYD8YqVe32SQaYLI24/bNzaoyhdBIFY5pVrvMo1ZCvMl8AlfI2OcBXvcGb5aS5z7sCNCJm11UuoYbLI1zw==", "dev": true, - "requires": { - "browserify-aes": "^1.0.4", - "browserify-des": "^1.0.0", - "evp_bytestokey": "^1.0.0" + "license": "MIT", + "engines": { + "node": ">=18" } }, - "browserify-des": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", - "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", + "node_modules/@cspell/url": { + "version": "8.19.4", + "resolved": "https://registry.npmjs.org/@cspell/url/-/url-8.19.4.tgz", + "integrity": "sha512-Pa474iBxS+lxsAL4XkETPGIq3EgMLCEb9agj3hAd2VGMTCApaiUvamR4b+uGXIPybN70piFxvzrfoxsG2uIP6A==", "dev": true, - "requires": { - "cipher-base": "^1.0.1", - "des.js": "^1.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" + "license": "MIT", + "engines": { + "node": ">=18.0" } }, - "browserify-rsa": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz", - "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=", + "node_modules/@csstools/cascade-layer-name-parser": { + "version": "1.0.13", + "resolved": "https://registry.npmjs.org/@csstools/cascade-layer-name-parser/-/cascade-layer-name-parser-1.0.13.tgz", + "integrity": "sha512-MX0yLTwtZzr82sQ0zOjqimpZbzjMaK/h2pmlrLK7DCzlmiZLYFpoO94WmN1akRVo6ll/TdpHb53vihHLUMyvng==", "dev": true, - "requires": { - "bn.js": "^4.1.0", - "randombytes": "^2.0.1" + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT", + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "@csstools/css-parser-algorithms": "^2.7.1", + "@csstools/css-tokenizer": "^2.4.1" } }, - "browserify-sign": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.0.4.tgz", - "integrity": "sha1-qk62jl17ZYuqa/alfmMMvXqT0pg=", + "node_modules/@csstools/color-helpers": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/@csstools/color-helpers/-/color-helpers-4.2.1.tgz", + "integrity": "sha512-CEypeeykO9AN7JWkr1OEOQb0HRzZlPWGwV0Ya6DuVgFdDi6g3ma/cPZ5ZPZM4AWQikDpq/0llnGGlIL+j8afzw==", "dev": true, - "requires": { - "bn.js": "^4.1.1", - "browserify-rsa": "^4.0.0", - "create-hash": "^1.1.0", - "create-hmac": "^1.1.2", - "elliptic": "^6.0.0", - "inherits": "^2.0.1", - "parse-asn1": "^5.0.0" + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "engines": { + "node": "^14 || ^16 || >=18" } }, - "browserify-zlib": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", - "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", + "node_modules/@csstools/css-calc": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@csstools/css-calc/-/css-calc-1.2.4.tgz", + "integrity": "sha512-tfOuvUQeo7Hz+FcuOd3LfXVp+342pnWUJ7D2y8NUpu1Ww6xnTbHLpz018/y6rtbHifJ3iIEf9ttxXd8KG7nL0Q==", "dev": true, - "requires": { - "pako": "~1.0.5" + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT", + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "@csstools/css-parser-algorithms": "^2.7.1", + "@csstools/css-tokenizer": "^2.4.1" } }, - "browserslist": { - "version": "4.11.1", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.11.1.tgz", - "integrity": "sha512-DCTr3kDrKEYNw6Jb9HFxVLQNaue8z+0ZfRBRjmCunKDEXEBajKDj2Y+Uelg+Pi29OnvaSGwjOsnRyNEkXzHg5g==", + "node_modules/@csstools/css-color-parser": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@csstools/css-color-parser/-/css-color-parser-2.0.5.tgz", + "integrity": "sha512-lRZSmtl+DSjok3u9hTWpmkxFZnz7stkbZxzKc08aDUsdrWwhSgWo8yq9rq9DaFUtbAyAq2xnH92fj01S+pwIww==", "dev": true, - "requires": { - "caniuse-lite": "^1.0.30001038", - "electron-to-chromium": "^1.3.390", - "node-releases": "^1.1.53", - "pkg-up": "^2.0.0" + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT", + "dependencies": { + "@csstools/color-helpers": "^4.2.1", + "@csstools/css-calc": "^1.2.4" + }, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "@csstools/css-parser-algorithms": "^2.7.1", + "@csstools/css-tokenizer": "^2.4.1" } }, - "bser": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz", - "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==", + "node_modules/@csstools/css-parser-algorithms": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/@csstools/css-parser-algorithms/-/css-parser-algorithms-2.7.1.tgz", + "integrity": "sha512-2SJS42gxmACHgikc1WGesXLIT8d/q2l0UFM7TaEeIzdFCE/FPMtTiizcPGGJtlPo2xuQzY09OhrLTzRxqJqwGw==", "dev": true, - "requires": { - "node-int64": "^0.4.0" + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT", + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "@csstools/css-tokenizer": "^2.4.1" } }, - "buffer": { - "version": "4.9.2", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.2.tgz", - "integrity": "sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg==", + "node_modules/@csstools/css-tokenizer": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@csstools/css-tokenizer/-/css-tokenizer-2.4.1.tgz", + "integrity": "sha512-eQ9DIktFJBhGjioABJRtUucoWR2mwllurfnM8LuNGAqX3ViZXaUchqk+1s7jjtkFiT9ySdACsFEA3etErkALUg==", "dev": true, - "requires": { - "base64-js": "^1.0.2", - "ieee754": "^1.1.4", - "isarray": "^1.0.0" - } - }, - "buffer-from": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", - "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", - "dev": true - }, - "buffer-xor": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", - "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=", - "dev": true - }, - "builtin-status-codes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", - "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=", - "dev": true - }, - "cacache": { - "version": "12.0.4", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-12.0.4.tgz", - "integrity": "sha512-a0tMB40oefvuInr4Cwb3GerbL9xTj1D5yg0T5xrjGCGyfvbxseIXX7BAO/u/hIXdafzOI5JC3wDwHyf24buOAQ==", - "dev": true, - "requires": { - "bluebird": "^3.5.5", - "chownr": "^1.1.1", - "figgy-pudding": "^3.5.1", - "glob": "^7.1.4", - "graceful-fs": "^4.1.15", - "infer-owner": "^1.0.3", - "lru-cache": "^5.1.1", - "mississippi": "^3.0.0", - "mkdirp": "^0.5.1", - "move-concurrently": "^1.0.1", - "promise-inflight": "^1.0.1", - "rimraf": "^2.6.3", - "ssri": "^6.0.1", - "unique-filename": "^1.1.1", - "y18n": "^4.0.0" - }, - "dependencies": { - "lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", - "dev": true, - "requires": { - "yallist": "^3.0.2" - } + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" }, - "yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", - "dev": true + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" } + ], + "license": "MIT", + "engines": { + "node": "^14 || ^16 || >=18" } }, - "cache-base": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", - "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", - "dev": true, - "requires": { - "collection-visit": "^1.0.0", - "component-emitter": "^1.2.1", - "get-value": "^2.0.6", - "has-value": "^1.0.0", - "isobject": "^3.0.1", - "set-value": "^2.0.0", - "to-object-path": "^0.3.0", - "union-value": "^1.0.0", - "unset-value": "^1.0.0" - } - }, - "caller-callsite": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/caller-callsite/-/caller-callsite-2.0.0.tgz", - "integrity": "sha1-hH4PzgoiN1CpoCfFSzNzGtMVQTQ=", + "node_modules/@csstools/media-query-list-parser": { + "version": "2.1.13", + "resolved": "https://registry.npmjs.org/@csstools/media-query-list-parser/-/media-query-list-parser-2.1.13.tgz", + "integrity": "sha512-XaHr+16KRU9Gf8XLi3q8kDlI18d5vzKSKCY510Vrtc9iNR0NJzbY9hhTmwhzYZj/ZwGL4VmB3TA9hJW0Um2qFA==", "dev": true, - "requires": { - "callsites": "^2.0.0" - }, - "dependencies": { - "callsites": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-2.0.0.tgz", - "integrity": "sha1-BuuE8A7qQT2oav/vrL/7Ngk7PFA=", - "dev": true + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" } + ], + "license": "MIT", + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "@csstools/css-parser-algorithms": "^2.7.1", + "@csstools/css-tokenizer": "^2.4.1" } }, - "caller-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/caller-path/-/caller-path-2.0.0.tgz", - "integrity": "sha1-Ro+DBE42mrIBD6xfBs7uFbsssfQ=", + "node_modules/@csstools/postcss-cascade-layers": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/@csstools/postcss-cascade-layers/-/postcss-cascade-layers-4.0.6.tgz", + "integrity": "sha512-Xt00qGAQyqAODFiFEJNkTpSUz5VfYqnDLECdlA/Vv17nl/OIV5QfTRHGAXrBGG5YcJyHpJ+GF9gF/RZvOQz4oA==", "dev": true, - "requires": { - "caller-callsite": "^2.0.0" + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/selector-specificity": "^3.1.1", + "postcss-selector-parser": "^6.0.13" + }, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "dev": true - }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==" - }, - "camelcase-keys": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-4.2.0.tgz", - "integrity": "sha1-oqpfsa9oh1glnDLBQUJteJI7m3c=", + "node_modules/@csstools/postcss-color-function": { + "version": "3.0.19", + "resolved": "https://registry.npmjs.org/@csstools/postcss-color-function/-/postcss-color-function-3.0.19.tgz", + "integrity": "sha512-d1OHEXyYGe21G3q88LezWWx31ImEDdmINNDy0LyLNN9ChgN2bPxoubUPiHf9KmwypBMaHmNcMuA/WZOKdZk/Lg==", "dev": true, - "requires": { - "camelcase": "^4.1.0", - "map-obj": "^2.0.0", - "quick-lru": "^1.0.0" - }, - "dependencies": { - "camelcase": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", - "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", - "dev": true + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/css-color-parser": "^2.0.4", + "@csstools/css-parser-algorithms": "^2.7.1", + "@csstools/css-tokenizer": "^2.4.1", + "@csstools/postcss-progressive-custom-properties": "^3.3.0", + "@csstools/utilities": "^1.0.0" + }, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "caniuse-lite": { - "version": "1.0.30001039", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001039.tgz", - "integrity": "sha512-SezbWCTT34eyFoWHgx8UWso7YtvtM7oosmFoXbCkdC6qJzRfBTeTgE9REtKtiuKXuMwWTZEvdnFNGAyVMorv8Q==", - "dev": true - }, - "caporal": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/caporal/-/caporal-1.3.0.tgz", - "integrity": "sha512-4bj21UXbEu5cF+1gVjhwwRqMhY3lR7CUTlBr6YX3uzftL4l/sbu8EoHfOLZWHr+HeiosW9fTWkQCS2UZMAk5lw==", + "node_modules/@csstools/postcss-color-mix-function": { + "version": "2.0.19", + "resolved": "https://registry.npmjs.org/@csstools/postcss-color-mix-function/-/postcss-color-mix-function-2.0.19.tgz", + "integrity": "sha512-mLvQlMX+keRYr16AuvuV8WYKUwF+D0DiCqlBdvhQ0KYEtcQl9/is9Ssg7RcIys8x0jIn2h1zstS4izckdZj9wg==", "dev": true, - "requires": { - "bluebird": "^3.4.7", - "cli-table3": "^0.5.0", - "colorette": "^1.0.1", - "fast-levenshtein": "^2.0.6", - "lodash": "^4.17.14", - "micromist": "1.1.0", - "prettyjson": "^1.2.1", - "tabtab": "^2.2.2", - "winston": "^2.3.1" + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/css-color-parser": "^2.0.4", + "@csstools/css-parser-algorithms": "^2.7.1", + "@csstools/css-tokenizer": "^2.4.1", + "@csstools/postcss-progressive-custom-properties": "^3.3.0", + "@csstools/utilities": "^1.0.0" + }, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "capture-exit": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/capture-exit/-/capture-exit-2.0.0.tgz", - "integrity": "sha512-PiT/hQmTonHhl/HFGN+Lx3JJUznrVYJ3+AQsnthneZbvW7x+f08Tk7yLJTLEOUvBTbduLeeBkxEaYXUOUrRq6g==", + "node_modules/@csstools/postcss-content-alt-text": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@csstools/postcss-content-alt-text/-/postcss-content-alt-text-1.0.0.tgz", + "integrity": "sha512-SkHdj7EMM/57GVvSxSELpUg7zb5eAndBeuvGwFzYtU06/QXJ/h9fuK7wO5suteJzGhm3GDF/EWPCdWV2h1IGHQ==", "dev": true, - "requires": { - "rsvp": "^4.8.4" - } - }, - "caseless": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", - "dev": true - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "requires": { - "has-flag": "^3.0.0" - } + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/css-parser-algorithms": "^2.7.1", + "@csstools/css-tokenizer": "^2.4.1", + "@csstools/postcss-progressive-custom-properties": "^3.3.0", + "@csstools/utilities": "^1.0.0" + }, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "chardet": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", - "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", - "dev": true - }, - "chokidar": { - "version": "2.1.8", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz", - "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==", + "node_modules/@csstools/postcss-exponential-functions": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/@csstools/postcss-exponential-functions/-/postcss-exponential-functions-1.0.9.tgz", + "integrity": "sha512-x1Avr15mMeuX7Z5RJUl7DmjhUtg+Amn5DZRD0fQ2TlTFTcJS8U1oxXQ9e5mA62S2RJgUU6db20CRoJyDvae2EQ==", "dev": true, - "requires": { - "anymatch": "^2.0.0", - "async-each": "^1.0.1", - "braces": "^2.3.2", - "fsevents": "^1.2.7", - "glob-parent": "^3.1.0", - "inherits": "^2.0.3", - "is-binary-path": "^1.0.0", - "is-glob": "^4.0.0", - "normalize-path": "^3.0.0", - "path-is-absolute": "^1.0.0", - "readdirp": "^2.2.1", - "upath": "^1.1.1" + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/css-calc": "^1.2.4", + "@csstools/css-parser-algorithms": "^2.7.1", + "@csstools/css-tokenizer": "^2.4.1" + }, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "chownr": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", - "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==", - "dev": true - }, - "chrome-trace-event": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.2.tgz", - "integrity": "sha512-9e/zx1jw7B4CO+c/RXoCsfg/x1AfUBioy4owYH0bJprEYAx5hRFLRhWBqHAG57D0ZM4H7vxbP7bPe0VwhQRYDQ==", + "node_modules/@csstools/postcss-font-format-keywords": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@csstools/postcss-font-format-keywords/-/postcss-font-format-keywords-3.0.2.tgz", + "integrity": "sha512-E0xz2sjm4AMCkXLCFvI/lyl4XO6aN1NCSMMVEOngFDJ+k2rDwfr6NDjWljk1li42jiLNChVX+YFnmfGCigZKXw==", "dev": true, - "requires": { - "tslib": "^1.9.0" + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/utilities": "^1.0.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "ci-info": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", - "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==", - "dev": true - }, - "cipher-base": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", - "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", + "node_modules/@csstools/postcss-gamut-mapping": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/@csstools/postcss-gamut-mapping/-/postcss-gamut-mapping-1.0.11.tgz", + "integrity": "sha512-KrHGsUPXRYxboXmJ9wiU/RzDM7y/5uIefLWKFSc36Pok7fxiPyvkSHO51kh+RLZS1W5hbqw9qaa6+tKpTSxa5g==", "dev": true, - "requires": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "class-utils": { - "version": "0.3.6", - "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", - "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", - "dev": true, - "requires": { - "arr-union": "^3.1.0", - "define-property": "^0.2.5", - "isobject": "^3.0.0", - "static-extend": "^0.1.1" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/css-color-parser": "^2.0.4", + "@csstools/css-parser-algorithms": "^2.7.1", + "@csstools/css-tokenizer": "^2.4.1" + }, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "clean-stack": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", - "dev": true - }, - "cli-cursor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-1.0.2.tgz", - "integrity": "sha1-ZNo/fValRBLll5S9Ytw1KV6PKYc=", + "node_modules/@csstools/postcss-gradients-interpolation-method": { + "version": "4.0.20", + "resolved": "https://registry.npmjs.org/@csstools/postcss-gradients-interpolation-method/-/postcss-gradients-interpolation-method-4.0.20.tgz", + "integrity": "sha512-ZFl2JBHano6R20KB5ZrB8KdPM2pVK0u+/3cGQ2T8VubJq982I2LSOvQ4/VtxkAXjkPkk1rXt4AD1ni7UjTZ1Og==", "dev": true, - "requires": { - "restore-cursor": "^1.0.1" + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/css-color-parser": "^2.0.4", + "@csstools/css-parser-algorithms": "^2.7.1", + "@csstools/css-tokenizer": "^2.4.1", + "@csstools/postcss-progressive-custom-properties": "^3.3.0", + "@csstools/utilities": "^1.0.0" + }, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "cli-table3": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/cli-table3/-/cli-table3-0.5.1.tgz", - "integrity": "sha512-7Qg2Jrep1S/+Q3EceiZtQcDPWxhAvBw+ERf1162v4sikJrvojMHFqXt8QIVha8UlH9rgU0BeWPytZ9/TzYqlUw==", + "node_modules/@csstools/postcss-hwb-function": { + "version": "3.0.18", + "resolved": "https://registry.npmjs.org/@csstools/postcss-hwb-function/-/postcss-hwb-function-3.0.18.tgz", + "integrity": "sha512-3ifnLltR5C7zrJ+g18caxkvSRnu9jBBXCYgnBznRjxm6gQJGnnCO9H6toHfywNdNr/qkiVf2dymERPQLDnjLRQ==", "dev": true, - "requires": { - "colors": "^1.1.2", - "object-assign": "^4.1.0", - "string-width": "^2.1.1" + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/css-color-parser": "^2.0.4", + "@csstools/css-parser-algorithms": "^2.7.1", + "@csstools/css-tokenizer": "^2.4.1", + "@csstools/postcss-progressive-custom-properties": "^3.3.0", + "@csstools/utilities": "^1.0.0" + }, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "cli-truncate": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-0.2.1.tgz", - "integrity": "sha1-nxXPuwcFAFNpIWxiasfQWrkN1XQ=", - "dev": true, - "requires": { - "slice-ansi": "0.0.4", - "string-width": "^1.0.1" - }, - "dependencies": { - "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "dev": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "slice-ansi": { - "version": "0.0.4", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-0.0.4.tgz", - "integrity": "sha1-7b+JA/ZvfOL46v1s7tZeJkyDGzU=", - "dev": true - }, - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "dev": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } + "node_modules/@csstools/postcss-ic-unit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/@csstools/postcss-ic-unit/-/postcss-ic-unit-3.0.7.tgz", + "integrity": "sha512-YoaNHH2wNZD+c+rHV02l4xQuDpfR8MaL7hD45iJyr+USwvr0LOheeytJ6rq8FN6hXBmEeoJBeXXgGmM8fkhH4g==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/postcss-progressive-custom-properties": "^3.3.0", + "@csstools/utilities": "^1.0.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "cli-width": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz", - "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=", - "dev": true - }, - "cliui": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", - "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", + "node_modules/@csstools/postcss-initial": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@csstools/postcss-initial/-/postcss-initial-1.0.1.tgz", + "integrity": "sha512-wtb+IbUIrIf8CrN6MLQuFR7nlU5C7PwuebfeEXfjthUha1+XZj2RVi+5k/lukToA24sZkYAiSJfHM8uG/UZIdg==", "dev": true, - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^6.2.0" - }, - "dependencies": { - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" }, - "string-width": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", - "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" - } + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" } + ], + "license": "MIT-0", + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "clone-deep": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", - "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", + "node_modules/@csstools/postcss-is-pseudo-class": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/@csstools/postcss-is-pseudo-class/-/postcss-is-pseudo-class-4.0.8.tgz", + "integrity": "sha512-0aj591yGlq5Qac+plaWCbn5cpjs5Sh0daovYUKJUOMjIp70prGH/XPLp7QjxtbFXz3CTvb0H9a35dpEuIuUi3Q==", "dev": true, - "requires": { - "is-plain-object": "^2.0.4", - "kind-of": "^6.0.2", - "shallow-clone": "^3.0.0" + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/selector-specificity": "^3.1.1", + "postcss-selector-parser": "^6.0.13" + }, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "co": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", - "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=", - "dev": true - }, - "code-point-at": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", - "dev": true - }, - "collect-v8-coverage": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz", - "integrity": "sha512-iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg==", - "dev": true - }, - "collection-visit": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", - "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", - "dev": true, - "requires": { - "map-visit": "^1.0.0", - "object-visit": "^1.0.0" - } - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" - }, - "colorette": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.1.0.tgz", - "integrity": "sha512-6S062WDQUXi6hOfkO/sBPVwE5ASXY4G2+b4atvhJfSsuUUhIaUKlkjLe9692Ipyt5/a+IPF5aVTu3V5gvXq5cg==", - "dev": true - }, - "colors": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/colors/-/colors-1.4.0.tgz", - "integrity": "sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA==", - "dev": true - }, - "combined-stream": { + "node_modules/@csstools/postcss-light-dark-function": { "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "resolved": "https://registry.npmjs.org/@csstools/postcss-light-dark-function/-/postcss-light-dark-function-1.0.8.tgz", + "integrity": "sha512-x0UtpCyVnERsplUeoaY6nEtp1HxTf4lJjoK/ULEm40DraqFfUdUSt76yoOyX5rGY6eeOUOkurHyYlFHVKv/pew==", "dev": true, - "requires": { - "delayed-stream": "~1.0.0" + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/css-parser-algorithms": "^2.7.1", + "@csstools/css-tokenizer": "^2.4.1", + "@csstools/postcss-progressive-custom-properties": "^3.3.0", + "@csstools/utilities": "^1.0.0" + }, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "commander": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", - "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", - "dev": true - }, - "comment-json": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/comment-json/-/comment-json-1.1.3.tgz", - "integrity": "sha1-aYbDMw/uDEyeAMI5jNYa+l2PI54=", + "node_modules/@csstools/postcss-logical-float-and-clear": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@csstools/postcss-logical-float-and-clear/-/postcss-logical-float-and-clear-2.0.1.tgz", + "integrity": "sha512-SsrWUNaXKr+e/Uo4R/uIsqJYt3DaggIh/jyZdhy/q8fECoJSKsSMr7nObSLdvoULB69Zb6Bs+sefEIoMG/YfOA==", "dev": true, - "requires": { - "json-parser": "^1.0.0" + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "commondir": { + "node_modules/@csstools/postcss-logical-overflow": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", - "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", - "dev": true - }, - "compare-func": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/compare-func/-/compare-func-1.3.2.tgz", - "integrity": "sha1-md0LpFfh+bxyKxLAjsM+6rMfpkg=", + "resolved": "https://registry.npmjs.org/@csstools/postcss-logical-overflow/-/postcss-logical-overflow-1.0.1.tgz", + "integrity": "sha512-Kl4lAbMg0iyztEzDhZuQw8Sj9r2uqFDcU1IPl+AAt2nue8K/f1i7ElvKtXkjhIAmKiy5h2EY8Gt/Cqg0pYFDCw==", "dev": true, - "requires": { - "array-ify": "^1.0.0", - "dot-prop": "^3.0.0" + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "compare-versions": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/compare-versions/-/compare-versions-3.6.0.tgz", - "integrity": "sha512-W6Af2Iw1z4CB7q4uU4hv646dW9GQuBM+YpC0UvUCWSD8w90SJjp+ujJuXaEMtAXBtSqGfMPuFOVn4/+FlaqfBA==", - "dev": true - }, - "component-emitter": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", - "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==", - "dev": true - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", - "dev": true - }, - "concat-stream": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", - "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", + "node_modules/@csstools/postcss-logical-overscroll-behavior": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@csstools/postcss-logical-overscroll-behavior/-/postcss-logical-overscroll-behavior-1.0.1.tgz", + "integrity": "sha512-+kHamNxAnX8ojPCtV8WPcUP3XcqMFBSDuBuvT6MHgq7oX4IQxLIXKx64t7g9LiuJzE7vd06Q9qUYR6bh4YnGpQ==", "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^2.2.2", - "typedarray": "^0.0.6" - } - }, - "console-browserify": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.2.0.tgz", - "integrity": "sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==", - "dev": true - }, - "constants-browserify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", - "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=", - "dev": true - }, - "contains-path": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/contains-path/-/contains-path-0.1.0.tgz", - "integrity": "sha1-/ozxhP9mcLa67wGp1IYaXL7EEgo=", - "dev": true - }, - "conventional-changelog": { - "version": "3.1.15", - "resolved": "https://registry.npmjs.org/conventional-changelog/-/conventional-changelog-3.1.15.tgz", - "integrity": "sha512-CoWM+Z9bYyF00QzNpTnxkCLiuLAeRocJz3C/foFjvhsdltdtkJgMChp7GytQNjm4pT7JFBVJTpqLHTpxNtOzaA==", - "dev": true, - "requires": { - "conventional-changelog-angular": "^5.0.6", - "conventional-changelog-atom": "^2.0.3", - "conventional-changelog-codemirror": "^2.0.3", - "conventional-changelog-conventionalcommits": "^4.2.3", - "conventional-changelog-core": "^4.1.1", - "conventional-changelog-ember": "^2.0.4", - "conventional-changelog-eslint": "^3.0.4", - "conventional-changelog-express": "^2.0.1", - "conventional-changelog-jquery": "^3.0.6", - "conventional-changelog-jshint": "^2.0.3", - "conventional-changelog-preset-loader": "^2.3.0" - }, - "dependencies": { - "conventional-changelog-angular": { - "version": "5.0.6", - "resolved": "https://registry.npmjs.org/conventional-changelog-angular/-/conventional-changelog-angular-5.0.6.tgz", - "integrity": "sha512-QDEmLa+7qdhVIv8sFZfVxU1VSyVvnXPsxq8Vam49mKUcO1Z8VTLEJk9uI21uiJUsnmm0I4Hrsdc9TgkOQo9WSA==", - "dev": true, - "requires": { - "compare-func": "^1.3.1", - "q": "^1.5.1" - } + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" }, - "conventional-changelog-conventionalcommits": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/conventional-changelog-conventionalcommits/-/conventional-changelog-conventionalcommits-4.2.3.tgz", - "integrity": "sha512-atGa+R4vvEhb8N/8v3IoW59gCBJeeFiX6uIbPu876ENAmkMwsenyn0R21kdDHJFLQdy6zW4J6b4xN8KI3b9oww==", - "dev": true, - "requires": { - "compare-func": "^1.3.1", - "lodash": "^4.17.15", - "q": "^1.5.1" - } + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" } + ], + "license": "MIT-0", + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "conventional-changelog-angular": { - "version": "1.6.6", - "resolved": "https://registry.npmjs.org/conventional-changelog-angular/-/conventional-changelog-angular-1.6.6.tgz", - "integrity": "sha512-suQnFSqCxRwyBxY68pYTsFkG0taIdinHLNEAX5ivtw8bCRnIgnpvcHmlR/yjUyZIrNPYAoXlY1WiEKWgSE4BNg==", + "node_modules/@csstools/postcss-logical-resize": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@csstools/postcss-logical-resize/-/postcss-logical-resize-2.0.1.tgz", + "integrity": "sha512-W5Gtwz7oIuFcKa5SmBjQ2uxr8ZoL7M2bkoIf0T1WeNqljMkBrfw1DDA8/J83k57NQ1kcweJEjkJ04pUkmyee3A==", "dev": true, - "requires": { - "compare-func": "^1.3.1", - "q": "^1.5.1" + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "conventional-changelog-atom": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/conventional-changelog-atom/-/conventional-changelog-atom-2.0.3.tgz", - "integrity": "sha512-szZe2ut97qNO6vCCMkm1I/tWu6ol4Rr8a9Lx0y/VlpDnpY0PNp+oGpFgU55lplhx+I3Lro9Iv4/gRj0knfgjzg==", + "node_modules/@csstools/postcss-logical-viewport-units": { + "version": "2.0.11", + "resolved": "https://registry.npmjs.org/@csstools/postcss-logical-viewport-units/-/postcss-logical-viewport-units-2.0.11.tgz", + "integrity": "sha512-ElITMOGcjQtvouxjd90WmJRIw1J7KMP+M+O87HaVtlgOOlDt1uEPeTeii8qKGe2AiedEp0XOGIo9lidbiU2Ogg==", "dev": true, - "requires": { - "q": "^1.5.1" + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/css-tokenizer": "^2.4.1", + "@csstools/utilities": "^1.0.0" + }, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "conventional-changelog-codemirror": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/conventional-changelog-codemirror/-/conventional-changelog-codemirror-2.0.3.tgz", - "integrity": "sha512-t2afackdgFV2yBdHhWPqrKbpaQeVnz2hSJKdWqjasPo5EpIB6TBL0er3cOP1mnGQmuzk9JSvimNSuqjWGDtU5Q==", + "node_modules/@csstools/postcss-media-minmax": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/@csstools/postcss-media-minmax/-/postcss-media-minmax-1.1.8.tgz", + "integrity": "sha512-KYQCal2i7XPNtHAUxCECdrC7tuxIWQCW+s8eMYs5r5PaAiVTeKwlrkRS096PFgojdNCmHeG0Cb7njtuNswNf+w==", "dev": true, - "requires": { - "q": "^1.5.1" + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT", + "dependencies": { + "@csstools/css-calc": "^1.2.4", + "@csstools/css-parser-algorithms": "^2.7.1", + "@csstools/css-tokenizer": "^2.4.1", + "@csstools/media-query-list-parser": "^2.1.13" + }, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "conventional-changelog-config-spec": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/conventional-changelog-config-spec/-/conventional-changelog-config-spec-2.1.0.tgz", - "integrity": "sha512-IpVePh16EbbB02V+UA+HQnnPIohgXvJRxHcS5+Uwk4AT5LjzCZJm5sp/yqs5C6KZJ1jMsV4paEV13BN1pvDuxQ==", - "dev": true - }, - "conventional-changelog-conventionalcommits": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/conventional-changelog-conventionalcommits/-/conventional-changelog-conventionalcommits-4.2.1.tgz", - "integrity": "sha512-vC02KucnkNNap+foDKFm7BVUSDAXktXrUJqGszUuYnt6T0J2azsbYz/w9TDc3VsrW2v6JOtiQWVcgZnporHr4Q==", + "node_modules/@csstools/postcss-media-queries-aspect-ratio-number-values": { + "version": "2.0.11", + "resolved": "https://registry.npmjs.org/@csstools/postcss-media-queries-aspect-ratio-number-values/-/postcss-media-queries-aspect-ratio-number-values-2.0.11.tgz", + "integrity": "sha512-YD6jrib20GRGQcnOu49VJjoAnQ/4249liuz7vTpy/JfgqQ1Dlc5eD4HPUMNLOw9CWey9E6Etxwf/xc/ZF8fECA==", "dev": true, - "requires": { - "compare-func": "^1.3.1", - "lodash": "^4.2.1", - "q": "^1.5.1" + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/css-parser-algorithms": "^2.7.1", + "@csstools/css-tokenizer": "^2.4.1", + "@csstools/media-query-list-parser": "^2.1.13" + }, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "conventional-changelog-core": { - "version": "4.1.4", - "resolved": "https://registry.npmjs.org/conventional-changelog-core/-/conventional-changelog-core-4.1.4.tgz", - "integrity": "sha512-LO58ZbEpp1Ul+y/vOI8rJRsWkovsYkCFbOCVgi6UnVfU8WC0F8K8VQQwaBZWWUpb6JvEiN4GBR5baRP2txZ+Vg==", + "node_modules/@csstools/postcss-nested-calc": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@csstools/postcss-nested-calc/-/postcss-nested-calc-3.0.2.tgz", + "integrity": "sha512-ySUmPyawiHSmBW/VI44+IObcKH0v88LqFe0d09Sb3w4B1qjkaROc6d5IA3ll9kjD46IIX/dbO5bwFN/swyoyZA==", "dev": true, - "requires": { - "add-stream": "^1.0.0", - "conventional-changelog-writer": "^4.0.11", - "conventional-commits-parser": "^3.0.8", - "dateformat": "^3.0.0", - "get-pkg-repo": "^1.0.0", - "git-raw-commits": "2.0.0", - "git-remote-origin-url": "^2.0.0", - "git-semver-tags": "^3.0.1", - "lodash": "^4.17.15", - "normalize-package-data": "^2.3.5", - "q": "^1.5.1", - "read-pkg": "^3.0.0", - "read-pkg-up": "^3.0.0", - "through2": "^3.0.0" - }, - "dependencies": { - "git-raw-commits": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/git-raw-commits/-/git-raw-commits-2.0.0.tgz", - "integrity": "sha512-w4jFEJFgKXMQJ0H0ikBk2S+4KP2VEjhCvLCNqbNRQC8BgGWgLKNCO7a9K9LI+TVT7Gfoloje502sEnctibffgg==", - "dev": true, - "requires": { - "dargs": "^4.0.1", - "lodash.template": "^4.0.2", - "meow": "^4.0.0", - "split2": "^2.0.0", - "through2": "^2.0.0" - }, - "dependencies": { - "through2": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", - "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", - "dev": true, - "requires": { - "readable-stream": "~2.3.6", - "xtend": "~4.0.1" - } - } - } + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" }, - "meow": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/meow/-/meow-4.0.1.tgz", - "integrity": "sha512-xcSBHD5Z86zaOc+781KrupuHAzeGXSLtiAOmBsiLDiPSaYSB6hdew2ng9EBAnZ62jagG9MHAOdxpDi/lWBFJ/A==", - "dev": true, - "requires": { - "camelcase-keys": "^4.0.0", - "decamelize-keys": "^1.0.0", - "loud-rejection": "^1.0.0", - "minimist": "^1.1.3", - "minimist-options": "^3.0.1", - "normalize-package-data": "^2.3.4", - "read-pkg-up": "^3.0.0", - "redent": "^2.0.0", - "trim-newlines": "^2.0.0" - } + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/utilities": "^1.0.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "conventional-changelog-ember": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/conventional-changelog-ember/-/conventional-changelog-ember-2.0.4.tgz", - "integrity": "sha512-q1u73sO9uCnxN4TSw8xu6MRU8Y1h9kpwtcdJuNRwu/LSKI1IE/iuNSH5eQ6aLlQ3HTyrIpTfUuVybW4W0F17rA==", + "node_modules/@csstools/postcss-normalize-display-values": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@csstools/postcss-normalize-display-values/-/postcss-normalize-display-values-3.0.2.tgz", + "integrity": "sha512-fCapyyT/dUdyPtrelQSIV+d5HqtTgnNP/BEG9IuhgXHt93Wc4CfC1bQ55GzKAjWrZbgakMQ7MLfCXEf3rlZJOw==", "dev": true, - "requires": { - "q": "^1.5.1" + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "conventional-changelog-eslint": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/conventional-changelog-eslint/-/conventional-changelog-eslint-3.0.4.tgz", - "integrity": "sha512-CPwTUENzhLGl3auunrJxiIEWncAGaby7gOFCdj2gslIuOFJ0KPJVOUhRz4Da/I53sdo/7UncUJkiLg94jEsjxg==", + "node_modules/@csstools/postcss-oklab-function": { + "version": "3.0.19", + "resolved": "https://registry.npmjs.org/@csstools/postcss-oklab-function/-/postcss-oklab-function-3.0.19.tgz", + "integrity": "sha512-e3JxXmxjU3jpU7TzZrsNqSX4OHByRC3XjItV3Ieo/JEQmLg5rdOL4lkv/1vp27gXemzfNt44F42k/pn0FpE21Q==", "dev": true, - "requires": { - "q": "^1.5.1" + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/css-color-parser": "^2.0.4", + "@csstools/css-parser-algorithms": "^2.7.1", + "@csstools/css-tokenizer": "^2.4.1", + "@csstools/postcss-progressive-custom-properties": "^3.3.0", + "@csstools/utilities": "^1.0.0" + }, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "conventional-changelog-express": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/conventional-changelog-express/-/conventional-changelog-express-2.0.1.tgz", - "integrity": "sha512-G6uCuCaQhLxdb4eEfAIHpcfcJ2+ao3hJkbLrw/jSK/eROeNfnxCJasaWdDAfFkxsbpzvQT4W01iSynU3OoPLIw==", + "node_modules/@csstools/postcss-progressive-custom-properties": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/@csstools/postcss-progressive-custom-properties/-/postcss-progressive-custom-properties-3.3.0.tgz", + "integrity": "sha512-W2oV01phnILaRGYPmGFlL2MT/OgYjQDrL9sFlbdikMFi6oQkFki9B86XqEWR7HCsTZFVq7dbzr/o71B75TKkGg==", "dev": true, - "requires": { - "q": "^1.5.1" + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "conventional-changelog-jquery": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/conventional-changelog-jquery/-/conventional-changelog-jquery-3.0.6.tgz", - "integrity": "sha512-gHAABCXUNA/HjnZEm+vxAfFPJkgtrZvCDIlCKfdPVXtCIo/Q0lN5VKpx8aR5p8KdVRQFF3OuTlvv5kv6iPuRqA==", + "node_modules/@csstools/postcss-relative-color-syntax": { + "version": "2.0.19", + "resolved": "https://registry.npmjs.org/@csstools/postcss-relative-color-syntax/-/postcss-relative-color-syntax-2.0.19.tgz", + "integrity": "sha512-MxUMSNvio1WwuS6WRLlQuv6nNPXwIWUFzBBAvL/tBdWfiKjiJnAa6eSSN5gtaacSqUkQ/Ce5Z1OzLRfeaWhADA==", "dev": true, - "requires": { - "q": "^1.5.1" + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/css-color-parser": "^2.0.4", + "@csstools/css-parser-algorithms": "^2.7.1", + "@csstools/css-tokenizer": "^2.4.1", + "@csstools/postcss-progressive-custom-properties": "^3.3.0", + "@csstools/utilities": "^1.0.0" + }, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "conventional-changelog-jshint": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/conventional-changelog-jshint/-/conventional-changelog-jshint-2.0.3.tgz", - "integrity": "sha512-Pc2PnMPcez634ckzr4EOWviwRSpZcURaK7bjyD9oK6N5fsC/a+3G7LW5m/JpcHPhA9ZxsfIbm7uqZ3ZDGsQ/sw==", + "node_modules/@csstools/postcss-scope-pseudo-class": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@csstools/postcss-scope-pseudo-class/-/postcss-scope-pseudo-class-3.0.1.tgz", + "integrity": "sha512-3ZFonK2gfgqg29gUJ2w7xVw2wFJ1eNWVDONjbzGkm73gJHVCYK5fnCqlLr+N+KbEfv2XbWAO0AaOJCFB6Fer6A==", "dev": true, - "requires": { - "compare-func": "^1.3.1", - "q": "^1.5.1" + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "postcss-selector-parser": "^6.0.13" + }, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "conventional-changelog-preset-loader": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/conventional-changelog-preset-loader/-/conventional-changelog-preset-loader-2.3.0.tgz", - "integrity": "sha512-/rHb32J2EJnEXeK4NpDgMaAVTFZS3o1ExmjKMtYVgIC4MQn0vkNSbYpdGRotkfGGRWiqk3Ri3FBkiZGbAfIfOQ==", - "dev": true - }, - "conventional-changelog-writer": { - "version": "4.0.11", - "resolved": "https://registry.npmjs.org/conventional-changelog-writer/-/conventional-changelog-writer-4.0.11.tgz", - "integrity": "sha512-g81GQOR392I+57Cw3IyP1f+f42ME6aEkbR+L7v1FBBWolB0xkjKTeCWVguzRrp6UiT1O6gBpJbEy2eq7AnV1rw==", + "node_modules/@csstools/postcss-stepped-value-functions": { + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/@csstools/postcss-stepped-value-functions/-/postcss-stepped-value-functions-3.0.10.tgz", + "integrity": "sha512-MZwo0D0TYrQhT5FQzMqfy/nGZ28D1iFtpN7Su1ck5BPHS95+/Y5O9S4kEvo76f2YOsqwYcT8ZGehSI1TnzuX2g==", "dev": true, - "requires": { - "compare-func": "^1.3.1", - "conventional-commits-filter": "^2.0.2", - "dateformat": "^3.0.0", - "handlebars": "^4.4.0", - "json-stringify-safe": "^5.0.1", - "lodash": "^4.17.15", - "meow": "^5.0.0", - "semver": "^6.0.0", - "split": "^1.0.0", - "through2": "^3.0.0" + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/css-calc": "^1.2.4", + "@csstools/css-parser-algorithms": "^2.7.1", + "@csstools/css-tokenizer": "^2.4.1" + }, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "conventional-commits-filter": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/conventional-commits-filter/-/conventional-commits-filter-2.0.2.tgz", - "integrity": "sha512-WpGKsMeXfs21m1zIw4s9H5sys2+9JccTzpN6toXtxhpw2VNF2JUXwIakthKBy+LN4DvJm+TzWhxOMWOs1OFCFQ==", + "node_modules/@csstools/postcss-text-decoration-shorthand": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/@csstools/postcss-text-decoration-shorthand/-/postcss-text-decoration-shorthand-3.0.7.tgz", + "integrity": "sha512-+cptcsM5r45jntU6VjotnkC9GteFR7BQBfZ5oW7inLCxj7AfLGAzMbZ60hKTP13AULVZBdxky0P8um0IBfLHVA==", "dev": true, - "requires": { - "lodash.ismatch": "^4.4.0", - "modify-values": "^1.0.0" + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/color-helpers": "^4.2.1", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "conventional-commits-parser": { - "version": "3.0.8", - "resolved": "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-3.0.8.tgz", - "integrity": "sha512-YcBSGkZbYp7d+Cr3NWUeXbPDFUN6g3SaSIzOybi8bjHL5IJ5225OSCxJJ4LgziyEJ7AaJtE9L2/EU6H7Nt/DDQ==", + "node_modules/@csstools/postcss-trigonometric-functions": { + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/@csstools/postcss-trigonometric-functions/-/postcss-trigonometric-functions-3.0.10.tgz", + "integrity": "sha512-G9G8moTc2wiad61nY5HfvxLiM/myX0aYK4s1x8MQlPH29WDPxHQM7ghGgvv2qf2xH+rrXhztOmjGHJj4jsEqXw==", "dev": true, - "requires": { - "JSONStream": "^1.0.4", - "is-text-path": "^1.0.1", - "lodash": "^4.17.15", - "meow": "^5.0.0", - "split2": "^2.0.0", - "through2": "^3.0.0", - "trim-off-newlines": "^1.0.0" + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/css-calc": "^1.2.4", + "@csstools/css-parser-algorithms": "^2.7.1", + "@csstools/css-tokenizer": "^2.4.1" + }, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "conventional-recommended-bump": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/conventional-recommended-bump/-/conventional-recommended-bump-6.0.5.tgz", - "integrity": "sha512-srkferrB4kACPEbKYltZwX1CQZAEqbQkabKN444mavLRVMetzwJFJf23/+pwvtMsWbd+cc4HaleV1nHke0f8Rw==", + "node_modules/@csstools/postcss-unset-value": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@csstools/postcss-unset-value/-/postcss-unset-value-3.0.1.tgz", + "integrity": "sha512-dbDnZ2ja2U8mbPP0Hvmt2RMEGBiF1H7oY6HYSpjteXJGihYwgxgTr6KRbbJ/V6c+4wd51M+9980qG4gKVn5ttg==", "dev": true, - "requires": { - "concat-stream": "^2.0.0", - "conventional-changelog-preset-loader": "^2.3.0", - "conventional-commits-filter": "^2.0.2", - "conventional-commits-parser": "^3.0.8", - "git-raw-commits": "2.0.0", - "git-semver-tags": "^3.0.1", - "meow": "^5.0.0", - "q": "^1.5.1" - }, - "dependencies": { - "concat-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-2.0.0.tgz", - "integrity": "sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A==", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.0.2", - "typedarray": "^0.0.6" - } + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" }, - "git-raw-commits": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/git-raw-commits/-/git-raw-commits-2.0.0.tgz", - "integrity": "sha512-w4jFEJFgKXMQJ0H0ikBk2S+4KP2VEjhCvLCNqbNRQC8BgGWgLKNCO7a9K9LI+TVT7Gfoloje502sEnctibffgg==", - "dev": true, - "requires": { - "dargs": "^4.0.1", - "lodash.template": "^4.0.2", - "meow": "^4.0.0", - "split2": "^2.0.0", - "through2": "^2.0.0" - }, - "dependencies": { - "meow": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/meow/-/meow-4.0.1.tgz", - "integrity": "sha512-xcSBHD5Z86zaOc+781KrupuHAzeGXSLtiAOmBsiLDiPSaYSB6hdew2ng9EBAnZ62jagG9MHAOdxpDi/lWBFJ/A==", - "dev": true, - "requires": { - "camelcase-keys": "^4.0.0", - "decamelize-keys": "^1.0.0", - "loud-rejection": "^1.0.0", - "minimist": "^1.1.3", - "minimist-options": "^3.0.1", - "normalize-package-data": "^2.3.4", - "read-pkg-up": "^3.0.0", - "redent": "^2.0.0", - "trim-newlines": "^2.0.0" - } - } - } - }, - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, - "through2": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", - "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", - "dev": true, - "requires": { - "readable-stream": "~2.3.6", - "xtend": "~4.0.1" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - } - } + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" } + ], + "license": "MIT-0", + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "convert-source-map": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz", - "integrity": "sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==", + "node_modules/@csstools/selector-resolve-nested": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@csstools/selector-resolve-nested/-/selector-resolve-nested-1.1.0.tgz", + "integrity": "sha512-uWvSaeRcHyeNenKg8tp17EVDRkpflmdyvbE0DHo6D/GdBb6PDnCYYU6gRpXhtICMGMcahQmj2zGxwFM/WC8hCg==", "dev": true, - "requires": { - "safe-buffer": "~5.1.1" - } - }, - "copy-concurrently": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/copy-concurrently/-/copy-concurrently-1.0.5.tgz", - "integrity": "sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A==", - "dev": true, - "requires": { - "aproba": "^1.1.1", - "fs-write-stream-atomic": "^1.0.8", - "iferr": "^0.1.5", - "mkdirp": "^0.5.1", - "rimraf": "^2.5.4", - "run-queue": "^1.0.0" - } - }, - "copy-descriptor": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", - "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", - "dev": true - }, - "core-js": { - "version": "2.6.11", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.11.tgz", - "integrity": "sha512-5wjnpaT/3dV+XB4borEsnAYQchn00XSgTAWKDkEqv+K8KevjbzmofK6hfJ9TZIlpj2N0xQpazy7PiRQiWHqzWg==", - "dev": true - }, - "core-js-compat": { - "version": "3.6.5", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.6.5.tgz", - "integrity": "sha512-7ItTKOhOZbznhXAQ2g/slGg1PJV5zDO/WdkTwi7UEOJmkvsE32PWvx6mKtDjiMpjnR2CNf6BAD6sSxIlv7ptng==", - "dev": true, - "requires": { - "browserslist": "^4.8.5", - "semver": "7.0.0" - }, - "dependencies": { - "semver": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz", - "integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==", - "dev": true + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" } + ], + "license": "MIT-0", + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss-selector-parser": "^6.0.13" } }, - "core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", - "dev": true - }, - "cosmiconfig": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-5.2.1.tgz", - "integrity": "sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA==", + "node_modules/@csstools/selector-specificity": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@csstools/selector-specificity/-/selector-specificity-3.1.1.tgz", + "integrity": "sha512-a7cxGcJ2wIlMFLlh8z2ONm+715QkPHiyJcxwQlKOz/03GPw1COpfhcmC9wm4xlZfp//jWHNNMwzjtqHXVWU9KA==", "dev": true, - "requires": { - "import-fresh": "^2.0.0", - "is-directory": "^0.3.1", - "js-yaml": "^3.13.1", - "parse-json": "^4.0.0" - }, - "dependencies": { - "import-fresh": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-2.0.0.tgz", - "integrity": "sha1-2BNVwVYS04bGH53dOSLUMEgipUY=", - "dev": true, - "requires": { - "caller-path": "^2.0.0", - "resolve-from": "^3.0.0" - } + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" }, - "resolve-from": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", - "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=", - "dev": true + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" } + ], + "license": "MIT-0", + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss-selector-parser": "^6.0.13" } }, - "create-ecdh": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.3.tgz", - "integrity": "sha512-GbEHQPMOswGpKXM9kCWVrremUcBmjteUaQ01T9rkKCPDXfUHX0IoP9LpHYo2NPFampa4e+/pFDc3jQdxrxQLaw==", + "node_modules/@csstools/utilities": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@csstools/utilities/-/utilities-1.0.0.tgz", + "integrity": "sha512-tAgvZQe/t2mlvpNosA4+CkMiZ2azISW5WPAcdSalZlEjQvUfghHxfQcrCiK/7/CrfAWVxyM88kGFYO82heIGDg==", "dev": true, - "requires": { - "bn.js": "^4.1.0", - "elliptic": "^6.0.0" + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "create-hash": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", - "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", + "node_modules/@dabh/diagnostics": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@dabh/diagnostics/-/diagnostics-2.0.3.tgz", + "integrity": "sha512-hrlQOIi7hAfzsMqlGSFyVucrx38O+j6wiGOf//H2ecvIEqYN4ADBSS2iLMh5UFyDunCNniUIPk/q3riFv45xRA==", "dev": true, - "requires": { - "cipher-base": "^1.0.1", - "inherits": "^2.0.1", - "md5.js": "^1.3.4", - "ripemd160": "^2.0.1", - "sha.js": "^2.4.0" + "license": "MIT", + "dependencies": { + "colorspace": "1.1.x", + "enabled": "2.0.x", + "kuler": "^2.0.0" } }, - "create-hmac": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", - "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", + "node_modules/@emnapi/core": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/@emnapi/core/-/core-1.4.3.tgz", + "integrity": "sha512-4m62DuCE07lw01soJwPiBGC0nAww0Q+RY70VZ+n49yDIO13yyinhbWCeNnaob0lakDtWQzSdtNWzJeOJt2ma+g==", "dev": true, - "requires": { - "cipher-base": "^1.0.3", - "create-hash": "^1.1.0", - "inherits": "^2.0.1", - "ripemd160": "^2.0.0", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" + "license": "MIT", + "optional": true, + "dependencies": { + "@emnapi/wasi-threads": "1.0.2", + "tslib": "^2.4.0" } }, - "cross-env": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/cross-env/-/cross-env-7.0.2.tgz", - "integrity": "sha512-KZP/bMEOJEDCkDQAyRhu3RL2ZO/SUVrxQVI0G3YEQ+OLbRA3c6zgixe8Mq8a/z7+HKlNEjo8oiLUs8iRijY2Rw==", + "node_modules/@emnapi/runtime": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.4.3.tgz", + "integrity": "sha512-pBPWdu6MLKROBX05wSNKcNb++m5Er+KQ9QkB+WVM+pW2Kx9hoSrVTnu3BdkI5eBLZoKu/J6mW/B6i6bJB2ytXQ==", "dev": true, - "requires": { - "cross-spawn": "^7.0.1" - }, + "license": "MIT", + "optional": true, "dependencies": { - "cross-spawn": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.2.tgz", - "integrity": "sha512-PD6G8QG3S4FK/XCGFbEQrDqO2AnMMsy0meR7lerlIOHAAbkuavGU/pOqprrlvfTNjvowivTeBsjebAL0NSoMxw==", - "dev": true, - "requires": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - } - }, - "path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true - }, - "shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, - "requires": { - "shebang-regex": "^3.0.0" - } - }, - "shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true - } + "tslib": "^2.4.0" } }, - "cross-spawn": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", - "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "node_modules/@emnapi/wasi-threads": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@emnapi/wasi-threads/-/wasi-threads-1.0.2.tgz", + "integrity": "sha512-5n3nTJblwRi8LlXkJ9eBzu+kZR8Yxcc7ubakyQTFzPMtIhFpUBRbsnc2Dv88IZDIbCDlBiWrknhB4Lsz7mg6BA==", "dev": true, - "requires": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - }, + "license": "MIT", + "optional": true, "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - }, - "which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - } + "tslib": "^2.4.0" } }, - "crypto-browserify": { - "version": "3.12.0", - "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", - "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", + "node_modules/@eslint-community/eslint-utils": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.7.0.tgz", + "integrity": "sha512-dyybb3AcajC7uha6CvhdVRJqaKyn7w2YKqKyAN37NKYgZT36w+iRb0Dymmc5qEJ549c/S31cMMSFd75bteCpCw==", "dev": true, - "requires": { - "browserify-cipher": "^1.0.0", - "browserify-sign": "^4.0.0", - "create-ecdh": "^4.0.0", - "create-hash": "^1.1.0", - "create-hmac": "^1.1.0", - "diffie-hellman": "^5.0.0", - "inherits": "^2.0.1", - "pbkdf2": "^3.0.3", - "public-encrypt": "^4.0.0", - "randombytes": "^2.0.0", - "randomfill": "^1.0.3" + "license": "MIT", + "dependencies": { + "eslint-visitor-keys": "^3.4.3" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" } }, - "css-blank-pseudo": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/css-blank-pseudo/-/css-blank-pseudo-0.1.4.tgz", - "integrity": "sha512-LHz35Hr83dnFeipc7oqFDmsjHdljj3TQtxGGiNWSOsTLIAubSm4TEz8qCaKFpk7idaQ1GfWscF4E6mgpBysA1w==", + "node_modules/@eslint-community/regexpp": { + "version": "4.12.1", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.12.1.tgz", + "integrity": "sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==", "dev": true, - "requires": { - "postcss": "^7.0.5" + "license": "MIT", + "engines": { + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" } }, - "css-has-pseudo": { - "version": "0.10.0", - "resolved": "https://registry.npmjs.org/css-has-pseudo/-/css-has-pseudo-0.10.0.tgz", - "integrity": "sha512-Z8hnfsZu4o/kt+AuFzeGpLVhFOGO9mluyHBaA2bA8aCGTwah5sT3WV/fTHH8UNZUytOIImuGPrl/prlb4oX4qQ==", + "node_modules/@eslint/eslintrc": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz", + "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==", "dev": true, - "requires": { - "postcss": "^7.0.6", - "postcss-selector-parser": "^5.0.0-rc.4" - }, + "license": "MIT", "dependencies": { - "cssesc": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-2.0.0.tgz", - "integrity": "sha512-MsCAG1z9lPdoO/IUMLSBWBSVxVtJ1395VGIQ+Fc2gNdkQ1hNDnQdw3YhA71WJCBW1vdwA0cAnk/DnW6bqoEUYg==", - "dev": true - }, - "postcss-selector-parser": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-5.0.0.tgz", - "integrity": "sha512-w+zLE5Jhg6Liz8+rQOWEAwtwkyqpfnmsinXjXg6cY7YIONZZtgvE0v2O0uhQBs0peNomOJwWRKt6JBfTdTd3OQ==", - "dev": true, - "requires": { - "cssesc": "^2.0.0", - "indexes-of": "^1.0.1", - "uniq": "^1.0.1" - } - } + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^9.6.0", + "globals": "^13.19.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, - "css-prefers-color-scheme": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/css-prefers-color-scheme/-/css-prefers-color-scheme-3.1.1.tgz", - "integrity": "sha512-MTu6+tMs9S3EUqzmqLXEcgNRbNkkD/TGFvowpeoWJn5Vfq7FMgsmRQs9X5NXAURiOBmOxm/lLjsDNXDE6k9bhg==", + "node_modules/@eslint/eslintrc/node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", "dev": true, - "requires": { - "postcss": "^7.0.5" - } - }, - "cssdb": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/cssdb/-/cssdb-4.4.0.tgz", - "integrity": "sha512-LsTAR1JPEM9TpGhl/0p3nQecC2LJ0kD8X5YARu1hk/9I1gril5vDtMZyNxcEpxxDj34YNck/ucjuoUd66K03oQ==", - "dev": true - }, - "cssesc": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", - "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==" - }, - "cssom": { - "version": "0.4.4", - "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.4.4.tgz", - "integrity": "sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==", - "dev": true + "license": "Python-2.0" }, - "cssstyle": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-2.2.0.tgz", - "integrity": "sha512-sEb3XFPx3jNnCAMtqrXPDeSgQr+jojtCeNf8cvMNMh1cG970+lljssvQDzPq6lmmJu2Vhqood/gtEomBiHOGnA==", + "node_modules/@eslint/eslintrc/node_modules/globals": { + "version": "13.24.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", + "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", "dev": true, - "requires": { - "cssom": "~0.3.6" - }, + "license": "MIT", "dependencies": { - "cssom": { - "version": "0.3.8", - "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz", - "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==", - "dev": true - } + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "currently-unhandled": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", - "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=", + "node_modules/@eslint/eslintrc/node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", "dev": true, - "requires": { - "array-find-index": "^1.0.1" - } - }, - "cycle": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/cycle/-/cycle-1.0.3.tgz", - "integrity": "sha1-IegLK+hYD5i0aPN5QwZisEbDStI=", - "dev": true - }, - "cyclist": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-1.0.1.tgz", - "integrity": "sha1-WW6WmP0MgOEgOMK4LW6xs1tiJNk=", - "dev": true + "license": "MIT", + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } }, - "dargs": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/dargs/-/dargs-4.1.0.tgz", - "integrity": "sha1-A6nbtLXC8Tm/FK5T8LiipqhvThc=", + "node_modules/@eslint/eslintrc/node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", "dev": true, - "requires": { - "number-is-nan": "^1.0.0" + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "dashdash": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", - "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", + "node_modules/@eslint/js": { + "version": "8.57.1", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.1.tgz", + "integrity": "sha512-d9zaMRSTIKDLhctzH12MtXvJKSSUhaHcjV+2Z+GK+EEY7XKpP5yR4x+N3TAcHTcu963nIr+TMcCb4DBCYX1z6Q==", "dev": true, - "requires": { - "assert-plus": "^1.0.0" + "license": "MIT", + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, - "data-urls": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-1.1.0.tgz", - "integrity": "sha512-YTWYI9se1P55u58gL5GkQHW4P6VJBJ5iBT+B5a7i2Tjadhv52paJG0qHX4A0OR6/t52odI64KP2YvFpkDOi3eQ==", + "node_modules/@humanwhocodes/config-array": { + "version": "0.13.0", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.13.0.tgz", + "integrity": "sha512-DZLEEqFWQFiyK6h5YIeynKx7JlvCYWL0cImfSRXZ9l4Sg2efkFGTuFf6vzXjK1cq6IYkU+Eg/JizXw+TD2vRNw==", + "deprecated": "Use @eslint/config-array instead", "dev": true, - "requires": { - "abab": "^2.0.0", - "whatwg-mimetype": "^2.2.0", - "whatwg-url": "^7.0.0" + "license": "Apache-2.0", + "dependencies": { + "@humanwhocodes/object-schema": "^2.0.3", + "debug": "^4.3.1", + "minimatch": "^3.0.5" + }, + "engines": { + "node": ">=10.10.0" } }, - "date-fns": { - "version": "1.30.1", - "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-1.30.1.tgz", - "integrity": "sha512-hBSVCvSmWC+QypYObzwGOd9wqdDpOt+0wl0KbU+R+uuZBS1jN8VsD1ss3irQDknRj5NvxiTF6oj/nDRnN/UQNw==", - "dev": true + "node_modules/@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=12.22" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } }, - "dateformat": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-3.0.3.tgz", - "integrity": "sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q==", - "dev": true + "node_modules/@humanwhocodes/object-schema": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz", + "integrity": "sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==", + "deprecated": "Use @eslint/object-schema instead", + "dev": true, + "license": "BSD-3-Clause" }, - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "node_modules/@hutson/parse-repository-url": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@hutson/parse-repository-url/-/parse-repository-url-3.0.2.tgz", + "integrity": "sha512-H9XAx3hc0BQHY6l+IFSWHDySypcXsvsuLhgYLUGywmJ5pswRVQJUHpOsobnLYp2ZUaUlKiKDrgWWhosOwAEM8Q==", "dev": true, - "requires": { - "ms": "2.0.0" + "license": "Apache-2.0", + "engines": { + "node": ">=6.9.0" } }, - "decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", - "dev": true - }, - "decamelize-keys": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.0.tgz", - "integrity": "sha1-0XGoeTMlKAfrPLYdwcFEXQeN8tk=", + "node_modules/@isaacs/cliui": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", + "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", "dev": true, - "requires": { - "decamelize": "^1.1.0", - "map-obj": "^1.0.0" - }, + "license": "ISC", "dependencies": { - "map-obj": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", - "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=", - "dev": true - } + "string-width": "^5.1.2", + "string-width-cjs": "npm:string-width@^4.2.0", + "strip-ansi": "^7.0.1", + "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", + "wrap-ansi": "^8.1.0", + "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" + }, + "engines": { + "node": ">=12" } }, - "decode-uri-component": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", - "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", - "dev": true - }, - "dedent": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz", - "integrity": "sha1-JJXduvbrh0q7Dhvp3yLS5aVEMmw=", - "dev": true - }, - "deep-extend": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", - "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", - "dev": true + "node_modules/@isaacs/cliui/node_modules/ansi-regex": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.1.0.tgz", + "integrity": "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } }, - "deep-is": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", - "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", - "dev": true + "node_modules/@isaacs/cliui/node_modules/ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } }, - "deepmerge": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz", - "integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==", - "dev": true + "node_modules/@isaacs/cliui/node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", + "dev": true, + "license": "MIT" }, - "define-properties": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", - "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", + "node_modules/@isaacs/cliui/node_modules/string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", "dev": true, - "requires": { - "object-keys": "^1.0.12" + "license": "MIT", + "dependencies": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "define-property": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", - "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", - "dev": true, - "requires": { - "is-descriptor": "^1.0.2", - "isobject": "^3.0.1" - }, - "dependencies": { - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } + "node_modules/@isaacs/cliui/node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" } }, - "del": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/del/-/del-5.1.0.tgz", - "integrity": "sha512-wH9xOVHnczo9jN2IW68BabcecVPxacIA3g/7z6vhSU/4stOKQzeCRK0yD0A24WiAAUJmmVpWqrERcTxnLo3AnA==", - "dev": true, - "requires": { - "globby": "^10.0.1", - "graceful-fs": "^4.2.2", - "is-glob": "^4.0.1", - "is-path-cwd": "^2.2.0", - "is-path-inside": "^3.0.1", - "p-map": "^3.0.0", - "rimraf": "^3.0.0", - "slash": "^3.0.0" - }, + "node_modules/@isaacs/cliui/node_modules/wrap-ansi": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", + "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", + "dev": true, + "license": "MIT", "dependencies": { - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - }, - "slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true - } + "ansi-styles": "^6.1.0", + "string-width": "^5.0.1", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } }, - "del-cli": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/del-cli/-/del-cli-3.0.0.tgz", - "integrity": "sha512-J4HDC2mpcN5aopya4VdkyiFXZaqAoo7ua9VpKbciX3DDUSbtJbPMc3ivggJsAAgS6EqonmbenIiMhBGtJPW9FA==", + "node_modules/@istanbuljs/load-nyc-config": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", + "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", "dev": true, - "requires": { - "del": "^5.1.0", - "meow": "^5.0.0" + "license": "ISC", + "dependencies": { + "camelcase": "^5.3.1", + "find-up": "^4.1.0", + "get-package-type": "^0.1.0", + "js-yaml": "^3.13.1", + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" } }, - "delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", - "dev": true - }, - "delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=", - "dev": true - }, - "des.js": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.1.tgz", - "integrity": "sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==", + "node_modules/@istanbuljs/load-nyc-config/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", "dev": true, - "requires": { - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0" + "license": "MIT", + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "detect-indent": { + "node_modules/@istanbuljs/load-nyc-config/node_modules/locate-path": { "version": "5.0.0", - "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-5.0.0.tgz", - "integrity": "sha1-OHHMCmoALow+Wzz38zYmRnXwa50=", - "dev": true - }, - "detect-newline": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz", - "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==", - "dev": true - }, - "diff-sequences": { - "version": "25.2.6", - "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-25.2.6.tgz", - "integrity": "sha512-Hq8o7+6GaZeoFjtpgvRBUknSXNeJiCx7V9Fr94ZMljNiCr9n9L8H8aJqgWOQiDDGdyn29fRNcDdRVJ5fdyihfg==", - "dev": true - }, - "diffie-hellman": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", - "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", "dev": true, - "requires": { - "bn.js": "^4.1.0", - "miller-rabin": "^4.0.0", - "randombytes": "^2.0.0" + "license": "MIT", + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" } }, - "dir-glob": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", - "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "node_modules/@istanbuljs/load-nyc-config/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", "dev": true, - "requires": { - "path-type": "^4.0.0" - }, + "license": "MIT", "dependencies": { - "path-type": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", - "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", - "dev": true - } + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "doctrine": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "node_modules/@istanbuljs/load-nyc-config/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", "dev": true, - "requires": { - "esutils": "^2.0.2" + "license": "MIT", + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" } }, - "domain-browser": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz", - "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==", - "dev": true - }, - "domexception": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/domexception/-/domexception-1.0.1.tgz", - "integrity": "sha512-raigMkn7CJNNo6Ihro1fzG7wr3fHuYVytzquZKX5n0yizGsTcYgzdIUwj1X9pK0VvjeihV+XiclP+DjwbsSKug==", + "node_modules/@istanbuljs/load-nyc-config/node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", "dev": true, - "requires": { - "webidl-conversions": "^4.0.2" + "license": "MIT", + "engines": { + "node": ">=8" } }, - "dot-prop": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-3.0.0.tgz", - "integrity": "sha1-G3CK8JSknJoOfbyteQq6U52sEXc=", + "node_modules/@istanbuljs/schema": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", + "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", "dev": true, - "requires": { - "is-obj": "^1.0.0" + "license": "MIT", + "engines": { + "node": ">=8" } }, - "dotgitignore": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/dotgitignore/-/dotgitignore-2.1.0.tgz", - "integrity": "sha512-sCm11ak2oY6DglEPpCB8TixLjWAxd3kJTs6UIcSasNYxXdFPV+YKlye92c8H4kKFqV5qYMIh7d+cYecEg0dIkA==", + "node_modules/@jest/console": { + "version": "30.0.0", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-30.0.0.tgz", + "integrity": "sha512-vfpJap6JZQ3I8sUN8dsFqNAKJYO4KIGxkcB+3Fw7Q/BJiWY5HwtMMiuT1oP0avsiDhjE/TCLaDgbGfHwDdBVeg==", "dev": true, - "requires": { - "find-up": "^3.0.0", - "minimatch": "^3.0.4" - }, + "license": "MIT", "dependencies": { - "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "dev": true, - "requires": { - "locate-path": "^3.0.0" - } - }, - "locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "dev": true, - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "dev": true, - "requires": { - "p-limit": "^2.0.0" - } - }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true - } + "@jest/types": "30.0.0", + "@types/node": "*", + "chalk": "^4.1.2", + "jest-message-util": "30.0.0", + "jest-util": "30.0.0", + "slash": "^3.0.0" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" } }, - "duplexify": { - "version": "3.7.1", - "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz", - "integrity": "sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==", + "node_modules/@jest/console/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, - "requires": { - "end-of-stream": "^1.0.0", - "inherits": "^2.0.1", - "readable-stream": "^2.0.0", - "stream-shift": "^1.0.0" + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "ecc-jsbn": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", - "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", + "node_modules/@jest/console/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, - "requires": { - "jsbn": "~0.1.0", - "safer-buffer": "^2.1.0" + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "editorconfig": { - "version": "0.15.3", - "resolved": "https://registry.npmjs.org/editorconfig/-/editorconfig-0.15.3.tgz", - "integrity": "sha512-M9wIMFx96vq0R4F+gRpY3o2exzb8hEj/n9S8unZtHSvYjibBp/iMufSzvmOcV/laG0ZtuTVGtiJggPOSW2r93g==", + "node_modules/@jest/console/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, - "requires": { - "commander": "^2.19.0", - "lru-cache": "^4.1.5", - "semver": "^5.6.0", - "sigmund": "^1.0.1" - }, + "license": "MIT", "dependencies": { - "commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - } + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" } }, - "electron-to-chromium": { - "version": "1.3.397", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.397.tgz", - "integrity": "sha512-zcUd1p/7yzTSdWkCTrqGvbnEOASy96d0RJL/lc5BDJoO23Z3G/VHd0yIPbguDU9n8QNUTCigLO7oEdtOb7fp2A==", - "dev": true - }, - "elegant-spinner": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/elegant-spinner/-/elegant-spinner-1.0.1.tgz", - "integrity": "sha1-2wQ1IcldfjA/2PNFvtwzSc+wcp4=", - "dev": true - }, - "elliptic": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.2.tgz", - "integrity": "sha512-f4x70okzZbIQl/NSRLkI/+tteV/9WqL98zx+SQ69KbXxmVrmjwsNUPn/gYJJ0sHvEak24cZgHIPegRePAtA/xw==", - "dev": true, - "requires": { - "bn.js": "^4.4.0", - "brorand": "^1.0.1", - "hash.js": "^1.0.0", - "hmac-drbg": "^1.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.0" - } - }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true + "node_modules/@jest/console/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" }, - "emojis-list": { + "node_modules/@jest/console/node_modules/slash": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", - "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==" - }, - "end-of-stream": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", - "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", "dev": true, - "requires": { - "once": "^1.4.0" + "license": "MIT", + "engines": { + "node": ">=8" } }, - "enhanced-resolve": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.1.1.tgz", - "integrity": "sha512-98p2zE+rL7/g/DzMHMTF4zZlCgeVdJ7yr6xzEpJRYwFYrGi9ANdn5DnJURg6RpBkyk60XYDnWIv51VfIhfNGuA==", + "node_modules/@jest/console/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "memory-fs": "^0.5.0", - "tapable": "^1.0.0" - }, - "dependencies": { - "memory-fs": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.5.0.tgz", - "integrity": "sha512-jA0rdU5KoQMC0e6ppoNRtpp6vjFq6+NY7r8hywnC7V+1Xj/MtHwGIbB1QaK/dunyjWteJzmkpd7ooeWg10T7GA==", - "dev": true, - "requires": { - "errno": "^0.1.3", - "readable-stream": "^2.0.1" - } - } + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "errno": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.7.tgz", - "integrity": "sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg==", + "node_modules/@jest/core": { + "version": "30.0.0", + "resolved": "https://registry.npmjs.org/@jest/core/-/core-30.0.0.tgz", + "integrity": "sha512-1zU39zFtWSl5ZuDK3Rd6P8S28MmS4F11x6Z4CURrgJ99iaAJg68hmdJ2SAHEEO6ociaNk43UhUYtHxWKEWoNYw==", "dev": true, - "requires": { - "prr": "~1.0.1" + "license": "MIT", + "dependencies": { + "@jest/console": "30.0.0", + "@jest/pattern": "30.0.0", + "@jest/reporters": "30.0.0", + "@jest/test-result": "30.0.0", + "@jest/transform": "30.0.0", + "@jest/types": "30.0.0", + "@types/node": "*", + "ansi-escapes": "^4.3.2", + "chalk": "^4.1.2", + "ci-info": "^4.2.0", + "exit-x": "^0.2.2", + "graceful-fs": "^4.2.11", + "jest-changed-files": "30.0.0", + "jest-config": "30.0.0", + "jest-haste-map": "30.0.0", + "jest-message-util": "30.0.0", + "jest-regex-util": "30.0.0", + "jest-resolve": "30.0.0", + "jest-resolve-dependencies": "30.0.0", + "jest-runner": "30.0.0", + "jest-runtime": "30.0.0", + "jest-snapshot": "30.0.0", + "jest-util": "30.0.0", + "jest-validate": "30.0.0", + "jest-watcher": "30.0.0", + "micromatch": "^4.0.8", + "pretty-format": "30.0.0", + "slash": "^3.0.0" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } } }, - "error-ex": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "node_modules/@jest/core/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, - "requires": { - "is-arrayish": "^0.2.1" + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "es-abstract": { - "version": "1.17.5", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.5.tgz", - "integrity": "sha512-BR9auzDbySxOcfog0tLECW8l28eRGpDpU3Dm3Hp4q/N+VtLTmyj4EUN088XZWQDW/hzj6sYRDXeOFsaAODKvpg==", + "node_modules/@jest/core/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, - "requires": { - "es-to-primitive": "^1.2.1", - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.1", - "is-callable": "^1.1.5", - "is-regex": "^1.0.5", - "object-inspect": "^1.7.0", - "object-keys": "^1.1.1", - "object.assign": "^4.1.0", - "string.prototype.trimleft": "^2.1.1", - "string.prototype.trimright": "^2.1.1" + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "es-check": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/es-check/-/es-check-5.1.0.tgz", - "integrity": "sha512-QlRhlUmEpdnleBFYWRFROm8u9cNPOWdE1iXQPWiQXnwmlJZ0hSxWpLOXwpFLyRrwnTmt5xqYM/5OR8Ao0MYa8w==", + "node_modules/@jest/core/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, - "requires": { - "acorn": "6.1.1", - "caporal": "1.3.0", - "glob": "^7.1.2" - }, + "license": "MIT", "dependencies": { - "acorn": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.1.1.tgz", - "integrity": "sha512-jPTiwtOxaHNaAPg/dmrJ/beuzLRnXtB0kQPQ8JpotKJgTB6rX6c8mlf315941pyjBSaPg8NHXS9fhP4u17DpGA==", - "dev": true - } + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" } }, - "es-to-primitive": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", - "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "node_modules/@jest/core/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true, - "requires": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" - } + "license": "MIT" }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" + "node_modules/@jest/core/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } }, - "escodegen": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.14.1.tgz", - "integrity": "sha512-Bmt7NcRySdIfNPfU2ZoXDrrXsG9ZjvDxcAlMfDUgRBjLOWTuIACXPBFJH7Z+cLb40JeQco5toikyc9t9P8E9SQ==", + "node_modules/@jest/core/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, - "requires": { - "esprima": "^4.0.1", - "estraverse": "^4.2.0", - "esutils": "^2.0.2", - "optionator": "^0.8.1", - "source-map": "~0.6.1" + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "eslint": { - "version": "6.8.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-6.8.0.tgz", - "integrity": "sha512-K+Iayyo2LtyYhDSYwz5D5QdWw0hCacNzyq1Y821Xna2xSJj7cijoLLYmLxTQgcgZ9mC61nryMy9S7GRbYpI5Ig==", + "node_modules/@jest/diff-sequences": { + "version": "30.0.0", + "resolved": "https://registry.npmjs.org/@jest/diff-sequences/-/diff-sequences-30.0.0.tgz", + "integrity": "sha512-xMbtoCeKJDto86GW6AiwVv7M4QAuI56R7dVBr1RNGYbOT44M2TIzOiske2RxopBqkumDY+A1H55pGvuribRY9A==", "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "ajv": "^6.10.0", - "chalk": "^2.1.0", - "cross-spawn": "^6.0.5", - "debug": "^4.0.1", - "doctrine": "^3.0.0", - "eslint-scope": "^5.0.0", - "eslint-utils": "^1.4.3", - "eslint-visitor-keys": "^1.1.0", - "espree": "^6.1.2", - "esquery": "^1.0.1", - "esutils": "^2.0.2", - "file-entry-cache": "^5.0.1", - "functional-red-black-tree": "^1.0.1", - "glob-parent": "^5.0.0", - "globals": "^12.1.0", - "ignore": "^4.0.6", - "import-fresh": "^3.0.0", - "imurmurhash": "^0.1.4", - "inquirer": "^7.0.0", - "is-glob": "^4.0.0", - "js-yaml": "^3.13.1", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.3.0", - "lodash": "^4.17.14", - "minimatch": "^3.0.4", - "mkdirp": "^0.5.1", - "natural-compare": "^1.4.0", - "optionator": "^0.8.3", - "progress": "^2.0.0", - "regexpp": "^2.0.1", - "semver": "^6.1.2", - "strip-ansi": "^5.2.0", - "strip-json-comments": "^3.0.1", - "table": "^5.2.3", - "text-table": "^0.2.0", - "v8-compile-cache": "^2.0.3" - }, - "dependencies": { - "ansi-escapes": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.1.tgz", - "integrity": "sha512-JWF7ocqNrp8u9oqpgV+wH5ftbt+cfvv+PTjOvKLT3AdYly/LmORARfEVT1iyjwN+4MqE5UmVKoAdIBqeoCHgLA==", - "dev": true, - "requires": { - "type-fest": "^0.11.0" - }, - "dependencies": { - "type-fest": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.11.0.tgz", - "integrity": "sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ==", - "dev": true - } - } - }, - "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", - "dev": true - }, - "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "requires": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - } - }, - "cli-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", - "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", - "dev": true, - "requires": { - "restore-cursor": "^3.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "external-editor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", - "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", - "dev": true, - "requires": { - "chardet": "^0.7.0", - "iconv-lite": "^0.4.24", - "tmp": "^0.0.33" - } - }, - "figures": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", - "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", - "dev": true, - "requires": { - "escape-string-regexp": "^1.0.5" - } - }, - "glob-parent": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz", - "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==", - "dev": true, - "requires": { - "is-glob": "^4.0.1" - } - }, - "globals": { - "version": "12.4.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz", - "integrity": "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==", - "dev": true, - "requires": { - "type-fest": "^0.8.1" - } - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "ignore": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", - "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", - "dev": true - }, - "inquirer": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.1.0.tgz", - "integrity": "sha512-5fJMWEmikSYu0nv/flMc475MhGbB7TSPd/2IpFV4I4rMklboCH2rQjYY5kKiYGHqUF9gvaambupcJFFG9dvReg==", - "dev": true, - "requires": { - "ansi-escapes": "^4.2.1", - "chalk": "^3.0.0", - "cli-cursor": "^3.1.0", - "cli-width": "^2.0.0", - "external-editor": "^3.0.3", - "figures": "^3.0.0", - "lodash": "^4.17.15", - "mute-stream": "0.0.8", - "run-async": "^2.4.0", - "rxjs": "^6.5.3", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0", - "through": "^2.3.6" - }, - "dependencies": { - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.0" - } - } - } - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "mute-stream": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", - "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", - "dev": true - }, - "restore-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", - "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", - "dev": true, - "requires": { - "onetime": "^5.1.0", - "signal-exit": "^3.0.2" - } - }, - "string-width": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", - "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" - }, - "dependencies": { - "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.0" - } - } - } - }, - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dev": true, - "requires": { - "ansi-regex": "^4.1.0" - }, - "dependencies": { - "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", - "dev": true - } - } - }, - "strip-json-comments": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.0.tgz", - "integrity": "sha512-e6/d0eBu7gHtdCqFt0xJr642LdToM5/cN4Qb9DbHjVx1CP5RyeM+zH7pbecEmDv/lBqb0QH+6Uqq75rxFPkM0w==", - "dev": true - }, - "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - }, - "tmp": { - "version": "0.0.33", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", - "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", - "dev": true, - "requires": { - "os-tmpdir": "~1.0.2" - } - } + "license": "MIT", + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" } }, - "eslint-config-prettier": { - "version": "6.11.0", - "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-6.11.0.tgz", - "integrity": "sha512-oB8cpLWSAjOVFEJhhyMZh6NOEOtBVziaqdDQ86+qhDHFbZXoRTM7pNSvFRfW/W/L/LrQ38C99J5CGuRBBzBsdA==", + "node_modules/@jest/environment": { + "version": "30.0.0", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-30.0.0.tgz", + "integrity": "sha512-09sFbMMgS5JxYnvgmmtwIHhvoyzvR5fUPrVl8nOCrC5KdzmmErTcAxfWyAhJ2bv3rvHNQaKiS+COSG+O7oNbXw==", "dev": true, - "requires": { - "get-stdin": "^6.0.0" - }, + "license": "MIT", "dependencies": { - "get-stdin": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-6.0.0.tgz", - "integrity": "sha512-jp4tHawyV7+fkkSKyvjuLZswblUtz+SQKzSWnBbii16BuZksJlU1wuBYXY75r+duh/llF1ur6oNwi+2ZzjKZ7g==", - "dev": true - } + "@jest/fake-timers": "30.0.0", + "@jest/types": "30.0.0", + "@types/node": "*", + "jest-mock": "30.0.0" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" } }, - "eslint-import-resolver-node": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.3.tgz", - "integrity": "sha512-b8crLDo0M5RSe5YG8Pu2DYBj71tSB6OvXkfzwbJU2w7y8P4/yo0MyF8jU26IEuEuHF2K5/gcAJE3LhQGqBBbVg==", + "node_modules/@jest/environment-jsdom-abstract": { + "version": "30.0.0", + "resolved": "https://registry.npmjs.org/@jest/environment-jsdom-abstract/-/environment-jsdom-abstract-30.0.0.tgz", + "integrity": "sha512-Fcn1eZbH1JK+bqwUVkUVprlQL3xWUrhvOe/4L0PfDkaJOiAz3HUI1m4s0bgmXBYyCyTVogBuUFZkRpAKMox5Dw==", "dev": true, - "requires": { - "debug": "^2.6.9", - "resolve": "^1.13.1" + "license": "MIT", + "dependencies": { + "@jest/environment": "30.0.0", + "@jest/fake-timers": "30.0.0", + "@jest/types": "30.0.0", + "@types/jsdom": "^21.1.7", + "@types/node": "*", + "jest-mock": "30.0.0", + "jest-util": "30.0.0" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" + }, + "peerDependencies": { + "canvas": "^3.0.0", + "jsdom": "*" + }, + "peerDependenciesMeta": { + "canvas": { + "optional": true + } } }, - "eslint-module-utils": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.6.0.tgz", - "integrity": "sha512-6j9xxegbqe8/kZY8cYpcp0xhbK0EgJlg3g9mib3/miLaExuuwc3n5UEfSnU6hWMbT0FAYVvDbL9RrRgpUeQIvA==", + "node_modules/@jest/expect": { + "version": "30.0.0", + "resolved": "https://registry.npmjs.org/@jest/expect/-/expect-30.0.0.tgz", + "integrity": "sha512-XZ3j6syhMeKiBknmmc8V3mNIb44kxLTbOQtaXA4IFdHy+vEN0cnXRzbRjdGBtrp4k1PWyMWNU3Fjz3iejrhpQg==", "dev": true, - "requires": { - "debug": "^2.6.9", - "pkg-dir": "^2.0.0" + "license": "MIT", + "dependencies": { + "expect": "30.0.0", + "jest-snapshot": "30.0.0" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" } }, - "eslint-plugin-import": { - "version": "2.20.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.20.2.tgz", - "integrity": "sha512-FObidqpXrR8OnCh4iNsxy+WACztJLXAHBO5hK79T1Hc77PgQZkyDGA5Ag9xAvRpglvLNxhH/zSmZ70/pZ31dHg==", + "node_modules/@jest/expect-utils": { + "version": "30.0.0", + "resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-30.0.0.tgz", + "integrity": "sha512-UiWfsqNi/+d7xepfOv8KDcbbzcYtkWBe3a3kVDtg6M1kuN6CJ7b4HzIp5e1YHrSaQaVS8sdCoyCMCZClTLNKFQ==", "dev": true, - "requires": { - "array-includes": "^3.0.3", - "array.prototype.flat": "^1.2.1", - "contains-path": "^0.1.0", - "debug": "^2.6.9", - "doctrine": "1.5.0", - "eslint-import-resolver-node": "^0.3.2", - "eslint-module-utils": "^2.4.1", - "has": "^1.0.3", - "minimatch": "^3.0.4", - "object.values": "^1.1.0", - "read-pkg-up": "^2.0.0", - "resolve": "^1.12.0" - }, - "dependencies": { - "doctrine": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-1.5.0.tgz", - "integrity": "sha1-N53Ocw9hZvds76TmcHoVmwLFpvo=", - "dev": true, - "requires": { - "esutils": "^2.0.2", - "isarray": "^1.0.0" - } - }, - "load-json-file": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", - "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "parse-json": "^2.2.0", - "pify": "^2.0.0", - "strip-bom": "^3.0.0" - } - }, - "parse-json": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", - "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", - "dev": true, - "requires": { - "error-ex": "^1.2.0" - } - }, - "path-type": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz", - "integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=", - "dev": true, - "requires": { - "pify": "^2.0.0" - } - }, - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true - }, - "read-pkg": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz", - "integrity": "sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=", - "dev": true, - "requires": { - "load-json-file": "^2.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^2.0.0" - } - }, - "read-pkg-up": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-2.0.0.tgz", - "integrity": "sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=", - "dev": true, - "requires": { - "find-up": "^2.0.0", - "read-pkg": "^2.0.0" - } - } + "license": "MIT", + "dependencies": { + "@jest/get-type": "30.0.0" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" } }, - "eslint-scope": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.0.0.tgz", - "integrity": "sha512-oYrhJW7S0bxAFDvWqzvMPRm6pcgcnWc4QnofCAqRTRfQC0JcwenzGglTtsLyIuuWFfkqDG9vz67cnttSd53djw==", + "node_modules/@jest/fake-timers": { + "version": "30.0.0", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-30.0.0.tgz", + "integrity": "sha512-yzBmJcrMHAMcAEbV2w1kbxmx8WFpEz8Cth3wjLMSkq+LO8VeGKRhpr5+BUp7PPK+x4njq/b6mVnDR8e/tPL5ng==", "dev": true, - "requires": { - "esrecurse": "^4.1.0", - "estraverse": "^4.1.1" + "license": "MIT", + "dependencies": { + "@jest/types": "30.0.0", + "@sinonjs/fake-timers": "^13.0.0", + "@types/node": "*", + "jest-message-util": "30.0.0", + "jest-mock": "30.0.0", + "jest-util": "30.0.0" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" } }, - "eslint-utils": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.4.3.tgz", - "integrity": "sha512-fbBN5W2xdY45KulGXmLHZ3c3FHfVYmKg0IrAKGOkT/464PQsx2UeIzfz1RmEci+KLm1bBaAzZAh8+/E+XAeZ8Q==", + "node_modules/@jest/get-type": { + "version": "30.0.0", + "resolved": "https://registry.npmjs.org/@jest/get-type/-/get-type-30.0.0.tgz", + "integrity": "sha512-VZWMjrBzqfDKngQ7sUctKeLxanAbsBFoZnPxNIG6CmxK7Gv6K44yqd0nzveNIBfuhGZMmk1n5PGbvdSTOu0yTg==", "dev": true, - "requires": { - "eslint-visitor-keys": "^1.1.0" + "license": "MIT", + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" } }, - "eslint-visitor-keys": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.1.0.tgz", - "integrity": "sha512-8y9YjtM1JBJU/A9Kc+SbaOV4y29sSWckBwMHa+FGtVj5gN/sbnKDf6xJUl+8g7FAij9LVaP8C24DUiH/f/2Z9A==", - "dev": true - }, - "espree": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-6.2.1.tgz", - "integrity": "sha512-ysCxRQY3WaXJz9tdbWOwuWr5Y/XrPTGX9Kiz3yoUXwW0VZ4w30HTkQLaGx/+ttFjF8i+ACbArnB4ce68a9m5hw==", + "node_modules/@jest/globals": { + "version": "30.0.0", + "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-30.0.0.tgz", + "integrity": "sha512-OEzYes5A1xwBJVMPqFRa8NCao8Vr42nsUZuf/SpaJWoLE+4kyl6nCQZ1zqfipmCrIXQVALC5qJwKy/7NQQLPhw==", "dev": true, - "requires": { - "acorn": "^7.1.1", - "acorn-jsx": "^5.2.0", - "eslint-visitor-keys": "^1.1.0" - }, + "license": "MIT", "dependencies": { - "acorn": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.1.1.tgz", - "integrity": "sha512-add7dgA5ppRPxCFJoAGfMDi7PIBXq1RtGo7BhbLaxwrXPOmw8gq48Y9ozT01hUKy9byMjlR20EJhu5zlkErEkg==", - "dev": true - } + "@jest/environment": "30.0.0", + "@jest/expect": "30.0.0", + "@jest/types": "30.0.0", + "jest-mock": "30.0.0" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" } }, - "esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true - }, - "esquery": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.2.0.tgz", - "integrity": "sha512-weltsSqdeWIX9G2qQZz7KlTRJdkkOCTPgLYJUz1Hacf48R4YOwGPHO3+ORfWedqJKbq5WQmsgK90n+pFLIKt/Q==", + "node_modules/@jest/pattern": { + "version": "30.0.0", + "resolved": "https://registry.npmjs.org/@jest/pattern/-/pattern-30.0.0.tgz", + "integrity": "sha512-k+TpEThzLVXMkbdxf8KHjZ83Wl+G54ytVJoDIGWwS96Ql4xyASRjc6SU1hs5jHVql+hpyK9G8N7WuFhLpGHRpQ==", "dev": true, - "requires": { - "estraverse": "^5.0.0" - }, + "license": "MIT", "dependencies": { - "estraverse": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.0.0.tgz", - "integrity": "sha512-j3acdrMzqrxmJTNj5dbr1YbjacrYgAxVMeF0gK16E3j494mOe7xygM/ZLIguEQ0ETwAg2hlJCtHRGav+y0Ny5A==", - "dev": true - } + "@types/node": "*", + "jest-regex-util": "30.0.0" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" } }, - "esrecurse": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz", - "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==", + "node_modules/@jest/reporters": { + "version": "30.0.0", + "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-30.0.0.tgz", + "integrity": "sha512-5WHNlLO0Ok+/o6ML5IzgVm1qyERtLHBNhwn67PAq92H4hZ+n5uW/BYj1VVwmTdxIcNrZLxdV9qtpdZkXf16HxA==", "dev": true, - "requires": { - "estraverse": "^4.1.0" + "license": "MIT", + "dependencies": { + "@bcoe/v8-coverage": "^0.2.3", + "@jest/console": "30.0.0", + "@jest/test-result": "30.0.0", + "@jest/transform": "30.0.0", + "@jest/types": "30.0.0", + "@jridgewell/trace-mapping": "^0.3.25", + "@types/node": "*", + "chalk": "^4.1.2", + "collect-v8-coverage": "^1.0.2", + "exit-x": "^0.2.2", + "glob": "^10.3.10", + "graceful-fs": "^4.2.11", + "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-instrument": "^6.0.0", + "istanbul-lib-report": "^3.0.0", + "istanbul-lib-source-maps": "^5.0.0", + "istanbul-reports": "^3.1.3", + "jest-message-util": "30.0.0", + "jest-util": "30.0.0", + "jest-worker": "30.0.0", + "slash": "^3.0.0", + "string-length": "^4.0.2", + "v8-to-istanbul": "^9.0.1" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } } }, - "estraverse": { + "node_modules/@jest/reporters/node_modules/ansi-styles": { "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "dev": true - }, - "esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true - }, - "events": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.1.0.tgz", - "integrity": "sha512-Rv+u8MLHNOdMjTAFeT3nCjHn2aGlx435FP/sDHNaRhDEMwyI/aB22Kj2qIN8R0cw3z28psEQLYwxVKLsKrMgWg==", - "dev": true - }, - "evp_bytestokey": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", - "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, - "requires": { - "md5.js": "^1.3.4", - "safe-buffer": "^5.1.1" + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "exec-sh": { - "version": "0.3.4", - "resolved": "https://registry.npmjs.org/exec-sh/-/exec-sh-0.3.4.tgz", - "integrity": "sha512-sEFIkc61v75sWeOe72qyrqg2Qg0OuLESziUDk/O/z2qgS15y2gWVFrI6f2Qn/qw/0/NCfCEsmNA4zOjkwEZT1A==", - "dev": true - }, - "execa": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz", - "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", + "node_modules/@jest/reporters/node_modules/brace-expansion": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", + "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", "dev": true, - "requires": { - "cross-spawn": "^6.0.0", - "get-stream": "^4.0.0", - "is-stream": "^1.1.0", - "npm-run-path": "^2.0.0", - "p-finally": "^1.0.0", - "signal-exit": "^3.0.0", - "strip-eof": "^1.0.0" + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" } }, - "exit": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", - "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=", - "dev": true - }, - "exit-hook": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/exit-hook/-/exit-hook-1.1.1.tgz", - "integrity": "sha1-8FyiM7SMBdVP/wd2XfhQfpXAL/g=", - "dev": true + "node_modules/@jest/reporters/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } }, - "expand-brackets": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", - "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", - "dev": true, - "requires": { - "debug": "^2.3.3", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "posix-character-classes": "^0.1.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } + "node_modules/@jest/reporters/node_modules/chalk/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "expect": { - "version": "25.4.0", - "resolved": "https://registry.npmjs.org/expect/-/expect-25.4.0.tgz", - "integrity": "sha512-7BDIX99BTi12/sNGJXA9KMRcby4iAmu1xccBOhyKCyEhjcVKS3hPmHdA/4nSI9QGIOkUropKqr3vv7WMDM5lvQ==", + "node_modules/@jest/reporters/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, - "requires": { - "@jest/types": "^25.4.0", - "ansi-styles": "^4.0.0", - "jest-get-type": "^25.2.6", - "jest-matcher-utils": "^25.4.0", - "jest-message-util": "^25.4.0", - "jest-regex-util": "^25.2.6" - }, - "dependencies": { - "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "requires": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - } + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" } }, - "extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", - "dev": true + "node_modules/@jest/reporters/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" }, - "extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", - "dev": true, - "requires": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - }, - "dependencies": { - "is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "dev": true, - "requires": { - "is-plain-object": "^2.0.4" - } - } + "node_modules/@jest/reporters/node_modules/glob": { + "version": "10.4.5", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", + "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==", + "dev": true, + "license": "ISC", + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^3.1.2", + "minimatch": "^9.0.4", + "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", + "path-scurry": "^1.11.1" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "external-editor": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-1.1.1.tgz", - "integrity": "sha1-Etew24UPf/fnCBuvQAVwAGDEYAs=", + "node_modules/@jest/reporters/node_modules/minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", "dev": true, - "requires": { - "extend": "^3.0.0", - "spawn-sync": "^1.0.15", - "tmp": "^0.0.29" + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "extglob": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", - "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", - "dev": true, - "requires": { - "array-unique": "^0.3.2", - "define-property": "^1.0.0", - "expand-brackets": "^2.1.4", - "extend-shallow": "^2.0.1", - "fragment-cache": "^0.2.1", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "dev": true, - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } + "node_modules/@jest/reporters/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" } }, - "extsprintf": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", - "dev": true - }, - "eyes": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/eyes/-/eyes-0.1.8.tgz", - "integrity": "sha1-Ys8SAjTGg3hdkCNIqADvPgzCC8A=", - "dev": true - }, - "fast-deep-equal": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.1.tgz", - "integrity": "sha512-8UEa58QDLauDNfpbrX55Q9jrGHThw2ZMdOky5Gl1CDtVeJDPVrG4Jxx1N8jw2gkWaff5UUuX1KJd+9zGe2B+ZA==" - }, - "fast-glob": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.2.tgz", - "integrity": "sha512-UDV82o4uQyljznxwMxyVRJgZZt3O5wENYojjzbaGEGZgeOxkLFf+V4cnUD+krzb2F72E18RhamkMZ7AdeggF7A==", + "node_modules/@jest/schemas": { + "version": "30.0.0", + "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-30.0.0.tgz", + "integrity": "sha512-NID2VRyaEkevCRz6badhfqYwri/RvMbiHY81rk3AkK/LaiB0LSxi1RdVZ7MpZdTjNugtZeGfpL0mLs9Kp3MrQw==", "dev": true, - "requires": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.0", - "merge2": "^1.3.0", - "micromatch": "^4.0.2", - "picomatch": "^2.2.1" - }, + "license": "MIT", "dependencies": { - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "glob-parent": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz", - "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==", - "dev": true, - "requires": { - "is-glob": "^4.0.1" - } - }, - "is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true - }, - "micromatch": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", - "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", - "dev": true, - "requires": { - "braces": "^3.0.1", - "picomatch": "^2.0.5" - } - }, - "to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "requires": { - "is-number": "^7.0.0" - } - } + "@sinclair/typebox": "^0.34.0" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" } }, - "fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==" + "node_modules/@jest/snapshot-utils": { + "version": "30.0.0", + "resolved": "https://registry.npmjs.org/@jest/snapshot-utils/-/snapshot-utils-30.0.0.tgz", + "integrity": "sha512-C/QSFUmvZEYptg2Vin84FggAphwHvj6la39vkw1CNOZQORWZ7O/H0BXmdeeeGnvlXDYY8TlFM5jgFnxLAxpFjA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "30.0.0", + "chalk": "^4.1.2", + "graceful-fs": "^4.2.11", + "natural-compare": "^1.4.0" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" + } }, - "fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", - "dev": true + "node_modules/@jest/snapshot-utils/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } }, - "fastq": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.7.0.tgz", - "integrity": "sha512-YOadQRnHd5q6PogvAR/x62BGituF2ufiEA6s8aavQANw5YKHERI4AREboX6KotzP8oX2klxYF2wcV/7bn1clfQ==", + "node_modules/@jest/snapshot-utils/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, - "requires": { - "reusify": "^1.0.4" + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "fb-watchman": { + "node_modules/@jest/snapshot-utils/node_modules/color-convert": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.1.tgz", - "integrity": "sha512-DkPJKQeY6kKwmuMretBhr7G6Vodr7bFwDYTXIkfG1gjvNpaxBTQV3PbXg6bR1c1UP4jPOX0jHUbbHANL9vRjVg==", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, - "requires": { - "bser": "2.1.1" + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" } }, - "figgy-pudding": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.2.tgz", - "integrity": "sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw==", - "dev": true + "node_modules/@jest/snapshot-utils/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" }, - "figures": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz", - "integrity": "sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4=", + "node_modules/@jest/snapshot-utils/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, - "requires": { - "escape-string-regexp": "^1.0.5", - "object-assign": "^4.1.0" + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "file-entry-cache": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-5.0.1.tgz", - "integrity": "sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==", + "node_modules/@jest/source-map": { + "version": "30.0.0", + "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-30.0.0.tgz", + "integrity": "sha512-oYBJ4d/NF4ZY3/7iq1VaeoERHRvlwKtrGClgescaXMIa1mmb+vfJd0xMgbW9yrI80IUA7qGbxpBWxlITrHkWoA==", "dev": true, - "requires": { - "flat-cache": "^2.0.1" + "license": "MIT", + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.25", + "callsites": "^3.1.0", + "graceful-fs": "^4.2.11" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" } }, - "file-loader": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-6.0.0.tgz", - "integrity": "sha512-/aMOAYEFXDdjG0wytpTL5YQLfZnnTmLNjn+AIrJ/6HVnTfDqLsVKUUwkDf4I4kgex36BvjuXEn/TX9B/1ESyqQ==", + "node_modules/@jest/test-result": { + "version": "30.0.0", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-30.0.0.tgz", + "integrity": "sha512-685zco9HdgBaaWiB9T4xjLtBuN0Q795wgaQPpmuAeZPHwHZSoKFAUnozUtU+ongfi4l5VCz8AclOE5LAQdyjxQ==", "dev": true, - "requires": { - "loader-utils": "^2.0.0", - "schema-utils": "^2.6.5" - }, + "license": "MIT", "dependencies": { - "json5": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.1.3.tgz", - "integrity": "sha512-KXPvOm8K9IJKFM0bmdn8QXh7udDh1g/giieX0NLCaMnb4hEiVFqnop2ImTXCc5e0/oHz3LTqmHGtExn5hfMkOA==", - "dev": true, - "requires": { - "minimist": "^1.2.5" - } - }, - "loader-utils": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.0.tgz", - "integrity": "sha512-rP4F0h2RaWSvPEkD7BLDFQnvSf+nK+wr3ESUjNTyAGobqrijmW92zc+SO6d4p4B1wh7+B/Jg1mkQe5NYUEHtHQ==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^2.1.2" - } - } + "@jest/console": "30.0.0", + "@jest/types": "30.0.0", + "@types/istanbul-lib-coverage": "^2.0.6", + "collect-v8-coverage": "^1.0.2" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" } }, - "file-uri-to-path": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", - "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", + "node_modules/@jest/test-sequencer": { + "version": "30.0.0", + "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-30.0.0.tgz", + "integrity": "sha512-Hmvv5Yg6UmghXIcVZIydkT0nAK7M/hlXx9WMHR5cLVwdmc14/qUQt3mC72T6GN0olPC6DhmKE6Cd/pHsgDbuqQ==", "dev": true, - "optional": true + "license": "MIT", + "dependencies": { + "@jest/test-result": "30.0.0", + "graceful-fs": "^4.2.11", + "jest-haste-map": "30.0.0", + "slash": "^3.0.0" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" + } }, - "fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", - "dev": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } + "node_modules/@jest/test-sequencer/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" } }, - "find-cache-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", - "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", - "dev": true, - "requires": { - "commondir": "^1.0.1", - "make-dir": "^2.0.0", - "pkg-dir": "^3.0.0" - }, - "dependencies": { - "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "dev": true, - "requires": { - "locate-path": "^3.0.0" - } - }, - "locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "dev": true, - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "dev": true, - "requires": { - "p-limit": "^2.0.0" - } - }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true - }, - "pkg-dir": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", - "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", - "dev": true, - "requires": { - "find-up": "^3.0.0" - } - } + "node_modules/@jest/transform": { + "version": "30.0.0", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-30.0.0.tgz", + "integrity": "sha512-8xhpsCGYJsUjqpJOgLyMkeOSSlhqggFZEWAnZquBsvATtueoEs7CkMRxOUmJliF3E5x+mXmZ7gEEsHank029Og==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/core": "^7.27.4", + "@jest/types": "30.0.0", + "@jridgewell/trace-mapping": "^0.3.25", + "babel-plugin-istanbul": "^7.0.0", + "chalk": "^4.1.2", + "convert-source-map": "^2.0.0", + "fast-json-stable-stringify": "^2.1.0", + "graceful-fs": "^4.2.11", + "jest-haste-map": "30.0.0", + "jest-regex-util": "30.0.0", + "jest-util": "30.0.0", + "micromatch": "^4.0.8", + "pirates": "^4.0.7", + "slash": "^3.0.0", + "write-file-atomic": "^5.0.1" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" } }, - "find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "node_modules/@jest/transform/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, - "requires": { - "locate-path": "^2.0.0" + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "find-versions": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/find-versions/-/find-versions-3.2.0.tgz", - "integrity": "sha512-P8WRou2S+oe222TOCHitLy8zj+SIsVJh52VP4lvXkaFVnOFFdoWv1H1Jjvel1aI6NCFOAaeAVm8qrI0odiLcww==", + "node_modules/@jest/transform/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, - "requires": { - "semver-regex": "^2.0.0" + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "flat-cache": { + "node_modules/@jest/transform/node_modules/color-convert": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz", - "integrity": "sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==", - "dev": true, - "requires": { - "flatted": "^2.0.0", - "rimraf": "2.6.3", - "write": "1.0.3" - }, - "dependencies": { - "rimraf": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", - "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - } + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" } }, - "flatted": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.2.tgz", - "integrity": "sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA==", - "dev": true + "node_modules/@jest/transform/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" }, - "flatten": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/flatten/-/flatten-1.0.3.tgz", - "integrity": "sha512-dVsPA/UwQ8+2uoFe5GHtiBMu48dWLTdsuEd7CKGlZlD78r1TTWBvDuFaFGKCo/ZfEr95Uk56vZoX86OsHkUeIg==", - "dev": true + "node_modules/@jest/transform/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } }, - "flush-write-stream": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.1.1.tgz", - "integrity": "sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w==", + "node_modules/@jest/transform/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, - "requires": { - "inherits": "^2.0.3", - "readable-stream": "^2.3.6" + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "for-in": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", - "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", - "dev": true + "node_modules/@jest/types": { + "version": "30.0.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-30.0.0.tgz", + "integrity": "sha512-1Nox8mAL52PKPfEnUQWBvKU/bp8FTT6AiDu76bFDEJj/qsRFSAVSldfCH3XYMqialti2zHXKvD5gN0AaHc0yKA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/pattern": "30.0.0", + "@jest/schemas": "30.0.0", + "@types/istanbul-lib-coverage": "^2.0.6", + "@types/istanbul-reports": "^3.0.4", + "@types/node": "*", + "@types/yargs": "^17.0.33", + "chalk": "^4.1.2" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" + } }, - "forever-agent": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", - "dev": true + "node_modules/@jest/types/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } }, - "form-data": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", - "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", + "node_modules/@jest/types/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "fragment-cache": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", - "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", + "node_modules/@jest/types/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, - "requires": { - "map-cache": "^0.2.2" + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" } }, - "from2": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz", - "integrity": "sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8=", + "node_modules/@jest/types/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@jest/types/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, - "requires": { - "inherits": "^2.0.1", - "readable-stream": "^2.0.0" + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "fs-access": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/fs-access/-/fs-access-1.0.1.tgz", - "integrity": "sha1-1qh/JiJxzv6+wwxVNAf7mV2od3o=", + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.8.tgz", + "integrity": "sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==", "dev": true, - "requires": { - "null-check": "^1.0.0" + "license": "MIT", + "dependencies": { + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" } }, - "fs-exists-sync": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/fs-exists-sync/-/fs-exists-sync-0.1.0.tgz", - "integrity": "sha1-mC1ok6+RjnLQjeyehnP/K1qNat0=", - "dev": true + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } }, - "fs-extra": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz", - "integrity": "sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==", + "node_modules/@jridgewell/set-array": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" + "license": "MIT", + "engines": { + "node": ">=6.0.0" } }, - "fs-monkey": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.0.tgz", - "integrity": "sha512-nxkkzQ5Ga+ETriXxIof4TncyMSzrV9jFIF+kGN16nw5CiAdWAnG/2FgM7CHhRenW1EBiDx+r1tf/P78HGKCgnA==", - "dev": true + "node_modules/@jridgewell/source-map": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.6.tgz", + "integrity": "sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25" + } }, - "fs-readdir-recursive": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/fs-readdir-recursive/-/fs-readdir-recursive-1.1.0.tgz", - "integrity": "sha512-GNanXlVr2pf02+sPN40XN8HG+ePaNcvM0q5mZBd668Obwb0yD5GiUbZOFgwn8kGMY6I3mdyDJzieUy3PTYyTRA==", - "dev": true + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz", + "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==", + "dev": true, + "license": "MIT" }, - "fs-write-stream-atomic": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz", - "integrity": "sha1-tH31NJPvkR33VzHnCp3tAYnbQMk=", + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "iferr": "^0.1.5", - "imurmurhash": "^0.1.4", - "readable-stream": "1 || 2" + "license": "MIT", + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" } }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", - "dev": true - }, - "fsevents": { - "version": "1.2.12", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.12.tgz", - "integrity": "sha512-Ggd/Ktt7E7I8pxZRbGIs7vwqAPscSESMrCSkx2FtWeqmheJgCo2R74fTsZFCifr0VTPwqRpPv17+6b8Zp7th0Q==", + "node_modules/@jsonjoy.com/base64": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@jsonjoy.com/base64/-/base64-1.1.2.tgz", + "integrity": "sha512-q6XAnWQDIMA3+FTiOYajoYqySkO+JSat0ytXGSuRdq9uXE7o92gzuQwQM14xaCRlBLGq3v5miDGC4vkVTn54xA==", "dev": true, - "optional": true, - "requires": { - "bindings": "^1.5.0", - "nan": "^2.12.1", - "node-pre-gyp": "*" + "license": "Apache-2.0", + "engines": { + "node": ">=10.0" }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/streamich" + }, + "peerDependencies": { + "tslib": "2" + } + }, + "node_modules/@jsonjoy.com/json-pack": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@jsonjoy.com/json-pack/-/json-pack-1.2.0.tgz", + "integrity": "sha512-io1zEbbYcElht3tdlqEOFxZ0dMTYrHz9iMf0gqn1pPjZFTCgM5R4R5IMA20Chb2UPYYsxjzs8CgZ7Nb5n2K2rA==", + "dev": true, + "license": "Apache-2.0", "dependencies": { - "abbrev": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "ansi-regex": { - "version": "2.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "aproba": { - "version": "1.2.0", - "bundled": true, - "dev": true, - "optional": true - }, - "are-we-there-yet": { - "version": "1.1.5", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" - } - }, - "balanced-match": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "brace-expansion": { - "version": "1.1.11", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "chownr": { - "version": "1.1.4", - "bundled": true, - "dev": true, - "optional": true - }, - "code-point-at": { - "version": "1.1.0", - "bundled": true, - "dev": true, - "optional": true - }, - "concat-map": { - "version": "0.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "console-control-strings": { - "version": "1.1.0", - "bundled": true, - "dev": true, - "optional": true - }, - "core-util-is": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "debug": { - "version": "3.2.6", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "ms": "^2.1.1" - } - }, - "deep-extend": { - "version": "0.6.0", - "bundled": true, - "dev": true, - "optional": true - }, - "delegates": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "detect-libc": { - "version": "1.0.3", - "bundled": true, - "dev": true, - "optional": true - }, - "fs-minipass": { - "version": "1.2.7", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minipass": "^2.6.0" - } - }, - "fs.realpath": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "gauge": { - "version": "2.7.4", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "aproba": "^1.0.3", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.0", - "object-assign": "^4.1.0", - "signal-exit": "^3.0.0", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wide-align": "^1.1.0" - } - }, - "glob": { - "version": "7.1.6", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "has-unicode": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "iconv-lite": { - "version": "0.4.24", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "ignore-walk": { - "version": "3.0.3", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minimatch": "^3.0.4" - } - }, - "inflight": { - "version": "1.0.6", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.4", - "bundled": true, - "dev": true, - "optional": true - }, - "ini": { - "version": "1.3.5", - "bundled": true, - "dev": true, - "optional": true - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "isarray": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "minimatch": { - "version": "3.0.4", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "1.2.5", - "bundled": true, - "dev": true, - "optional": true - }, - "minipass": { - "version": "2.9.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "^5.1.2", - "yallist": "^3.0.0" - } - }, - "minizlib": { - "version": "1.3.3", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minipass": "^2.9.0" - } - }, - "mkdirp": { - "version": "0.5.3", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minimist": "^1.2.5" - } - }, - "ms": { - "version": "2.1.2", - "bundled": true, - "dev": true, - "optional": true - }, - "needle": { - "version": "2.3.3", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "debug": "^3.2.6", - "iconv-lite": "^0.4.4", - "sax": "^1.2.4" - } - }, - "node-pre-gyp": { - "version": "0.14.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "detect-libc": "^1.0.2", - "mkdirp": "^0.5.1", - "needle": "^2.2.1", - "nopt": "^4.0.1", - "npm-packlist": "^1.1.6", - "npmlog": "^4.0.2", - "rc": "^1.2.7", - "rimraf": "^2.6.1", - "semver": "^5.3.0", - "tar": "^4.4.2" - } - }, - "nopt": { - "version": "4.0.3", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "abbrev": "1", - "osenv": "^0.1.4" - } - }, - "npm-bundled": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "npm-normalize-package-bin": "^1.0.1" - } - }, - "npm-normalize-package-bin": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "npm-packlist": { - "version": "1.4.8", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "ignore-walk": "^3.0.1", - "npm-bundled": "^1.0.1", - "npm-normalize-package-bin": "^1.0.1" - } - }, - "npmlog": { - "version": "4.1.2", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "object-assign": { - "version": "4.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "once": { - "version": "1.4.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "wrappy": "1" - } - }, - "os-homedir": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "os-tmpdir": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "osenv": { - "version": "0.1.5", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "os-homedir": "^1.0.0", - "os-tmpdir": "^1.0.0" - } - }, - "path-is-absolute": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "process-nextick-args": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "rc": { - "version": "1.2.8", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - } - }, - "readable-stream": { - "version": "2.3.7", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "rimraf": { - "version": "2.7.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "glob": "^7.1.3" - } - }, - "safe-buffer": { - "version": "5.1.2", - "bundled": true, - "dev": true, - "optional": true - }, - "safer-buffer": { - "version": "2.1.2", - "bundled": true, - "dev": true, - "optional": true - }, - "sax": { - "version": "1.2.4", - "bundled": true, - "dev": true, - "optional": true - }, - "semver": { - "version": "5.7.1", - "bundled": true, - "dev": true, - "optional": true - }, - "set-blocking": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "signal-exit": { - "version": "3.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "string-width": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - }, - "string_decoder": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "~5.1.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "strip-json-comments": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "tar": { - "version": "4.4.13", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "chownr": "^1.1.1", - "fs-minipass": "^1.2.5", - "minipass": "^2.8.6", - "minizlib": "^1.2.1", - "mkdirp": "^0.5.0", - "safe-buffer": "^5.1.2", - "yallist": "^3.0.3" - } - }, - "util-deprecate": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "wide-align": { - "version": "1.1.3", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "string-width": "^1.0.2 || 2" - } - }, - "wrappy": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "yallist": { - "version": "3.1.1", - "bundled": true, - "dev": true, - "optional": true - } + "@jsonjoy.com/base64": "^1.1.1", + "@jsonjoy.com/util": "^1.1.2", + "hyperdyperid": "^1.2.0", + "thingies": "^1.20.0" + }, + "engines": { + "node": ">=10.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/streamich" + }, + "peerDependencies": { + "tslib": "2" } }, - "function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true - }, - "functional-red-black-tree": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", - "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", - "dev": true - }, - "gauge": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-1.2.7.tgz", - "integrity": "sha1-6c7FSD09TuDvRLYKfZnkk14TbZM=", + "node_modules/@jsonjoy.com/util": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@jsonjoy.com/util/-/util-1.6.0.tgz", + "integrity": "sha512-sw/RMbehRhN68WRtcKCpQOPfnH6lLP4GJfqzi3iYej8tnzpZUDr6UkZYJjcjjC0FWEJOJbyM3PTIwxucUmDG2A==", "dev": true, - "requires": { - "ansi": "^0.3.0", - "has-unicode": "^2.0.0", - "lodash.pad": "^4.1.0", - "lodash.padend": "^4.1.0", - "lodash.padstart": "^4.1.0" + "license": "Apache-2.0", + "engines": { + "node": ">=10.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/streamich" + }, + "peerDependencies": { + "tslib": "2" } }, - "gensync": { - "version": "1.0.0-beta.1", - "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.1.tgz", - "integrity": "sha512-r8EC6NO1sngH/zdD9fiRDLdcgnbayXah+mLgManTaIZJqEC1MZstmnox8KpnI2/fxQwrp5OpCOYWLp4rBl4Jcg==", - "dev": true - }, - "get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true - }, - "get-own-enumerable-property-symbols": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz", - "integrity": "sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==", - "dev": true - }, - "get-pkg-repo": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/get-pkg-repo/-/get-pkg-repo-1.4.0.tgz", - "integrity": "sha1-xztInAbYDMVTbCyFP54FIyBWly0=", + "node_modules/@napi-rs/wasm-runtime": { + "version": "0.2.11", + "resolved": "https://registry.npmjs.org/@napi-rs/wasm-runtime/-/wasm-runtime-0.2.11.tgz", + "integrity": "sha512-9DPkXtvHydrcOsopiYpUgPHpmj0HWZKMUnL2dZqpvC42lsratuBG06V5ipyno0fUek5VlFsNQ+AcFATSrJXgMA==", "dev": true, - "requires": { - "hosted-git-info": "^2.1.4", - "meow": "^3.3.0", - "normalize-package-data": "^2.3.0", - "parse-github-repo-url": "^1.3.0", - "through2": "^2.0.0" - }, + "license": "MIT", + "optional": true, "dependencies": { - "camelcase": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz", - "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=", - "dev": true - }, - "camelcase-keys": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", - "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=", - "dev": true, - "requires": { - "camelcase": "^2.0.0", - "map-obj": "^1.0.0" - } - }, - "find-up": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", - "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", - "dev": true, - "requires": { - "path-exists": "^2.0.0", - "pinkie-promise": "^2.0.0" - } - }, - "get-stdin": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz", - "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=", - "dev": true - }, - "indent-string": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz", - "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=", - "dev": true, - "requires": { - "repeating": "^2.0.0" - } - }, - "load-json-file": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", - "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "parse-json": "^2.2.0", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0", - "strip-bom": "^2.0.0" - } - }, - "map-obj": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", - "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=", - "dev": true - }, - "meow": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", - "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", - "dev": true, - "requires": { - "camelcase-keys": "^2.0.0", - "decamelize": "^1.1.2", - "loud-rejection": "^1.0.0", - "map-obj": "^1.0.1", - "minimist": "^1.1.3", - "normalize-package-data": "^2.3.4", - "object-assign": "^4.0.1", - "read-pkg-up": "^1.0.1", - "redent": "^1.0.0", - "trim-newlines": "^1.0.0" - } - }, - "parse-json": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", - "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", - "dev": true, - "requires": { - "error-ex": "^1.2.0" - } - }, - "path-exists": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", - "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", - "dev": true, - "requires": { - "pinkie-promise": "^2.0.0" - } - }, - "path-type": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", - "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0" - } - }, - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true - }, - "read-pkg": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", - "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", - "dev": true, - "requires": { - "load-json-file": "^1.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^1.0.0" - } - }, - "read-pkg-up": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", - "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", - "dev": true, - "requires": { - "find-up": "^1.0.0", - "read-pkg": "^1.0.0" - } - }, - "redent": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz", - "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=", - "dev": true, - "requires": { - "indent-string": "^2.1.0", - "strip-indent": "^1.0.1" - } - }, - "strip-bom": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", - "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", - "dev": true, - "requires": { - "is-utf8": "^0.2.0" - } - }, - "strip-indent": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz", - "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=", - "dev": true, - "requires": { - "get-stdin": "^4.0.1" - } - }, - "through2": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", - "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", - "dev": true, - "requires": { - "readable-stream": "~2.3.6", - "xtend": "~4.0.1" - } - }, - "trim-newlines": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz", - "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=", - "dev": true - } + "@emnapi/core": "^1.4.3", + "@emnapi/runtime": "^1.4.3", + "@tybys/wasm-util": "^0.9.0" } }, - "get-stdin": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-7.0.0.tgz", - "integrity": "sha512-zRKcywvrXlXsA0v0i9Io4KDRaAw7+a1ZpjRwl9Wox8PFlVCCHra7E9c4kqXCoCM9nR5tBkaTTZRBoCm60bFqTQ==", - "dev": true - }, - "get-stream": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", - "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "node_modules/@nicolo-ribaudo/chokidar-2": { + "version": "2.1.8-no-fsevents.3", + "resolved": "https://registry.npmjs.org/@nicolo-ribaudo/chokidar-2/-/chokidar-2-2.1.8-no-fsevents.3.tgz", + "integrity": "sha512-s88O1aVtXftvp5bCPB7WnmXc5IwOZZ7YPuwNPt+GtOOXpPvad1LfbmjYv+qII7zP6RU2QGnqve27dnLycEnyEQ==", "dev": true, - "requires": { - "pump": "^3.0.0" - } - }, - "get-value": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", - "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=", - "dev": true + "license": "MIT", + "optional": true }, - "getpass": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", - "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", "dev": true, - "requires": { - "assert-plus": "^1.0.0" + "license": "MIT", + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" } }, - "git-config-path": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/git-config-path/-/git-config-path-1.0.1.tgz", - "integrity": "sha1-bTP37WPbDQ4RgTFQO6s6ykfVRmQ=", - "dev": true, - "requires": { - "extend-shallow": "^2.0.1", - "fs-exists-sync": "^0.1.0", - "homedir-polyfill": "^1.0.0" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 8" } }, - "git-raw-commits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/git-raw-commits/-/git-raw-commits-2.0.3.tgz", - "integrity": "sha512-SoSsFL5lnixVzctGEi2uykjA7B5I0AhO9x6kdzvGRHbxsa6JSEgrgy1esRKsfOKE1cgyOJ/KDR2Trxu157sb8w==", + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", "dev": true, - "requires": { - "dargs": "^4.0.1", - "lodash.template": "^4.0.2", - "meow": "^5.0.0", - "split2": "^2.0.0", - "through2": "^3.0.0" + "license": "MIT", + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" } }, - "git-remote-origin-url": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/git-remote-origin-url/-/git-remote-origin-url-2.0.0.tgz", - "integrity": "sha1-UoJlna4hBxRaERJhEq0yFuxfpl8=", + "node_modules/@parcel/watcher": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher/-/watcher-2.5.1.tgz", + "integrity": "sha512-dfUnCxiN9H4ap84DvD2ubjw+3vUNpstxa0TneY/Paat8a3R4uQZDLSvWjmznAY/DoahqTHl9V46HF/Zs3F29pg==", "dev": true, - "requires": { - "gitconfiglocal": "^1.0.0", - "pify": "^2.3.0" - }, + "hasInstallScript": true, + "license": "MIT", + "optional": true, "dependencies": { - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true - } + "detect-libc": "^1.0.3", + "is-glob": "^4.0.3", + "micromatch": "^4.0.5", + "node-addon-api": "^7.0.0" + }, + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + }, + "optionalDependencies": { + "@parcel/watcher-android-arm64": "2.5.1", + "@parcel/watcher-darwin-arm64": "2.5.1", + "@parcel/watcher-darwin-x64": "2.5.1", + "@parcel/watcher-freebsd-x64": "2.5.1", + "@parcel/watcher-linux-arm-glibc": "2.5.1", + "@parcel/watcher-linux-arm-musl": "2.5.1", + "@parcel/watcher-linux-arm64-glibc": "2.5.1", + "@parcel/watcher-linux-arm64-musl": "2.5.1", + "@parcel/watcher-linux-x64-glibc": "2.5.1", + "@parcel/watcher-linux-x64-musl": "2.5.1", + "@parcel/watcher-win32-arm64": "2.5.1", + "@parcel/watcher-win32-ia32": "2.5.1", + "@parcel/watcher-win32-x64": "2.5.1" + } + }, + "node_modules/@parcel/watcher-android-arm64": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-android-arm64/-/watcher-android-arm64-2.5.1.tgz", + "integrity": "sha512-KF8+j9nNbUN8vzOFDpRMsaKBHZ/mcjEjMToVMJOhTozkDonQFFrRcfdLWn6yWKCmJKmdVxSgHiYvTCef4/qcBA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" } }, - "git-semver-tags": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/git-semver-tags/-/git-semver-tags-3.0.1.tgz", - "integrity": "sha512-Hzd1MOHXouITfCasrpVJbRDg9uvW7LfABk3GQmXYZByerBDrfrEMP9HXpNT7RxAbieiocP6u+xq20DkvjwxnCA==", + "node_modules/@parcel/watcher-darwin-arm64": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-arm64/-/watcher-darwin-arm64-2.5.1.tgz", + "integrity": "sha512-eAzPv5osDmZyBhou8PoF4i6RQXAfeKL9tjb3QzYuccXFMQU0ruIc/POh30ePnaOyD1UXdlKguHBmsTs53tVoPw==", + "cpu": [ + "arm64" + ], "dev": true, - "requires": { - "meow": "^5.0.0", - "semver": "^6.0.0" + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" } }, - "git-username": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/git-username/-/git-username-1.0.0.tgz", - "integrity": "sha512-xm45KwBR6Eu1jO4umx/o2M84v9TC7tdOBuzLx8ayhdR9H1FBiiG9azz31uC0esDvaWVBTDINpJ5USomk+ja8OQ==", + "node_modules/@parcel/watcher-darwin-x64": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-x64/-/watcher-darwin-x64-2.5.1.tgz", + "integrity": "sha512-1ZXDthrnNmwv10A0/3AJNZ9JGlzrF82i3gNQcWOzd7nJ8aj+ILyW1MTxVk35Db0u91oD5Nlk9MBiujMlwmeXZg==", + "cpu": [ + "x64" + ], "dev": true, - "requires": { - "parse-github-url": "^1.0.2", - "remote-origin-url": "^1.0.0" + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" } }, - "gitconfiglocal": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/gitconfiglocal/-/gitconfiglocal-1.0.0.tgz", - "integrity": "sha1-QdBF84UaXqiPA/JMocYXgRRGS5s=", + "node_modules/@parcel/watcher-freebsd-x64": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-freebsd-x64/-/watcher-freebsd-x64-2.5.1.tgz", + "integrity": "sha512-SI4eljM7Flp9yPuKi8W0ird8TI/JK6CSxju3NojVI6BjHsTyK7zxA9urjVjEKJ5MBYC+bLmMcbAWlZ+rFkLpJQ==", + "cpu": [ + "x64" + ], "dev": true, - "requires": { - "ini": "^1.3.2" + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" } }, - "glob": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", - "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", + "node_modules/@parcel/watcher-linux-arm-glibc": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-glibc/-/watcher-linux-arm-glibc-2.5.1.tgz", + "integrity": "sha512-RCdZlEyTs8geyBkkcnPWvtXLY44BCeZKmGYRtSgtwwnHR4dxfHRG3gR99XdMEdQ7KeiDdasJwwvNSF5jKtDwdA==", + "cpu": [ + "arm" + ], "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" } }, - "glob-parent": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", - "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", - "dev": true, - "requires": { - "is-glob": "^3.1.0", - "path-dirname": "^1.0.0" - }, - "dependencies": { - "is-glob": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", - "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", - "dev": true, - "requires": { - "is-extglob": "^2.1.0" - } - } + "node_modules/@parcel/watcher-linux-arm-musl": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-musl/-/watcher-linux-arm-musl-2.5.1.tgz", + "integrity": "sha512-6E+m/Mm1t1yhB8X412stiKFG3XykmgdIOqhjWj+VL8oHkKABfu/gjFj8DvLrYVHSBNC+/u5PeNrujiSQ1zwd1Q==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" } }, - "global-dirs": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-0.1.1.tgz", - "integrity": "sha1-sxnA3UYH81PzvpzKTHL8FIxJ9EU=", + "node_modules/@parcel/watcher-linux-arm64-glibc": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-glibc/-/watcher-linux-arm64-glibc-2.5.1.tgz", + "integrity": "sha512-LrGp+f02yU3BN9A+DGuY3v3bmnFUggAITBGriZHUREfNEzZh/GO06FF5u2kx8x+GBEUYfyTGamol4j3m9ANe8w==", + "cpu": [ + "arm64" + ], "dev": true, - "requires": { - "ini": "^1.3.4" + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" } }, - "globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", - "dev": true - }, - "globby": { - "version": "10.0.2", - "resolved": "https://registry.npmjs.org/globby/-/globby-10.0.2.tgz", - "integrity": "sha512-7dUi7RvCoT/xast/o/dLN53oqND4yk0nsHkhRgn9w65C4PofCLOoJ39iSOg+qVDdWQPIEj+eszMHQ+aLVwwQSg==", + "node_modules/@parcel/watcher-linux-arm64-musl": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-musl/-/watcher-linux-arm64-musl-2.5.1.tgz", + "integrity": "sha512-cFOjABi92pMYRXS7AcQv9/M1YuKRw8SZniCDw0ssQb/noPkRzA+HBDkwmyOJYp5wXcsTrhxO0zq1U11cK9jsFg==", + "cpu": [ + "arm64" + ], "dev": true, - "requires": { - "@types/glob": "^7.1.1", - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.0.3", - "glob": "^7.1.3", - "ignore": "^5.1.1", - "merge2": "^1.2.3", - "slash": "^3.0.0" + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" }, - "dependencies": { - "slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true - } + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" } }, - "graceful-fs": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.3.tgz", - "integrity": "sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==", - "dev": true - }, - "growly": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/growly/-/growly-1.3.0.tgz", - "integrity": "sha1-8QdIy+dq+WS3yWyTxrzCivEgwIE=", + "node_modules/@parcel/watcher-linux-x64-glibc": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-glibc/-/watcher-linux-x64-glibc-2.5.1.tgz", + "integrity": "sha512-GcESn8NZySmfwlTsIur+49yDqSny2IhPeZfXunQi48DMugKeZ7uy1FX83pO0X22sHntJ4Ub+9k34XQCX+oHt2A==", + "cpu": [ + "x64" + ], "dev": true, - "optional": true + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } }, - "handlebars": { - "version": "4.7.6", - "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.6.tgz", - "integrity": "sha512-1f2BACcBfiwAfStCKZNrUCgqNZkGsAT7UM3kkYtXuLo0KnaVfjKOyf7PRzB6++aK9STyT1Pd2ZCPe3EGOXleXA==", + "node_modules/@parcel/watcher-linux-x64-musl": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-musl/-/watcher-linux-x64-musl-2.5.1.tgz", + "integrity": "sha512-n0E2EQbatQ3bXhcH2D1XIAANAcTZkQICBPVaxMeaCVBtOpBZpWJuf7LwyWPSBDITb7In8mqQgJ7gH8CILCURXg==", + "cpu": [ + "x64" + ], "dev": true, - "requires": { - "minimist": "^1.2.5", - "neo-async": "^2.6.0", - "source-map": "^0.6.1", - "uglify-js": "^3.1.4", - "wordwrap": "^1.0.0" + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" } }, - "har-schema": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", - "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", - "dev": true - }, - "har-validator": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.3.tgz", - "integrity": "sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g==", + "node_modules/@parcel/watcher-win32-arm64": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-arm64/-/watcher-win32-arm64-2.5.1.tgz", + "integrity": "sha512-RFzklRvmc3PkjKjry3hLF9wD7ppR4AKcWNzH7kXR7GUe0Igb3Nz8fyPwtZCSquGrhU5HhUNDr/mKBqj7tqA2Vw==", + "cpu": [ + "arm64" + ], "dev": true, - "requires": { - "ajv": "^6.5.5", - "har-schema": "^2.0.0" + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" } }, - "has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "node_modules/@parcel/watcher-win32-ia32": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-ia32/-/watcher-win32-ia32-2.5.1.tgz", + "integrity": "sha512-c2KkcVN+NJmuA7CGlaGD1qJh1cLfDnQsHjE89E60vUEMlqduHGCdCLJCID5geFVM0dOtA3ZiIO8BoEQmzQVfpQ==", + "cpu": [ + "ia32" + ], "dev": true, - "requires": { - "function-bind": "^1.1.1" + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" } }, - "has-ansi": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "node_modules/@parcel/watcher-win32-x64": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-x64/-/watcher-win32-x64-2.5.1.tgz", + "integrity": "sha512-9lHBdJITeNR++EvSQVUcaZoWupyHfXe1jZvGZ06O/5MflPcuPLtEphScIBL+AiCWBO46tDSHzWyD0uDmmZqsgA==", + "cpu": [ + "x64" + ], "dev": true, - "requires": { - "ansi-regex": "^2.0.0" + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" } }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" - }, - "has-symbols": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz", - "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==", - "dev": true - }, - "has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=", - "dev": true - }, - "has-value": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", - "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", + "node_modules/@pkgjs/parseargs": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", + "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", "dev": true, - "requires": { - "get-value": "^2.0.6", - "has-values": "^1.0.0", - "isobject": "^3.0.0" + "license": "MIT", + "optional": true, + "engines": { + "node": ">=14" } }, - "has-values": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", - "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", - "dev": true, - "requires": { - "is-number": "^3.0.0", - "kind-of": "^4.0.0" - }, - "dependencies": { - "kind-of": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", - "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } + "node_modules/@pkgr/core": { + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/@pkgr/core/-/core-0.2.7.tgz", + "integrity": "sha512-YLT9Zo3oNPJoBjBc4q8G2mjU4tqIbf5CEOORbUUr48dCD9q3umJ3IPlVqOqDakPfd2HuwccBaqlGhN4Gmr5OWg==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^12.20.0 || ^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/pkgr" } }, - "hash-base": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.0.4.tgz", - "integrity": "sha1-X8hoaEfs1zSZQDMZprCj8/auSRg=", + "node_modules/@rtsao/scc": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@rtsao/scc/-/scc-1.1.0.tgz", + "integrity": "sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==", "dev": true, - "requires": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } + "license": "MIT" }, - "hash.js": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", - "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", + "node_modules/@sinclair/typebox": { + "version": "0.34.34", + "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.34.34.tgz", + "integrity": "sha512-eorgURQ/pnWvdyexF2DTh3eDTA35/nmWLeqOHWseA0gtGcNShyt1yH7Qy1Cz37aK29a73GCZmUQpGy0Sj9t3Gw==", "dev": true, - "requires": { - "inherits": "^2.0.3", - "minimalistic-assert": "^1.0.1" - } + "license": "MIT" }, - "hmac-drbg": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", - "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", + "node_modules/@sinonjs/commons": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz", + "integrity": "sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==", "dev": true, - "requires": { - "hash.js": "^1.0.3", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.1" + "license": "BSD-3-Clause", + "dependencies": { + "type-detect": "4.0.8" } }, - "homedir-polyfill": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz", - "integrity": "sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA==", + "node_modules/@sinonjs/fake-timers": { + "version": "13.0.5", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-13.0.5.tgz", + "integrity": "sha512-36/hTbH2uaWuGVERyC6da9YwGWnzUZXuPro/F2LfsdOsLnCojz/iSH8MxUt/FD2S5XBSVPhmArFUXcpCQ2Hkiw==", "dev": true, - "requires": { - "parse-passwd": "^1.0.0" + "license": "BSD-3-Clause", + "dependencies": { + "@sinonjs/commons": "^3.0.1" } }, - "hosted-git-info": { - "version": "2.8.8", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz", - "integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==", - "dev": true - }, - "html-encoding-sniffer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-1.0.2.tgz", - "integrity": "sha512-71lZziiDnsuabfdYiUeWdCVyKuqwWi23L8YeIgV9jSSZHCtb6wB1BKWooH7L3tn4/FuZJMVWyNaIDr4RGmaSYw==", + "node_modules/@tybys/wasm-util": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.9.0.tgz", + "integrity": "sha512-6+7nlbMVX/PVDCwaIQ8nTOPveOcFLSt8GcXdx8hD0bt39uWxYT88uXzqTd4fTvqta7oeUJqudepapKNt2DYJFw==", "dev": true, - "requires": { - "whatwg-encoding": "^1.0.1" + "license": "MIT", + "optional": true, + "dependencies": { + "tslib": "^2.4.0" } }, - "html-escaper": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", - "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", - "dev": true - }, - "http-signature": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", - "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", + "node_modules/@types/babel__core": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz", + "integrity": "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==", "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" } }, - "https-browserify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", - "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=", - "dev": true + "node_modules/@types/babel__generator": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.27.0.tgz", + "integrity": "sha512-ufFd2Xi92OAVPYsy+P4n7/U7e68fex0+Ee8gSG9KX7eo084CWiQ4sdxktvdl0bOPupXtVJPY19zk6EwWqUQ8lg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.0.0" + } }, - "human-signals": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz", - "integrity": "sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==", - "dev": true + "node_modules/@types/babel__template": { + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz", + "integrity": "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" + } }, - "husky": { - "version": "4.2.5", - "resolved": "https://registry.npmjs.org/husky/-/husky-4.2.5.tgz", - "integrity": "sha512-SYZ95AjKcX7goYVZtVZF2i6XiZcHknw50iXvY7b0MiGoj5RwdgRQNEHdb+gPDPCXKlzwrybjFjkL6FOj8uRhZQ==", + "node_modules/@types/babel__traverse": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.7.tgz", + "integrity": "sha512-dkO5fhS7+/oos4ciWxyEyjWe48zmG6wbCheo/G2ZnHx4fs3EU6YC6UM8rk56gAjNJ9P3MTH2jo5jb92/K6wbng==", "dev": true, - "requires": { - "chalk": "^4.0.0", - "ci-info": "^2.0.0", - "compare-versions": "^3.6.0", - "cosmiconfig": "^6.0.0", - "find-versions": "^3.2.0", - "opencollective-postinstall": "^2.0.2", - "pkg-dir": "^4.2.0", - "please-upgrade-node": "^3.2.0", - "slash": "^3.0.0", - "which-pm-runs": "^1.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "requires": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.0.0.tgz", - "integrity": "sha512-N9oWFcegS0sFr9oh1oz2d7Npos6vNoWW9HvtCg5N1KRFpUhaAhvTv5Y58g880fZaEYSNm3qDz8SU1UrGvp+n7A==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "cosmiconfig": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-6.0.0.tgz", - "integrity": "sha512-xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg==", - "dev": true, - "requires": { - "@types/parse-json": "^4.0.0", - "import-fresh": "^3.1.0", - "parse-json": "^5.0.0", - "path-type": "^4.0.0", - "yaml": "^1.7.2" - } - }, - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "requires": { - "p-locate": "^4.1.0" - } - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "requires": { - "p-limit": "^2.2.0" - } - }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true - }, - "parse-json": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.0.0.tgz", - "integrity": "sha512-OOY5b7PAEFV0E2Fir1KOkxchnZNCdowAJgQ5NuxjpBKTRP3pQhwkrkxqQjeoKJ+fO7bCpmIZaogI4eZGDMEGOw==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1", - "lines-and-columns": "^1.1.6" - } - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - }, - "path-type": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", - "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", - "dev": true - }, - "pkg-dir": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", - "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", - "dev": true, - "requires": { - "find-up": "^4.0.0" - } - }, - "slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true - }, - "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } + "license": "MIT", + "dependencies": { + "@babel/types": "^7.20.7" } }, - "iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "node_modules/@types/conventional-commits-parser": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/@types/conventional-commits-parser/-/conventional-commits-parser-5.0.1.tgz", + "integrity": "sha512-7uz5EHdzz2TqoMfV7ee61Egf5y6NkcO4FB/1iCCQnbeiI1F3xzv3vK5dBCXUCLQgGYS+mUeigK1iKQzvED+QnQ==", "dev": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" + "license": "MIT", + "dependencies": { + "@types/node": "*" } }, - "icss-utils": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-4.1.1.tgz", - "integrity": "sha512-4aFq7wvWyMHKgxsH8QQtGpvbASCf+eM3wPRLI6R+MgAnTCZ6STYsRvttLvRWK0Nfif5piF394St3HeJDaljGPA==", - "requires": { - "postcss": "^7.0.14" - } - }, - "ieee754": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.13.tgz", - "integrity": "sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==", - "dev": true - }, - "iferr": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/iferr/-/iferr-0.1.5.tgz", - "integrity": "sha1-xg7taebY/bazEEofy8ocGS3FtQE=", - "dev": true - }, - "ignore": { - "version": "5.1.4", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.4.tgz", - "integrity": "sha512-MzbUSahkTW1u7JpKKjY7LCARd1fU5W2rLdxlM4kdkayuCwZImjkpluF9CM1aLewYJguPDqewLam18Y6AU69A8A==", - "dev": true - }, - "import-cwd": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/import-cwd/-/import-cwd-2.1.0.tgz", - "integrity": "sha1-qmzzbnInYShcs3HsZRn1PiQ1sKk=", + "node_modules/@types/eslint": { + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-9.6.1.tgz", + "integrity": "sha512-FXx2pKgId/WyYo2jXw63kk7/+TY7u7AziEJxJAnSFzHlqTAS3Ync6SvgYAN/k4/PQpnnVuzoMuVnByKK2qp0ag==", "dev": true, - "requires": { - "import-from": "^2.1.0" + "license": "MIT", + "dependencies": { + "@types/estree": "*", + "@types/json-schema": "*" } }, - "import-fresh": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.2.1.tgz", - "integrity": "sha512-6e1q1cnWP2RXD9/keSkxHScg508CdXqXWgWBaETNhyuBFz+kUZlKboh+ISK+bU++DmbHimVBrOz/zzPe0sZ3sQ==", + "node_modules/@types/eslint-scope": { + "version": "3.7.7", + "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.7.tgz", + "integrity": "sha512-MzMFlSLBqNF2gcHWO0G1vP/YQyfvrxZ0bF+u7mzUdZ1/xK4A4sru+nraZz5i3iEIk1l1uyicaDVTB4QbbEkAYg==", "dev": true, - "requires": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - }, + "license": "MIT", "dependencies": { - "resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "dev": true - } + "@types/eslint": "*", + "@types/estree": "*" } }, - "import-from": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/import-from/-/import-from-2.1.0.tgz", - "integrity": "sha1-M1238qev/VOqpHHUuAId7ja387E=", + "node_modules/@types/estree": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.8.tgz", + "integrity": "sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==", "dev": true, - "requires": { - "resolve-from": "^3.0.0" - }, + "license": "MIT" + }, + "node_modules/@types/istanbul-lib-coverage": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz", + "integrity": "sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/istanbul-lib-report": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.3.tgz", + "integrity": "sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA==", + "dev": true, + "license": "MIT", "dependencies": { - "resolve-from": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", - "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=", - "dev": true - } + "@types/istanbul-lib-coverage": "*" } }, - "import-local": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.0.2.tgz", - "integrity": "sha512-vjL3+w0oulAVZ0hBHnxa/Nm5TAurf9YLQJDhqRZyqb+VKGOB6LU8t9H1Nr5CIo16vh9XfJTOoHwU0B71S557gA==", + "node_modules/@types/istanbul-reports": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.4.tgz", + "integrity": "sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ==", "dev": true, - "requires": { - "pkg-dir": "^4.2.0", - "resolve-cwd": "^3.0.0" - }, + "license": "MIT", "dependencies": { - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "requires": { - "p-locate": "^4.1.0" - } - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "requires": { - "p-limit": "^2.2.0" - } - }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - }, - "pkg-dir": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", - "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", - "dev": true, - "requires": { - "find-up": "^4.0.0" - } - } + "@types/istanbul-lib-report": "*" } }, - "imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", - "dev": true + "node_modules/@types/jsdom": { + "version": "21.1.7", + "resolved": "https://registry.npmjs.org/@types/jsdom/-/jsdom-21.1.7.tgz", + "integrity": "sha512-yOriVnggzrnQ3a9OKOCxaVuSug3w3/SbOj5i7VwXWZEyUNl3bLF9V3MfxGbZKuwqJOQyRfqXyROBB1CoZLFWzA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/node": "*", + "@types/tough-cookie": "*", + "parse5": "^7.0.0" + } }, - "indent-string": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-3.2.0.tgz", - "integrity": "sha1-Sl/W0nzDMvN+VBmlBNu4NxBckok=", - "dev": true + "node_modules/@types/json-schema": { + "version": "7.0.15", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", + "dev": true, + "license": "MIT" }, - "indexes-of": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/indexes-of/-/indexes-of-1.0.1.tgz", - "integrity": "sha1-8w9xbI4r00bHtn0985FVZqfAVgc=" + "node_modules/@types/json5": { + "version": "0.0.29", + "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", + "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==", + "dev": true, + "license": "MIT" }, - "infer-owner": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz", - "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==", - "dev": true + "node_modules/@types/minimist": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag==", + "dev": true, + "license": "MIT" }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "node_modules/@types/node": { + "version": "24.0.1", + "resolved": "https://registry.npmjs.org/@types/node/-/node-24.0.1.tgz", + "integrity": "sha512-MX4Zioh39chHlDJbKmEgydJDS3tspMP/lnQC67G3SWsTnb9NeYVWOjkxpOSy4oMfPs4StcWHwBrvUb4ybfnuaw==", "dev": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" + "license": "MIT", + "dependencies": { + "undici-types": "~7.8.0" } }, - "inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true + "node_modules/@types/normalize-package-data": { + "version": "2.4.4", + "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.4.tgz", + "integrity": "sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/stack-utils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.3.tgz", + "integrity": "sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==", + "dev": true, + "license": "MIT" }, - "ini": { + "node_modules/@types/tough-cookie": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/@types/tough-cookie/-/tough-cookie-4.0.5.tgz", + "integrity": "sha512-/Ad8+nIOV7Rl++6f1BdKxFSMgmoqEoYbHRpPcx3JEfv8VRsQe9Z4mCXeJBzxs7mbHY/XOZZuXlRNfhpVPbs6ZA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/triple-beam": { "version": "1.3.5", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", - "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==", - "dev": true + "resolved": "https://registry.npmjs.org/@types/triple-beam/-/triple-beam-1.3.5.tgz", + "integrity": "sha512-6WaYesThRMCl19iryMYP7/x2OVgCtbIVflDGFpWnb9irXI3UjYE4AzmYuiUKY1AJstGijoY+MgUszMgRxIYTYw==", + "dev": true, + "license": "MIT" }, - "inquirer": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-1.2.3.tgz", - "integrity": "sha1-TexvMvN+97sLLtPx0aXD9UUHSRg=", - "dev": true, - "requires": { - "ansi-escapes": "^1.1.0", - "chalk": "^1.0.0", - "cli-cursor": "^1.0.1", - "cli-width": "^2.0.0", - "external-editor": "^1.1.0", - "figures": "^1.3.5", - "lodash": "^4.3.0", - "mute-stream": "0.0.6", - "pinkie-promise": "^2.0.0", - "run-async": "^2.2.0", - "rx": "^4.1.0", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.0", - "through": "^2.3.6" - }, - "dependencies": { - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true - }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "dev": true, - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - } - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "dev": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "dev": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true - } + "node_modules/@types/yargs": { + "version": "17.0.33", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.33.tgz", + "integrity": "sha512-WpxBCKWPLr4xSsHgz511rFJAM+wS28w2zEO1QDNY5zM/S8ok70NNfztH0xwhqKyaK0OHCbN98LDAZuy1ctxDkA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/yargs-parser": "*" } }, - "invariant": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", - "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", + "node_modules/@types/yargs-parser": { + "version": "21.0.3", + "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.3.tgz", + "integrity": "sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==", "dev": true, - "requires": { - "loose-envify": "^1.0.0" - } + "license": "MIT" }, - "ip-regex": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/ip-regex/-/ip-regex-2.1.0.tgz", - "integrity": "sha1-+ni/XS5pE8kRzp+BnuUUa7bYROk=", - "dev": true - }, - "is-accessor-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", - "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } + "node_modules/@ungap/structured-clone": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.3.0.tgz", + "integrity": "sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g==", + "dev": true, + "license": "ISC" }, - "is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", - "dev": true + "node_modules/@unrs/resolver-binding-android-arm-eabi": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-android-arm-eabi/-/resolver-binding-android-arm-eabi-1.9.0.tgz", + "integrity": "sha512-h1T2c2Di49ekF2TE8ZCoJkb+jwETKUIPDJ/nO3tJBKlLFPu+fyd93f0rGP/BvArKx2k2HlRM4kqkNarj3dvZlg==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ] }, - "is-binary-path": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", - "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", + "node_modules/@unrs/resolver-binding-android-arm64": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-android-arm64/-/resolver-binding-android-arm64-1.9.0.tgz", + "integrity": "sha512-sG1NHtgXtX8owEkJ11yn34vt0Xqzi3k9TJ8zppDmyG8GZV4kVWw44FHwKwHeEFl07uKPeC4ZoyuQaGh5ruJYPA==", + "cpu": [ + "arm64" + ], "dev": true, - "requires": { - "binary-extensions": "^1.0.0" - } + "license": "MIT", + "optional": true, + "os": [ + "android" + ] }, - "is-buffer": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", - "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", - "dev": true + "node_modules/@unrs/resolver-binding-darwin-arm64": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-darwin-arm64/-/resolver-binding-darwin-arm64-1.9.0.tgz", + "integrity": "sha512-nJ9z47kfFnCxN1z/oYZS7HSNsFh43y2asePzTEZpEvK7kGyuShSl3RRXnm/1QaqFL+iP+BjMwuB+DYUymOkA5A==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] }, - "is-callable": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.5.tgz", - "integrity": "sha512-ESKv5sMCJB2jnHTWZ3O5itG+O128Hsus4K4Qh1h2/cgn2vbgnLSVqfV46AeJA9D5EeeLa9w81KUXMtn34zhX+Q==", - "dev": true + "node_modules/@unrs/resolver-binding-darwin-x64": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-darwin-x64/-/resolver-binding-darwin-x64-1.9.0.tgz", + "integrity": "sha512-TK+UA1TTa0qS53rjWn7cVlEKVGz2B6JYe0C++TdQjvWYIyx83ruwh0wd4LRxYBM5HeuAzXcylA9BH2trARXJTw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] }, - "is-ci": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", - "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==", + "node_modules/@unrs/resolver-binding-freebsd-x64": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-freebsd-x64/-/resolver-binding-freebsd-x64-1.9.0.tgz", + "integrity": "sha512-6uZwzMRFcD7CcCd0vz3Hp+9qIL2jseE/bx3ZjaLwn8t714nYGwiE84WpaMCYjU+IQET8Vu/+BNAGtYD7BG/0yA==", + "cpu": [ + "x64" + ], "dev": true, - "requires": { - "ci-info": "^2.0.0" - } + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ] }, - "is-data-descriptor": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", - "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "node_modules/@unrs/resolver-binding-linux-arm-gnueabihf": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm-gnueabihf/-/resolver-binding-linux-arm-gnueabihf-1.9.0.tgz", + "integrity": "sha512-bPUBksQfrgcfv2+mm+AZinaKq8LCFvt5PThYqRotqSuuZK1TVKkhbVMS/jvSRfYl7jr3AoZLYbDkItxgqMKRkg==", + "cpu": [ + "arm" + ], "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] }, - "is-date-object": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.2.tgz", - "integrity": "sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==", - "dev": true - }, - "is-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", - "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - }, - "dependencies": { - "kind-of": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", - "dev": true - } - } + "node_modules/@unrs/resolver-binding-linux-arm-musleabihf": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm-musleabihf/-/resolver-binding-linux-arm-musleabihf-1.9.0.tgz", + "integrity": "sha512-uT6E7UBIrTdCsFQ+y0tQd3g5oudmrS/hds5pbU3h4s2t/1vsGWbbSKhBSCD9mcqaqkBwoqlECpUrRJCmldl8PA==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] }, - "is-directory": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/is-directory/-/is-directory-0.3.1.tgz", - "integrity": "sha1-YTObbyR1/Hcv2cnYP1yFddwVSuE=", - "dev": true + "node_modules/@unrs/resolver-binding-linux-arm64-gnu": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm64-gnu/-/resolver-binding-linux-arm64-gnu-1.9.0.tgz", + "integrity": "sha512-vdqBh911wc5awE2bX2zx3eflbyv8U9xbE/jVKAm425eRoOVv/VseGZsqi3A3SykckSpF4wSROkbQPvbQFn8EsA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] }, - "is-extendable": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", - "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", - "dev": true + "node_modules/@unrs/resolver-binding-linux-arm64-musl": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm64-musl/-/resolver-binding-linux-arm64-musl-1.9.0.tgz", + "integrity": "sha512-/8JFZ/SnuDr1lLEVsxsuVwrsGquTvT51RZGvyDB/dOK3oYK2UqeXzgeyq6Otp8FZXQcEYqJwxb9v+gtdXn03eQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] }, - "is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", - "dev": true + "node_modules/@unrs/resolver-binding-linux-ppc64-gnu": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-ppc64-gnu/-/resolver-binding-linux-ppc64-gnu-1.9.0.tgz", + "integrity": "sha512-FkJjybtrl+rajTw4loI3L6YqSOpeZfDls4SstL/5lsP2bka9TiHUjgMBjygeZEis1oC8LfJTS8FSgpKPaQx2tQ==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] }, - "is-finite": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.1.0.tgz", - "integrity": "sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w==", - "dev": true + "node_modules/@unrs/resolver-binding-linux-riscv64-gnu": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-riscv64-gnu/-/resolver-binding-linux-riscv64-gnu-1.9.0.tgz", + "integrity": "sha512-w/NZfHNeDusbqSZ8r/hp8iL4S39h4+vQMc9/vvzuIKMWKppyUGKm3IST0Qv0aOZ1rzIbl9SrDeIqK86ZpUK37w==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true + "node_modules/@unrs/resolver-binding-linux-riscv64-musl": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-riscv64-musl/-/resolver-binding-linux-riscv64-musl-1.9.0.tgz", + "integrity": "sha512-bEPBosut8/8KQbUixPry8zg/fOzVOWyvwzOfz0C0Rw6dp+wIBseyiHKjkcSyZKv/98edrbMknBaMNJfA/UEdqw==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] }, - "is-generator-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", - "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==", - "dev": true + "node_modules/@unrs/resolver-binding-linux-s390x-gnu": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-s390x-gnu/-/resolver-binding-linux-s390x-gnu-1.9.0.tgz", + "integrity": "sha512-LDtMT7moE3gK753gG4pc31AAqGUC86j3AplaFusc717EUGF9ZFJ356sdQzzZzkBk1XzMdxFyZ4f/i35NKM/lFA==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] }, - "is-glob": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", - "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", + "node_modules/@unrs/resolver-binding-linux-x64-gnu": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-x64-gnu/-/resolver-binding-linux-x64-gnu-1.9.0.tgz", + "integrity": "sha512-WmFd5KINHIXj8o1mPaT8QRjA9HgSXhN1gl9Da4IZihARihEnOylu4co7i/yeaIpcfsI6sYs33cNZKyHYDh0lrA==", + "cpu": [ + "x64" + ], "dev": true, - "requires": { - "is-extglob": "^2.1.1" - } + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] }, - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "node_modules/@unrs/resolver-binding-linux-x64-musl": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-x64-musl/-/resolver-binding-linux-x64-musl-1.9.0.tgz", + "integrity": "sha512-CYuXbANW+WgzVRIl8/QvZmDaZxrqvOldOwlbUjIM4pQ46FJ0W5cinJ/Ghwa/Ng1ZPMJMk1VFdsD/XwmCGIXBWg==", + "cpu": [ + "x64" + ], "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-wasm32-wasi": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-wasm32-wasi/-/resolver-binding-wasm32-wasi-1.9.0.tgz", + "integrity": "sha512-6Rp2WH0OoitMYR57Z6VE8Y6corX8C6QEMWLgOV6qXiJIeZ1F9WGXY/yQ8yDC4iTraotyLOeJ2Asea0urWj2fKQ==", + "cpu": [ + "wasm32" + ], + "dev": true, + "license": "MIT", + "optional": true, "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } + "@napi-rs/wasm-runtime": "^0.2.11" + }, + "engines": { + "node": ">=14.0.0" } }, - "is-obj": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", - "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=", - "dev": true + "node_modules/@unrs/resolver-binding-win32-arm64-msvc": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-win32-arm64-msvc/-/resolver-binding-win32-arm64-msvc-1.9.0.tgz", + "integrity": "sha512-rknkrTRuvujprrbPmGeHi8wYWxmNVlBoNW8+4XF2hXUnASOjmuC9FNF1tGbDiRQWn264q9U/oGtixyO3BT8adQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] }, - "is-observable": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-observable/-/is-observable-1.1.0.tgz", - "integrity": "sha512-NqCa4Sa2d+u7BWc6CukaObG3Fh+CU9bvixbpcXYhy2VvYS7vVGIdAgnIS5Ks3A/cqk4rebLJ9s8zBstT2aKnIA==", + "node_modules/@unrs/resolver-binding-win32-ia32-msvc": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-win32-ia32-msvc/-/resolver-binding-win32-ia32-msvc-1.9.0.tgz", + "integrity": "sha512-Ceymm+iBl+bgAICtgiHyMLz6hjxmLJKqBim8tDzpX61wpZOx2bPK6Gjuor7I2RiUynVjvvkoRIkrPyMwzBzF3A==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@unrs/resolver-binding-win32-x64-msvc": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-win32-x64-msvc/-/resolver-binding-win32-x64-msvc-1.9.0.tgz", + "integrity": "sha512-k59o9ZyeyS0hAlcaKFezYSH2agQeRFEB7KoQLXl3Nb3rgkqT1NY9Vwy+SqODiLmYnEjxWJVRE/yq2jFVqdIxZw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@webassemblyjs/ast": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.14.1.tgz", + "integrity": "sha512-nuBEDgQfm1ccRp/8bCQrx1frohyufl4JlbMMZ4P1wpeOfDhF6FQkxZJ1b/e+PLwr6X1Nhw6OLme5usuBWYBvuQ==", "dev": true, - "requires": { - "symbol-observable": "^1.1.0" + "license": "MIT", + "dependencies": { + "@webassemblyjs/helper-numbers": "1.13.2", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2" } }, - "is-path-cwd": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz", - "integrity": "sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==", - "dev": true + "node_modules/@webassemblyjs/floating-point-hex-parser": { + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.13.2.tgz", + "integrity": "sha512-6oXyTOzbKxGH4steLbLNOu71Oj+C8Lg34n6CqRvqfS2O71BxY6ByfMDRhBytzknj9yGUPVJ1qIKhRlAwO1AovA==", + "dev": true, + "license": "MIT" }, - "is-path-inside": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.2.tgz", - "integrity": "sha512-/2UGPSgmtqwo1ktx8NDHjuPwZWmHhO+gj0f93EkhLB5RgW9RZevWYYlIkS6zePc6U2WpOdQYIwHe9YC4DWEBVg==", - "dev": true + "node_modules/@webassemblyjs/helper-api-error": { + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.13.2.tgz", + "integrity": "sha512-U56GMYxy4ZQCbDZd6JuvvNV/WFildOjsaWD3Tzzvmw/mas3cXzRJPMjP83JqEsgSbyrmaGjBfDtV7KDXV9UzFQ==", + "dev": true, + "license": "MIT" }, - "is-plain-obj": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", - "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=", - "dev": true + "node_modules/@webassemblyjs/helper-buffer": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.14.1.tgz", + "integrity": "sha512-jyH7wtcHiKssDtFPRB+iQdxlDf96m0E39yb0k5uJVhFGleZFoNw1c4aeIcVUPPbXUVJ94wwnMOAqUHyzoEPVMA==", + "dev": true, + "license": "MIT" }, - "is-plain-object": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", - "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "node_modules/@webassemblyjs/helper-numbers": { + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.13.2.tgz", + "integrity": "sha512-FE8aCmS5Q6eQYcV3gI35O4J789wlQA+7JrqTTpJqn5emA4U2hvwJmvFRC0HODS+3Ye6WioDklgd6scJ3+PLnEA==", "dev": true, - "requires": { - "isobject": "^3.0.1" + "license": "MIT", + "dependencies": { + "@webassemblyjs/floating-point-hex-parser": "1.13.2", + "@webassemblyjs/helper-api-error": "1.13.2", + "@xtuc/long": "4.2.2" } }, - "is-promise": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz", - "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=", - "dev": true + "node_modules/@webassemblyjs/helper-wasm-bytecode": { + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.13.2.tgz", + "integrity": "sha512-3QbLKy93F0EAIXLh0ogEVR6rOubA9AoZ+WRYhNbFyuB70j3dRdwH9g+qXhLAO0kiYGlg3TxDV+I4rQTr/YNXkA==", + "dev": true, + "license": "MIT" }, - "is-regex": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.5.tgz", - "integrity": "sha512-vlKW17SNq44owv5AQR3Cq0bQPEb8+kF3UKZ2fiZNOWtztYE5i0CzCZxFDwO58qAOWtxdBRVO/V5Qin1wjCqFYQ==", + "node_modules/@webassemblyjs/helper-wasm-section": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.14.1.tgz", + "integrity": "sha512-ds5mXEqTJ6oxRoqjhWDU83OgzAYjwsCV8Lo/N+oRsNDmx/ZDpqalmrtgOMkHwxsG0iI//3BwWAErYRHtgn0dZw==", "dev": true, - "requires": { - "has": "^1.0.3" + "license": "MIT", + "dependencies": { + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-buffer": "1.14.1", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2", + "@webassemblyjs/wasm-gen": "1.14.1" } }, - "is-regexp": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-regexp/-/is-regexp-1.0.0.tgz", - "integrity": "sha1-/S2INUXEa6xaYz57mgnof6LLUGk=", - "dev": true + "node_modules/@webassemblyjs/ieee754": { + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.13.2.tgz", + "integrity": "sha512-4LtOzh58S/5lX4ITKxnAK2USuNEvpdVV9AlgGQb8rJDHaLeHciwG4zlGr0j/SNWlr7x3vO1lDEsuePvtcDNCkw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@xtuc/ieee754": "^1.2.0" + } }, - "is-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", - "dev": true + "node_modules/@webassemblyjs/leb128": { + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.13.2.tgz", + "integrity": "sha512-Lde1oNoIdzVzdkNEAWZ1dZ5orIbff80YPdHx20mrHwHrVNNTjNr8E3xz9BdpcGqRQbAEa+fkrCb+fRFTl/6sQw==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@xtuc/long": "4.2.2" + } }, - "is-string": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.5.tgz", - "integrity": "sha512-buY6VNRjhQMiF1qWDouloZlQbRhDPCebwxSjxMjxgemYT46YMd2NR0/H+fBhEfWX4A/w9TBJ+ol+okqJKFE6vQ==", - "dev": true + "node_modules/@webassemblyjs/utf8": { + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.13.2.tgz", + "integrity": "sha512-3NQWGjKTASY1xV5m7Hr0iPeXD9+RDobLll3T9d2AO+g3my8xy5peVyjSag4I50mR1bBSN/Ct12lo+R9tJk0NZQ==", + "dev": true, + "license": "MIT" }, - "is-symbol": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.3.tgz", - "integrity": "sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==", + "node_modules/@webassemblyjs/wasm-edit": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.14.1.tgz", + "integrity": "sha512-RNJUIQH/J8iA/1NzlE4N7KtyZNHi3w7at7hDjvRNm5rcUXa00z1vRz3glZoULfJ5mpvYhLybmVcwcjGrC1pRrQ==", "dev": true, - "requires": { - "has-symbols": "^1.0.1" + "license": "MIT", + "dependencies": { + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-buffer": "1.14.1", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2", + "@webassemblyjs/helper-wasm-section": "1.14.1", + "@webassemblyjs/wasm-gen": "1.14.1", + "@webassemblyjs/wasm-opt": "1.14.1", + "@webassemblyjs/wasm-parser": "1.14.1", + "@webassemblyjs/wast-printer": "1.14.1" } }, - "is-text-path": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-text-path/-/is-text-path-1.0.1.tgz", - "integrity": "sha1-Thqg+1G/vLPpJogAE5cgLBd1tm4=", + "node_modules/@webassemblyjs/wasm-gen": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.14.1.tgz", + "integrity": "sha512-AmomSIjP8ZbfGQhumkNvgC33AY7qtMCXnN6bL2u2Js4gVCg8fp735aEiMSBbDR7UQIj90n4wKAFUSEd0QN2Ukg==", "dev": true, - "requires": { - "text-extensions": "^1.0.0" + "license": "MIT", + "dependencies": { + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2", + "@webassemblyjs/ieee754": "1.13.2", + "@webassemblyjs/leb128": "1.13.2", + "@webassemblyjs/utf8": "1.13.2" } }, - "is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", - "dev": true - }, - "is-utf8": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", - "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=", - "dev": true - }, - "is-windows": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", - "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", - "dev": true + "node_modules/@webassemblyjs/wasm-opt": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.14.1.tgz", + "integrity": "sha512-PTcKLUNvBqnY2U6E5bdOQcSM+oVP/PmrDY9NzowJjislEjwP/C4an2303MCVS2Mg9d3AJpIGdUFIQQWbPds0Sw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-buffer": "1.14.1", + "@webassemblyjs/wasm-gen": "1.14.1", + "@webassemblyjs/wasm-parser": "1.14.1" + } }, - "is-wsl": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.1.1.tgz", - "integrity": "sha512-umZHcSrwlDHo2TGMXv0DZ8dIUGunZ2Iv68YZnrmCiBPkZ4aaOhtv7pXJKeki9k3qJ3RJr0cDyitcl5wEH3AYog==", + "node_modules/@webassemblyjs/wasm-parser": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.14.1.tgz", + "integrity": "sha512-JLBl+KZ0R5qB7mCnud/yyX08jWFw5MsoalJ1pQ4EdFlgj9VdXKGuENGsiCIjegI1W7p91rUlcB/LB5yRJKNTcQ==", "dev": true, - "optional": true + "license": "MIT", + "dependencies": { + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-api-error": "1.13.2", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2", + "@webassemblyjs/ieee754": "1.13.2", + "@webassemblyjs/leb128": "1.13.2", + "@webassemblyjs/utf8": "1.13.2" + } }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true + "node_modules/@webassemblyjs/wast-printer": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.14.1.tgz", + "integrity": "sha512-kPSSXE6De1XOR820C90RIo2ogvZG+c3KiHzqUoO/F34Y2shGzesfqv7o57xrxovZJH/MetF5UjroJ/R/3isoiw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@webassemblyjs/ast": "1.14.1", + "@xtuc/long": "4.2.2" + } }, - "isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", - "dev": true + "node_modules/@webpack-contrib/eslint-config-webpack": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@webpack-contrib/eslint-config-webpack/-/eslint-config-webpack-3.0.0.tgz", + "integrity": "sha512-3f0dwuTZ1JZpnoGQ6tAKBWluZKZZBXr1ADoaOAbPiW0OvSN7o0wXFLGyfw6J+fW756xIkZLZ8JDYP5zInIRvBA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 6.9.0 || >= 8.9.0" + }, + "peerDependencies": { + "eslint": ">= 5.0.0" + } }, - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", - "dev": true + "node_modules/@xtuc/ieee754": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", + "dev": true, + "license": "BSD-3-Clause" }, - "isstream": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", - "dev": true + "node_modules/@xtuc/long": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", + "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", + "dev": true, + "license": "Apache-2.0" }, - "istanbul-lib-coverage": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz", - "integrity": "sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg==", - "dev": true + "node_modules/acorn": { + "version": "8.11.3", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz", + "integrity": "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==", + "dev": true, + "license": "MIT", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/add-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/add-stream/-/add-stream-1.0.0.tgz", + "integrity": "sha512-qQLMr+8o0WC4FZGQTcJiKBVC59JylcPSrTtk6usvmIDFUOCKegapy1VHQwRbFMOFyb/inzUVqHs+eMYKDM1YeQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/agent-base": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.3.tgz", + "integrity": "sha512-jRR5wdylq8CkOe6hei19GGZnxM6rBGwFl3Bg0YItGDimvjGtAvdZk4Pu6Cl4u4Igsws4a1fd1Vq3ezrhn4KmFw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 14" + } }, - "istanbul-lib-instrument": { + "node_modules/aggregate-error": { "version": "4.0.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.1.tgz", - "integrity": "sha512-imIchxnodll7pvQBYOqUu88EufLCU56LMeFPZZM/fJZ1irYcYdqroaV+ACK1Ila8ls09iEYArp+nqyC6lW1Vfg==", - "dev": true, - "requires": { - "@babel/core": "^7.7.5", - "@babel/parser": "^7.7.5", - "@babel/template": "^7.7.4", - "@babel/traverse": "^7.7.4", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-coverage": "^3.0.0", - "semver": "^6.3.0" + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-4.0.1.tgz", + "integrity": "sha512-0poP0T7el6Vq3rstR8Mn4V/IQrpBLO6POkUSrN7RhyY+GF/InCFShQzsQ39T25gkHhLgSLByyAz+Kjb+c2L98w==", + "dev": true, + "license": "MIT", + "dependencies": { + "clean-stack": "^4.0.0", + "indent-string": "^5.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "istanbul-lib-report": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", - "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==", + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", "dev": true, - "requires": { - "istanbul-lib-coverage": "^3.0.0", - "make-dir": "^3.0.0", - "supports-color": "^7.1.0" + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ajv-formats": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", + "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", + "dev": true, + "license": "MIT", "dependencies": { - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "dev": true, - "requires": { - "semver": "^6.0.0" - } - }, - "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } + "ajv": "^8.0.0" + }, + "peerDependencies": { + "ajv": "^8.0.0" + }, + "peerDependenciesMeta": { + "ajv": { + "optional": true } } }, - "istanbul-lib-source-maps": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.0.tgz", - "integrity": "sha512-c16LpFRkR8vQXyHZ5nLpY35JZtzj1PQY1iZmesUbf1FZHbIupcWfjgOXBY9YHkLEQ6puz1u4Dgj6qmU/DisrZg==", + "node_modules/ajv-formats/node_modules/ajv": { + "version": "8.17.1", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.17.1.tgz", + "integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==", "dev": true, - "requires": { - "debug": "^4.1.1", - "istanbul-lib-coverage": "^3.0.0", - "source-map": "^0.6.1" + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.3", + "fast-uri": "^3.0.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2" }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ajv-formats/node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "dev": true, + "license": "MIT" + }, + "node_modules/ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "ajv": "^6.9.1" + } + }, + "node_modules/ansi-escapes": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "dev": true, + "license": "MIT", "dependencies": { - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - } + "type-fest": "^0.21.3" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "istanbul-reports": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.0.2.tgz", - "integrity": "sha512-9tZvz7AiR3PEDNGiV9vIouQ/EAcqMXFmkcA1CDFTwOB98OZVDL0PH9glHotf5Ugp6GCOTypfzGWI/OqjWNCRUw==", + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", "dev": true, - "requires": { - "html-escaper": "^2.0.0", - "istanbul-lib-report": "^3.0.0" + "license": "MIT", + "engines": { + "node": ">=8" } }, - "jest": { - "version": "25.4.0", - "resolved": "https://registry.npmjs.org/jest/-/jest-25.4.0.tgz", - "integrity": "sha512-XWipOheGB4wai5JfCYXd6vwsWNwM/dirjRoZgAa7H2wd8ODWbli2AiKjqG8AYhyx+8+5FBEdpO92VhGlBydzbw==", + "node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", "dev": true, - "requires": { - "@jest/core": "^25.4.0", - "import-local": "^3.0.2", - "jest-cli": "^25.4.0" + "license": "MIT", + "dependencies": { + "color-convert": "^1.9.0" }, + "engines": { + "node": ">=4" + } + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dev": true, + "license": "ISC", "dependencies": { - "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "requires": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "jest-cli": { - "version": "25.4.0", - "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-25.4.0.tgz", - "integrity": "sha512-usyrj1lzCJZMRN1r3QEdnn8e6E6yCx/QN7+B1sLoA68V7f3WlsxSSQfy0+BAwRiF4Hz2eHauf11GZG3PIfWTXQ==", - "dev": true, - "requires": { - "@jest/core": "^25.4.0", - "@jest/test-result": "^25.4.0", - "@jest/types": "^25.4.0", - "chalk": "^3.0.0", - "exit": "^0.1.2", - "import-local": "^3.0.2", - "is-ci": "^2.0.0", - "jest-config": "^25.4.0", - "jest-util": "^25.4.0", - "jest-validate": "^25.4.0", - "prompts": "^2.0.1", - "realpath-native": "^2.0.0", - "yargs": "^15.3.1" - } - }, - "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" } }, - "jest-changed-files": { - "version": "25.4.0", - "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-25.4.0.tgz", - "integrity": "sha512-VR/rfJsEs4BVMkwOTuStRyS630fidFVekdw/lBaBQjx9KK3VZFOZ2c0fsom2fRp8pMCrCTP6LGna00o/DXGlqA==", + "node_modules/anymatch/node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", "dev": true, - "requires": { - "@jest/types": "^25.4.0", - "execa": "^3.2.0", - "throat": "^5.0.0" + "license": "MIT", + "engines": { + "node": ">=8.6" }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "license": "MIT", "dependencies": { - "cross-spawn": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.2.tgz", - "integrity": "sha512-PD6G8QG3S4FK/XCGFbEQrDqO2AnMMsy0meR7lerlIOHAAbkuavGU/pOqprrlvfTNjvowivTeBsjebAL0NSoMxw==", - "dev": true, - "requires": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - } - }, - "execa": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-3.4.0.tgz", - "integrity": "sha512-r9vdGQk4bmCuK1yKQu1KTwcT2zwfWdbdaXfCtAh+5nU/4fSX+JAb7vZGvI5naJrQlvONrEB20jeruESI69530g==", - "dev": true, - "requires": { - "cross-spawn": "^7.0.0", - "get-stream": "^5.0.0", - "human-signals": "^1.1.1", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.0", - "onetime": "^5.1.0", - "p-finally": "^2.0.0", - "signal-exit": "^3.0.2", - "strip-final-newline": "^2.0.0" - } - }, - "get-stream": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.1.0.tgz", - "integrity": "sha512-EXr1FOzrzTfGeL0gQdeFEvOMm2mzMOglyiOXSTpPC+iAjAKftbr3jpCMWynogwYnM+eSj9sHGc6wjIcDvYiygw==", - "dev": true, - "requires": { - "pump": "^3.0.0" - } - }, - "is-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.0.tgz", - "integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==", - "dev": true - }, - "npm-run-path": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", - "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", - "dev": true, - "requires": { - "path-key": "^3.0.0" - } - }, - "p-finally": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-2.0.1.tgz", - "integrity": "sha512-vpm09aKwq6H9phqRQzecoDpD8TmVyGw70qmWlyq5onxY7tqyTTFVvxMykxQSQKILBSFlbXpypIw2T1Ml7+DDtw==", - "dev": true - }, - "path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true - }, - "shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, - "requires": { - "shebang-regex": "^3.0.0" - } - }, - "shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true - } + "sprintf-js": "~1.0.2" } }, - "jest-config": { - "version": "25.4.0", - "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-25.4.0.tgz", - "integrity": "sha512-egT9aKYxMyMSQV1aqTgam0SkI5/I2P9qrKexN5r2uuM2+68ypnc+zPGmfUxK7p1UhE7dYH9SLBS7yb+TtmT1AA==", - "dev": true, - "requires": { - "@babel/core": "^7.1.0", - "@jest/test-sequencer": "^25.4.0", - "@jest/types": "^25.4.0", - "babel-jest": "^25.4.0", - "chalk": "^3.0.0", - "deepmerge": "^4.2.2", - "glob": "^7.1.1", - "jest-environment-jsdom": "^25.4.0", - "jest-environment-node": "^25.4.0", - "jest-get-type": "^25.2.6", - "jest-jasmine2": "^25.4.0", - "jest-regex-util": "^25.2.6", - "jest-resolve": "^25.4.0", - "jest-util": "^25.4.0", - "jest-validate": "^25.4.0", - "micromatch": "^4.0.2", - "pretty-format": "^25.4.0", - "realpath-native": "^2.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "requires": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - } - }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true - }, - "micromatch": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", - "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", - "dev": true, - "requires": { - "braces": "^3.0.1", - "picomatch": "^2.0.5" - } - }, - "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - }, - "to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "requires": { - "is-number": "^7.0.0" - } - } + "node_modules/array-buffer-byte-length": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.2.tgz", + "integrity": "sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "is-array-buffer": "^3.0.5" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "jest-diff": { - "version": "25.4.0", - "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-25.4.0.tgz", - "integrity": "sha512-kklLbJVXW0y8UKOWOdYhI6TH5MG6QAxrWiBMgQaPIuhj3dNFGirKCd+/xfplBXICQ7fI+3QcqHm9p9lWu1N6ug==", + "node_modules/array-ify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/array-ify/-/array-ify-1.0.0.tgz", + "integrity": "sha512-c5AMf34bKdvPhQ7tBGhqkgKNUzMr4WUs+WDtC2ZUGOUncbxKMTvqxYctiseW3+L4bA8ec+GcZ6/A/FW4m8ukng==", + "dev": true, + "license": "MIT" + }, + "node_modules/array-includes": { + "version": "3.1.9", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.9.tgz", + "integrity": "sha512-FmeCCAenzH0KH381SPT5FZmiA/TmpndpcaShhfgEN9eCVjnFBqq3l1xrI42y8+PPLI6hypzou4GXw00WHmPBLQ==", "dev": true, - "requires": { - "chalk": "^3.0.0", - "diff-sequences": "^25.2.6", - "jest-get-type": "^25.2.6", - "pretty-format": "^25.4.0" + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", + "define-properties": "^1.2.1", + "es-abstract": "^1.24.0", + "es-object-atoms": "^1.1.1", + "get-intrinsic": "^1.3.0", + "is-string": "^1.1.1", + "math-intrinsics": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array-timsort": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/array-timsort/-/array-timsort-1.0.3.tgz", + "integrity": "sha512-/+3GRL7dDAGEfM6TseQk/U+mi18TU2Ms9I3UlLdUMhz2hbvGNTKdj9xniwXfUqgYhHxRx0+8UnKkvlNwVU+cWQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/array.prototype.findlastindex": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.6.tgz", + "integrity": "sha512-F/TKATkzseUExPlfvmwQKGITM3DGTK+vkAsCZoDc5daVygbJBnjEUCbgkAvVFsgfXfX4YIqZ/27G3k3tdXrTxQ==", + "dev": true, + "license": "MIT", "dependencies": { - "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "requires": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", + "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.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "jest-docblock": { - "version": "25.3.0", - "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-25.3.0.tgz", - "integrity": "sha512-aktF0kCar8+zxRHxQZwxMy70stc9R1mOmrLsT5VO3pIT0uzGRSDAXxSlz4NqQWpuLjPpuMhPRl7H+5FRsvIQAg==", + "node_modules/array.prototype.flat": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.3.tgz", + "integrity": "sha512-rwG/ja1neyLqCuGZ5YYrznA62D4mZXg0i1cIskIUKSiqF3Cje9/wXAls9B9s1Wa2fomMsIv8czB8jZcPmxCXFg==", "dev": true, - "requires": { - "detect-newline": "^3.0.0" + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.5", + "es-shim-unscopables": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "jest-each": { - "version": "25.4.0", - "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-25.4.0.tgz", - "integrity": "sha512-lwRIJ8/vQU/6vq3nnSSUw1Y3nz5tkYSFIywGCZpUBd6WcRgpn8NmJoQICojbpZmsJOJNHm0BKdyuJ6Xdx+eDQQ==", + "node_modules/array.prototype.flatmap": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.3.tgz", + "integrity": "sha512-Y7Wt51eKJSyi80hFrJCePGGNo5ktJCslFuboqJsbf57CCPcm5zztluPlc4/aD8sWsKvlwatezpV4U1efk8kpjg==", "dev": true, - "requires": { - "@jest/types": "^25.4.0", - "chalk": "^3.0.0", - "jest-get-type": "^25.2.6", - "jest-util": "^25.4.0", - "pretty-format": "^25.4.0" + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.5", + "es-shim-unscopables": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/arraybuffer.prototype.slice": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.4.tgz", + "integrity": "sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==", + "dev": true, + "license": "MIT", "dependencies": { - "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "requires": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } + "array-buffer-byte-length": "^1.0.1", + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.5", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6", + "is-array-buffer": "^3.0.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "jest-environment-jsdom": { - "version": "25.4.0", - "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-25.4.0.tgz", - "integrity": "sha512-KTitVGMDrn2+pt7aZ8/yUTuS333w3pWt1Mf88vMntw7ZSBNDkRS6/4XLbFpWXYfWfp1FjcjQTOKzbK20oIehWQ==", - "dev": true, - "requires": { - "@jest/environment": "^25.4.0", - "@jest/fake-timers": "^25.4.0", - "@jest/types": "^25.4.0", - "jest-mock": "^25.4.0", - "jest-util": "^25.4.0", - "jsdom": "^15.2.1" - } - }, - "jest-environment-node": { - "version": "25.4.0", - "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-25.4.0.tgz", - "integrity": "sha512-wryZ18vsxEAKFH7Z74zi/y/SyI1j6UkVZ6QsllBuT/bWlahNfQjLNwFsgh/5u7O957dYFoXj4yfma4n4X6kU9A==", - "dev": true, - "requires": { - "@jest/environment": "^25.4.0", - "@jest/fake-timers": "^25.4.0", - "@jest/types": "^25.4.0", - "jest-mock": "^25.4.0", - "jest-util": "^25.4.0", - "semver": "^6.3.0" - } - }, - "jest-get-type": { - "version": "25.2.6", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-25.2.6.tgz", - "integrity": "sha512-DxjtyzOHjObRM+sM1knti6or+eOgcGU4xVSb2HNP1TqO4ahsT+rqZg+nyqHWJSvWgKC5cG3QjGFBqxLghiF/Ig==", - "dev": true - }, - "jest-haste-map": { - "version": "25.4.0", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-25.4.0.tgz", - "integrity": "sha512-5EoCe1gXfGC7jmXbKzqxESrgRcaO3SzWXGCnvp9BcT0CFMyrB1Q6LIsjl9RmvmJGQgW297TCfrdgiy574Rl9HQ==", - "dev": true, - "requires": { - "@jest/types": "^25.4.0", - "anymatch": "^3.0.3", - "fb-watchman": "^2.0.0", - "fsevents": "^2.1.2", - "graceful-fs": "^4.2.3", - "jest-serializer": "^25.2.6", - "jest-util": "^25.4.0", - "jest-worker": "^25.4.0", - "micromatch": "^4.0.2", - "sane": "^4.0.3", - "walker": "^1.0.7", - "which": "^2.0.2" - }, - "dependencies": { - "anymatch": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", - "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", - "dev": true, - "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - } - }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "fsevents": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.3.tgz", - "integrity": "sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ==", - "dev": true, - "optional": true - }, - "is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true - }, - "micromatch": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", - "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", - "dev": true, - "requires": { - "braces": "^3.0.1", - "picomatch": "^2.0.5" - } - }, - "to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "requires": { - "is-number": "^7.0.0" - } - } + "node_modules/arrify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", + "integrity": "sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" } }, - "jest-jasmine2": { - "version": "25.4.0", - "resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-25.4.0.tgz", - "integrity": "sha512-QccxnozujVKYNEhMQ1vREiz859fPN/XklOzfQjm2j9IGytAkUbSwjFRBtQbHaNZ88cItMpw02JnHGsIdfdpwxQ==", + "node_modules/async": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.6.tgz", + "integrity": "sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==", "dev": true, - "requires": { - "@babel/traverse": "^7.1.0", - "@jest/environment": "^25.4.0", - "@jest/source-map": "^25.2.6", - "@jest/test-result": "^25.4.0", - "@jest/types": "^25.4.0", - "chalk": "^3.0.0", - "co": "^4.6.0", - "expect": "^25.4.0", - "is-generator-fn": "^2.0.0", - "jest-each": "^25.4.0", - "jest-matcher-utils": "^25.4.0", - "jest-message-util": "^25.4.0", - "jest-runtime": "^25.4.0", - "jest-snapshot": "^25.4.0", - "jest-util": "^25.4.0", - "pretty-format": "^25.4.0", - "throat": "^5.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "requires": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true + "license": "MIT" + }, + "node_modules/async-function": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/async-function/-/async-function-1.0.0.tgz", + "integrity": "sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/autoprefixer": { + "version": "10.4.21", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.21.tgz", + "integrity": "sha512-O+A6LWV5LDHSJD3LjHYoNi4VLsj/Whi7k6zG12xTYaU4cQ8oxQGckXNX8cRHK5yOZ/ppVHe0ZBXGzSV9jXdVbQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/autoprefixer" }, - "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } + { + "type": "github", + "url": "https://github.com/sponsors/ai" } + ], + "license": "MIT", + "dependencies": { + "browserslist": "^4.24.4", + "caniuse-lite": "^1.0.30001702", + "fraction.js": "^4.3.7", + "normalize-range": "^0.1.2", + "picocolors": "^1.1.1", + "postcss-value-parser": "^4.2.0" + }, + "bin": { + "autoprefixer": "bin/autoprefixer" + }, + "engines": { + "node": "^10 || ^12 || >=14" + }, + "peerDependencies": { + "postcss": "^8.1.0" } }, - "jest-leak-detector": { - "version": "25.4.0", - "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-25.4.0.tgz", - "integrity": "sha512-7Y6Bqfv2xWsB+7w44dvZuLs5SQ//fzhETgOGG7Gq3TTGFdYvAgXGwV8z159RFZ6fXiCPm/szQ90CyfVos9JIFQ==", + "node_modules/available-typed-arrays": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", + "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", "dev": true, - "requires": { - "jest-get-type": "^25.2.6", - "pretty-format": "^25.4.0" + "license": "MIT", + "dependencies": { + "possible-typed-array-names": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "jest-matcher-utils": { - "version": "25.4.0", - "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-25.4.0.tgz", - "integrity": "sha512-yPMdtj7YDgXhnGbc66bowk8AkQ0YwClbbwk3Kzhn5GVDrciiCr27U4NJRbrqXbTdtxjImONITg2LiRIw650k5A==", + "node_modules/babel-jest": { + "version": "30.0.0", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-30.0.0.tgz", + "integrity": "sha512-JQ0DhdFjODbSawDf0026uZuwaqfKkQzk+9mwWkq2XkKFIaMhFVOxlVmbFCOnnC76jATdxrff3IiUAvOAJec6tw==", "dev": true, - "requires": { - "chalk": "^3.0.0", - "jest-diff": "^25.4.0", - "jest-get-type": "^25.2.6", - "pretty-format": "^25.4.0" - }, + "license": "MIT", "dependencies": { - "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "requires": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } + "@jest/transform": "30.0.0", + "@types/babel__core": "^7.20.5", + "babel-plugin-istanbul": "^7.0.0", + "babel-preset-jest": "30.0.0", + "chalk": "^4.1.2", + "graceful-fs": "^4.2.11", + "slash": "^3.0.0" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.11.0" } }, - "jest-message-util": { - "version": "25.4.0", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-25.4.0.tgz", - "integrity": "sha512-LYY9hRcVGgMeMwmdfh9tTjeux1OjZHMusq/E5f3tJN+dAoVVkJtq5ZUEPIcB7bpxDUt2zjUsrwg0EGgPQ+OhXQ==", + "node_modules/babel-jest/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "@jest/types": "^25.4.0", - "@types/stack-utils": "^1.0.1", - "chalk": "^3.0.0", - "micromatch": "^4.0.2", - "slash": "^3.0.0", - "stack-utils": "^1.0.1" - }, - "dependencies": { - "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "requires": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - } - }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true - }, - "micromatch": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", - "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", - "dev": true, - "requires": { - "braces": "^3.0.1", - "picomatch": "^2.0.5" - } - }, - "slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true - }, - "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - }, - "to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "requires": { - "is-number": "^7.0.0" - } - } + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "jest-mock": { - "version": "25.4.0", - "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-25.4.0.tgz", - "integrity": "sha512-MdazSfcYAUjJjuVTTnusLPzE0pE4VXpOUzWdj8sbM+q6abUjm3bATVPXFqTXrxSieR8ocpvQ9v/QaQCftioQFg==", + "node_modules/babel-jest/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, - "requires": { - "@jest/types": "^25.4.0" + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "jest-pnp-resolver": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.1.tgz", - "integrity": "sha512-pgFw2tm54fzgYvc/OHrnysABEObZCUNFnhjoRjaVOCN8NYc032/gVjPaHD4Aq6ApkSieWtfKAFQtmDKAmhupnQ==", - "dev": true - }, - "jest-regex-util": { - "version": "25.2.6", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-25.2.6.tgz", - "integrity": "sha512-KQqf7a0NrtCkYmZZzodPftn7fL1cq3GQAFVMn5Hg8uKx/fIenLEobNanUxb7abQ1sjADHBseG/2FGpsv/wr+Qw==", - "dev": true - }, - "jest-resolve": { - "version": "25.4.0", - "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-25.4.0.tgz", - "integrity": "sha512-wOsKqVDFWUiv8BtLMCC6uAJ/pHZkfFgoBTgPtmYlsprAjkxrr2U++ZnB3l5ykBMd2O24lXvf30SMAjJIW6k2aA==", - "dev": true, - "requires": { - "@jest/types": "^25.4.0", - "browser-resolve": "^1.11.3", - "chalk": "^3.0.0", - "jest-pnp-resolver": "^1.2.1", - "read-pkg-up": "^7.0.1", - "realpath-native": "^2.0.0", - "resolve": "^1.15.1", - "slash": "^3.0.0" - }, + "node_modules/babel-jest/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", "dependencies": { - "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "requires": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "requires": { - "p-locate": "^4.1.0" - } - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "requires": { - "p-limit": "^2.2.0" - } - }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true - }, - "parse-json": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.0.0.tgz", - "integrity": "sha512-OOY5b7PAEFV0E2Fir1KOkxchnZNCdowAJgQ5NuxjpBKTRP3pQhwkrkxqQjeoKJ+fO7bCpmIZaogI4eZGDMEGOw==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1", - "lines-and-columns": "^1.1.6" - } - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - }, - "read-pkg": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", - "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", - "dev": true, - "requires": { - "@types/normalize-package-data": "^2.4.0", - "normalize-package-data": "^2.5.0", - "parse-json": "^5.0.0", - "type-fest": "^0.6.0" - }, - "dependencies": { - "type-fest": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", - "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", - "dev": true - } - } - }, - "read-pkg-up": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", - "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", - "dev": true, - "requires": { - "find-up": "^4.1.0", - "read-pkg": "^5.2.0", - "type-fest": "^0.8.1" - } - }, - "slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true - }, - "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" } }, - "jest-resolve-dependencies": { - "version": "25.4.0", - "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-25.4.0.tgz", - "integrity": "sha512-A0eoZXx6kLiuG1Ui7wITQPl04HwjLErKIJTt8GR3c7UoDAtzW84JtCrgrJ6Tkw6c6MwHEyAaLk7dEPml5pf48A==", - "dev": true, - "requires": { - "@jest/types": "^25.4.0", - "jest-regex-util": "^25.2.6", - "jest-snapshot": "^25.4.0" - } - }, - "jest-runner": { - "version": "25.4.0", - "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-25.4.0.tgz", - "integrity": "sha512-wWQSbVgj2e/1chFdMRKZdvlmA6p1IPujhpLT7TKNtCSl1B0PGBGvJjCaiBal/twaU2yfk8VKezHWexM8IliBfA==", - "dev": true, - "requires": { - "@jest/console": "^25.4.0", - "@jest/environment": "^25.4.0", - "@jest/test-result": "^25.4.0", - "@jest/types": "^25.4.0", - "chalk": "^3.0.0", - "exit": "^0.1.2", - "graceful-fs": "^4.2.3", - "jest-config": "^25.4.0", - "jest-docblock": "^25.3.0", - "jest-haste-map": "^25.4.0", - "jest-jasmine2": "^25.4.0", - "jest-leak-detector": "^25.4.0", - "jest-message-util": "^25.4.0", - "jest-resolve": "^25.4.0", - "jest-runtime": "^25.4.0", - "jest-util": "^25.4.0", - "jest-worker": "^25.4.0", - "source-map-support": "^0.5.6", - "throat": "^5.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "requires": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } + "node_modules/babel-jest/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/babel-jest/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" } }, - "jest-runtime": { - "version": "25.4.0", - "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-25.4.0.tgz", - "integrity": "sha512-lgNJlCDULtXu9FumnwCyWlOub8iytijwsPNa30BKrSNtgoT6NUMXOPrZvsH06U6v0wgD/Igwz13nKA2wEKU2VA==", - "dev": true, - "requires": { - "@jest/console": "^25.4.0", - "@jest/environment": "^25.4.0", - "@jest/source-map": "^25.2.6", - "@jest/test-result": "^25.4.0", - "@jest/transform": "^25.4.0", - "@jest/types": "^25.4.0", - "@types/yargs": "^15.0.0", - "chalk": "^3.0.0", - "collect-v8-coverage": "^1.0.0", - "exit": "^0.1.2", - "glob": "^7.1.3", - "graceful-fs": "^4.2.3", - "jest-config": "^25.4.0", - "jest-haste-map": "^25.4.0", - "jest-message-util": "^25.4.0", - "jest-mock": "^25.4.0", - "jest-regex-util": "^25.2.6", - "jest-resolve": "^25.4.0", - "jest-snapshot": "^25.4.0", - "jest-util": "^25.4.0", - "jest-validate": "^25.4.0", - "realpath-native": "^2.0.0", - "slash": "^3.0.0", - "strip-bom": "^4.0.0", - "yargs": "^15.3.1" - }, - "dependencies": { - "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "requires": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true - }, - "strip-bom": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", - "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", - "dev": true - }, - "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } + "node_modules/babel-jest/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "jest-serializer": { - "version": "25.2.6", - "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-25.2.6.tgz", - "integrity": "sha512-RMVCfZsezQS2Ww4kB5HJTMaMJ0asmC0BHlnobQC6yEtxiFKIxohFA4QSXSabKwSggaNkqxn6Z2VwdFCjhUWuiQ==", - "dev": true - }, - "jest-snapshot": { - "version": "25.4.0", - "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-25.4.0.tgz", - "integrity": "sha512-J4CJ0X2SaGheYRZdLz9CRHn9jUknVmlks4UBeu270hPAvdsauFXOhx9SQP2JtRzhnR3cvro/9N9KP83/uvFfRg==", - "dev": true, - "requires": { - "@babel/types": "^7.0.0", - "@jest/types": "^25.4.0", - "@types/prettier": "^1.19.0", - "chalk": "^3.0.0", - "expect": "^25.4.0", - "jest-diff": "^25.4.0", - "jest-get-type": "^25.2.6", - "jest-matcher-utils": "^25.4.0", - "jest-message-util": "^25.4.0", - "jest-resolve": "^25.4.0", - "make-dir": "^3.0.0", - "natural-compare": "^1.4.0", - "pretty-format": "^25.4.0", - "semver": "^6.3.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "requires": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "dev": true, - "requires": { - "semver": "^6.0.0" - } - }, - "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } + "node_modules/babel-plugin-istanbul": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-7.0.0.tgz", + "integrity": "sha512-C5OzENSx/A+gt7t4VH1I2XsflxyPUmXRFPKBxt33xncdOmq7oROVM3bZv9Ysjjkv8OJYDMa+tKuKMvqU/H3xdw==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@istanbuljs/load-nyc-config": "^1.0.0", + "@istanbuljs/schema": "^0.1.3", + "istanbul-lib-instrument": "^6.0.2", + "test-exclude": "^6.0.0" + }, + "engines": { + "node": ">=12" } }, - "jest-util": { - "version": "25.4.0", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-25.4.0.tgz", - "integrity": "sha512-WSZD59sBtAUjLv1hMeKbNZXmMcrLRWcYqpO8Dz8b4CeCTZpfNQw2q9uwrYAD+BbJoLJlu4ezVPwtAmM/9/SlZA==", + "node_modules/babel-plugin-jest-hoist": { + "version": "30.0.0", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-30.0.0.tgz", + "integrity": "sha512-DSRm+US/FCB4xPDD6Rnslb6PAF9Bej1DZ+1u4aTiqJnk7ZX12eHsnDiIOqjGvITCq+u6wLqUhgS+faCNbVY8+g==", "dev": true, - "requires": { - "@jest/types": "^25.4.0", - "chalk": "^3.0.0", - "is-ci": "^2.0.0", - "make-dir": "^3.0.0" + "license": "MIT", + "dependencies": { + "@babel/template": "^7.27.2", + "@babel/types": "^7.27.3", + "@types/babel__core": "^7.20.5" }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" + } + }, + "node_modules/babel-plugin-polyfill-corejs2": { + "version": "0.4.13", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.13.tgz", + "integrity": "sha512-3sX/eOms8kd3q2KZ6DAhKPc0dgm525Gqq5NtWKZ7QYYZEv57OQ54KtblzJzH1lQF/eQxO8KjWGIK9IPUJNus5g==", + "dev": true, + "license": "MIT", "dependencies": { - "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "requires": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "dev": true, - "requires": { - "semver": "^6.0.0" - } - }, - "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } + "@babel/compat-data": "^7.22.6", + "@babel/helper-define-polyfill-provider": "^0.6.4", + "semver": "^6.3.1" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" } }, - "jest-validate": { - "version": "25.4.0", - "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-25.4.0.tgz", - "integrity": "sha512-hvjmes/EFVJSoeP1yOl8qR8mAtMR3ToBkZeXrD/ZS9VxRyWDqQ/E1C5ucMTeSmEOGLipvdlyipiGbHJ+R1MQ0g==", + "node_modules/babel-plugin-polyfill-corejs2/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", "dev": true, - "requires": { - "@jest/types": "^25.4.0", - "camelcase": "^5.3.1", - "chalk": "^3.0.0", - "jest-get-type": "^25.2.6", - "leven": "^3.1.0", - "pretty-format": "^25.4.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "requires": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } + "license": "ISC", + "bin": { + "semver": "bin/semver.js" } }, - "jest-watcher": { - "version": "25.4.0", - "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-25.4.0.tgz", - "integrity": "sha512-36IUfOSRELsKLB7k25j/wutx0aVuHFN6wO94gPNjQtQqFPa2rkOymmx9rM5EzbF3XBZZ2oqD9xbRVoYa2w86gw==", - "dev": true, - "requires": { - "@jest/test-result": "^25.4.0", - "@jest/types": "^25.4.0", - "ansi-escapes": "^4.2.1", - "chalk": "^3.0.0", - "jest-util": "^25.4.0", - "string-length": "^3.1.0" - }, - "dependencies": { - "ansi-escapes": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.1.tgz", - "integrity": "sha512-JWF7ocqNrp8u9oqpgV+wH5ftbt+cfvv+PTjOvKLT3AdYly/LmORARfEVT1iyjwN+4MqE5UmVKoAdIBqeoCHgLA==", - "dev": true, - "requires": { - "type-fest": "^0.11.0" - } - }, - "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "requires": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true + "node_modules/babel-plugin-polyfill-corejs3": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.11.1.tgz", + "integrity": "sha512-yGCqvBT4rwMczo28xkH/noxJ6MZ4nJfkVYdoDaC/utLtWrXxv27HVrzAeSbqR8SxDsp46n0YF47EbHoixy6rXQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.6.3", + "core-js-compat": "^3.40.0" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/babel-plugin-polyfill-regenerator": { + "version": "0.6.4", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.6.4.tgz", + "integrity": "sha512-7gD3pRadPrbjhjLyxebmx/WrFYcuSjZ0XbdUujQMZ/fcE9oeewk2U/7PCvez84UeuK3oSjmPZ0Ch0dlupQvGzw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.6.4" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/babel-preset-current-node-syntax": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.1.0.tgz", + "integrity": "sha512-ldYss8SbBlWva1bs28q78Ju5Zq1F+8BrqBZZ0VFhLBvhh6lCpC2o3gDJi/5DRLs9FgYZCnmPYIVFU4lRXCkyUw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-bigint": "^7.8.3", + "@babel/plugin-syntax-class-properties": "^7.12.13", + "@babel/plugin-syntax-class-static-block": "^7.14.5", + "@babel/plugin-syntax-import-attributes": "^7.24.7", + "@babel/plugin-syntax-import-meta": "^7.10.4", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.10.4", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5", + "@babel/plugin-syntax-top-level-await": "^7.14.5" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/babel-preset-jest": { + "version": "30.0.0", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-30.0.0.tgz", + "integrity": "sha512-hgEuu/W7gk8QOWUA9+m3Zk+WpGvKc1Egp6rFQEfYxEoM9Fk/q8nuTXNL65OkhwGrTApauEGgakOoWVXj+UfhKw==", + "dev": true, + "license": "MIT", + "dependencies": { + "babel-plugin-jest-hoist": "30.0.0", + "babel-preset-current-node-syntax": "^1.1.0" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.11.0" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true, + "license": "MIT" + }, + "node_modules/big.js": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", + "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": "*" + } + }, + "node_modules/binary-extensions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", + "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", + "dev": true, + "license": "MIT", + "optional": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/brace-expansion": { + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", + "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "dev": true, + "license": "MIT", + "dependencies": { + "fill-range": "^7.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/browserslist": { + "version": "4.25.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.25.0.tgz", + "integrity": "sha512-PJ8gYKeS5e/whHBh8xrwYK+dAvEj7JXtz6uTucnMRB8OiGTsKccFekoRrjajPBHV8oOY+2tI4uxeceSimKwMFA==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" }, - "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" }, - "type-fest": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.11.0.tgz", - "integrity": "sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ==", - "dev": true + { + "type": "github", + "url": "https://github.com/sponsors/ai" } + ], + "license": "MIT", + "dependencies": { + "caniuse-lite": "^1.0.30001718", + "electron-to-chromium": "^1.5.160", + "node-releases": "^2.0.19", + "update-browserslist-db": "^1.1.3" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" } }, - "jest-worker": { - "version": "25.4.0", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-25.4.0.tgz", - "integrity": "sha512-ghAs/1FtfYpMmYQ0AHqxV62XPvKdUDIBBApMZfly+E9JEmYh2K45G0R5dWxx986RN12pRCxsViwQVtGl+N4whw==", + "node_modules/bser": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz", + "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==", "dev": true, - "requires": { - "merge-stream": "^2.0.0", - "supports-color": "^7.0.0" + "license": "Apache-2.0", + "dependencies": { + "node-int64": "^0.4.0" + } + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/call-bind": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.8.tgz", + "integrity": "sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.0", + "es-define-property": "^1.0.0", + "get-intrinsic": "^1.2.4", + "set-function-length": "^1.2.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/call-bind-apply-helpers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", + "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2" }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/call-bound": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz", + "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "get-intrinsic": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/camelcase-keys": { + "version": "6.2.2", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-6.2.2.tgz", + "integrity": "sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==", + "dev": true, + "license": "MIT", "dependencies": { - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true + "camelcase": "^5.3.1", + "map-obj": "^4.0.0", + "quick-lru": "^4.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001722", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001722.tgz", + "integrity": "sha512-DCQHBBZtiK6JVkAGw7drvAMK0Q0POD/xZvEmDp6baiMMP6QXXk9HpD6mNYBZWhOPG6LvIDb82ITqtWjhDckHCA==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" }, - "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" } - } + ], + "license": "CC-BY-4.0" }, - "js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true + "node_modules/chalk": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.4.1.tgz", + "integrity": "sha512-zgVZuo2WcZgfUEmsn6eO3kINexW8RAE4maiQ8QNs8CtpPCSyMiYsULR3HQYkm3w8FIA3SberyMJMSldGsW+U3w==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^12.17.0 || ^14.13 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } }, - "js-yaml": { - "version": "3.13.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", - "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==", + "node_modules/chalk-template": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/chalk-template/-/chalk-template-1.1.0.tgz", + "integrity": "sha512-T2VJbcDuZQ0Tb2EWwSotMPJjgpy1/tGee1BTpUNsGZ/qgNjV2t7Mvu+d4600U564nbLesN1x2dPL+xii174Ekg==", "dev": true, - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" + "license": "MIT", + "dependencies": { + "chalk": "^5.2.0" + }, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/chalk/chalk-template?sponsor=1" } }, - "jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", - "dev": true - }, - "jsdom": { - "version": "15.2.1", - "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-15.2.1.tgz", - "integrity": "sha512-fAl1W0/7T2G5vURSyxBzrJ1LSdQn6Tr5UX/xD4PXDx/PDgwygedfW6El/KIj3xJ7FU61TTYnc/l/B7P49Eqt6g==", - "dev": true, - "requires": { - "abab": "^2.0.0", - "acorn": "^7.1.0", - "acorn-globals": "^4.3.2", - "array-equal": "^1.0.0", - "cssom": "^0.4.1", - "cssstyle": "^2.0.0", - "data-urls": "^1.1.0", - "domexception": "^1.0.1", - "escodegen": "^1.11.1", - "html-encoding-sniffer": "^1.0.2", - "nwsapi": "^2.2.0", - "parse5": "5.1.0", - "pn": "^1.1.0", - "request": "^2.88.0", - "request-promise-native": "^1.0.7", - "saxes": "^3.1.9", - "symbol-tree": "^3.2.2", - "tough-cookie": "^3.0.1", - "w3c-hr-time": "^1.0.1", - "w3c-xmlserializer": "^1.1.2", - "webidl-conversions": "^4.0.2", - "whatwg-encoding": "^1.0.5", - "whatwg-mimetype": "^2.3.0", - "whatwg-url": "^7.0.0", - "ws": "^7.0.0", - "xml-name-validator": "^3.0.0" - } - }, - "jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "dev": true - }, - "json-parse-better-errors": { + "node_modules/char-regex": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", - "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", - "dev": true + "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz", + "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + } }, - "json-parser": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/json-parser/-/json-parser-1.1.5.tgz", - "integrity": "sha1-5i7FJh0aal/CDoEqMgdAxtkAVnc=", + "node_modules/chokidar": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", "dev": true, - "requires": { - "esprima": "^2.7.0" - }, + "license": "MIT", + "optional": true, "dependencies": { - "esprima": { - "version": "2.7.3", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz", - "integrity": "sha1-luO3DVd59q1JzQMmc9HDEnZ7pYE=", - "dev": true + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/chrome-trace-event": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.4.tgz", + "integrity": "sha512-rNjApaLzuwaOTjCiT8lSDdGN1APCiqkChLMJxJPWLunPAt5fy8xgU9/jNOchV84wfIxrA0lRQB7oCT8jrn/wrQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.0" + } + }, + "node_modules/ci-info": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-4.2.0.tgz", + "integrity": "sha512-cYY9mypksY8NRqgDB1XD1RiJL338v/551niynFTGkZOO2LHuB2OmOYxDIe/ttN9AHwrqdum1360G3ald0W9kCg==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/sibiraj-s" } + ], + "license": "MIT", + "engines": { + "node": ">=8" } }, - "json-schema": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", - "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=", - "dev": true + "node_modules/cjs-module-lexer": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-2.1.0.tgz", + "integrity": "sha512-UX0OwmYRYQQetfrLEZeewIFFI+wSTofC+pMBLNuH3RUuu/xzG1oz84UCEDOSoQlN3fZ4+AzmV50ZYvGqkMh9yA==", + "dev": true, + "license": "MIT" }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" + "node_modules/clean-stack": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-4.2.0.tgz", + "integrity": "sha512-LYv6XPxoyODi36Dp976riBtSY27VmFo+MKqEU9QCCWyTrdEPDog+RWA7xQWHi6Vbp61j5c4cdzzX1NidnwtUWg==", + "dev": true, + "license": "MIT", + "dependencies": { + "escape-string-regexp": "5.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "json-stable-stringify-without-jsonify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", - "dev": true + "node_modules/clean-stack/node_modules/escape-string-regexp": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", + "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "json-stringify-safe": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", - "dev": true + "node_modules/clear-module": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/clear-module/-/clear-module-4.1.2.tgz", + "integrity": "sha512-LWAxzHqdHsAZlPlEyJ2Poz6AIs384mPeqLVCru2p0BrP9G/kVGuhNyZYClLO6cXlnuJjzC8xtsJIuMjKqLXoAw==", + "dev": true, + "license": "MIT", + "dependencies": { + "parent-module": "^2.0.0", + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "json5": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "requires": { - "minimist": "^1.2.0" + "node_modules/cli-cursor": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-5.0.0.tgz", + "integrity": "sha512-aCj4O5wKyszjMmDT4tZj93kxyydN/K5zPWSCe6/0AV/AA1pqe5ZBIw0a2ZfPQV7lL5/yb5HsUreJ6UFAF1tEQw==", + "dev": true, + "license": "MIT", + "dependencies": { + "restore-cursor": "^5.0.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/cli-truncate": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-4.0.0.tgz", + "integrity": "sha512-nPdaFdQ0h/GEigbPClz11D0v/ZJEwxmeVZGeMo3Z5StPtUTkA9o1lD6QwoirYiSDzbcwn2XcjwmCp68W1IS4TA==", + "dev": true, + "license": "MIT", + "dependencies": { + "slice-ansi": "^5.0.0", + "string-width": "^7.0.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/cliui/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/cliui/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/cliui/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/cliui/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true, + "license": "MIT" + }, + "node_modules/cliui/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/cliui/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "license": "MIT", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cliui/node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==", + "dev": true, + "license": "MIT", + "engines": { + "iojs": ">= 1.0.0", + "node": ">= 0.12.0" + } + }, + "node_modules/collect-v8-coverage": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.2.tgz", + "integrity": "sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q==", + "dev": true, + "license": "MIT" + }, + "node_modules/color": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/color/-/color-3.2.1.tgz", + "integrity": "sha512-aBl7dZI9ENN6fUGC7mWpMTPNHmWUSNan9tuWN6ahh5ZLNk9baLJOnSMlrQkHcrfFgz2/RigjUVAjdx36VcemKA==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^1.9.3", + "color-string": "^1.6.0" + } + }, + "node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true, + "license": "MIT" + }, + "node_modules/color-string": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz", + "integrity": "sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "^1.0.0", + "simple-swizzle": "^0.2.2" + } + }, + "node_modules/colorette": { + "version": "2.0.20", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz", + "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==", + "dev": true, + "license": "MIT" + }, + "node_modules/colorspace": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/colorspace/-/colorspace-1.1.4.tgz", + "integrity": "sha512-BgvKJiuVu1igBUF2kEjRCZXol6wiiGbY5ipL/oVPwm0BL9sIpMIzM8IK7vwuxIIzOXMV3Ey5w+vxhm0rR/TN8w==", + "dev": true, + "license": "MIT", + "dependencies": { + "color": "^3.1.3", + "text-hex": "1.0.x" + } + }, + "node_modules/commander": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-6.2.1.tgz", + "integrity": "sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 6" + } + }, + "node_modules/comment-json": { + "version": "4.2.5", + "resolved": "https://registry.npmjs.org/comment-json/-/comment-json-4.2.5.tgz", + "integrity": "sha512-bKw/r35jR3HGt5PEPm1ljsQQGyCrR8sFGNiN5L+ykDHdpO8Smxkrkla9Yi6NkQyUrb8V54PGhfMs6NrIwtxtdw==", + "dev": true, + "license": "MIT", + "dependencies": { + "array-timsort": "^1.0.3", + "core-util-is": "^1.0.3", + "esprima": "^4.0.1", + "has-own-prop": "^2.0.0", + "repeat-string": "^1.6.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/compare-func": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/compare-func/-/compare-func-2.0.0.tgz", + "integrity": "sha512-zHig5N+tPWARooBnb0Zx1MFcdfpyJrfTJ3Y5L+IFvUm8rM74hHz66z0gw0x4tijh5CorKkKUCnW82R2vmpeCRA==", + "dev": true, + "license": "MIT", + "dependencies": { + "array-ify": "^1.0.0", + "dot-prop": "^5.1.0" + } + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true, + "license": "MIT" + }, + "node_modules/concat-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-2.0.0.tgz", + "integrity": "sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A==", + "dev": true, + "engines": [ + "node >= 6.0" + ], + "license": "MIT", + "dependencies": { + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^3.0.2", + "typedarray": "^0.0.6" + } + }, + "node_modules/conventional-changelog": { + "version": "3.1.25", + "resolved": "https://registry.npmjs.org/conventional-changelog/-/conventional-changelog-3.1.25.tgz", + "integrity": "sha512-ryhi3fd1mKf3fSjbLXOfK2D06YwKNic1nC9mWqybBHdObPd8KJ2vjaXZfYj1U23t+V8T8n0d7gwnc9XbIdFbyQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "conventional-changelog-angular": "^5.0.12", + "conventional-changelog-atom": "^2.0.8", + "conventional-changelog-codemirror": "^2.0.8", + "conventional-changelog-conventionalcommits": "^4.5.0", + "conventional-changelog-core": "^4.2.1", + "conventional-changelog-ember": "^2.0.9", + "conventional-changelog-eslint": "^3.0.9", + "conventional-changelog-express": "^2.0.6", + "conventional-changelog-jquery": "^3.0.11", + "conventional-changelog-jshint": "^2.0.9", + "conventional-changelog-preset-loader": "^2.3.4" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/conventional-changelog-angular": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/conventional-changelog-angular/-/conventional-changelog-angular-7.0.0.tgz", + "integrity": "sha512-ROjNchA9LgfNMTTFSIWPzebCwOGFdgkEq45EnvvrmSLvCtAw0HSmrCs7/ty+wAeYUZyNay0YMUNYFTRL72PkBQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "compare-func": "^2.0.0" + }, + "engines": { + "node": ">=16" + } + }, + "node_modules/conventional-changelog-atom": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/conventional-changelog-atom/-/conventional-changelog-atom-2.0.8.tgz", + "integrity": "sha512-xo6v46icsFTK3bb7dY/8m2qvc8sZemRgdqLb/bjpBsH2UyOS8rKNTgcb5025Hri6IpANPApbXMg15QLb1LJpBw==", + "dev": true, + "license": "ISC", + "dependencies": { + "q": "^1.5.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/conventional-changelog-codemirror": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/conventional-changelog-codemirror/-/conventional-changelog-codemirror-2.0.8.tgz", + "integrity": "sha512-z5DAsn3uj1Vfp7po3gpt2Boc+Bdwmw2++ZHa5Ak9k0UKsYAO5mH1UBTN0qSCuJZREIhX6WU4E1p3IW2oRCNzQw==", + "dev": true, + "license": "ISC", + "dependencies": { + "q": "^1.5.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/conventional-changelog-config-spec": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/conventional-changelog-config-spec/-/conventional-changelog-config-spec-2.1.0.tgz", + "integrity": "sha512-IpVePh16EbbB02V+UA+HQnnPIohgXvJRxHcS5+Uwk4AT5LjzCZJm5sp/yqs5C6KZJ1jMsV4paEV13BN1pvDuxQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/conventional-changelog-conventionalcommits": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/conventional-changelog-conventionalcommits/-/conventional-changelog-conventionalcommits-7.0.2.tgz", + "integrity": "sha512-NKXYmMR/Hr1DevQegFB4MwfM5Vv0m4UIxKZTTYuD98lpTknaZlSRrDOG4X7wIXpGkfsYxZTghUN+Qq+T0YQI7w==", + "dev": true, + "license": "ISC", + "dependencies": { + "compare-func": "^2.0.0" + }, + "engines": { + "node": ">=16" + } + }, + "node_modules/conventional-changelog-core": { + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/conventional-changelog-core/-/conventional-changelog-core-4.2.4.tgz", + "integrity": "sha512-gDVS+zVJHE2v4SLc6B0sLsPiloR0ygU7HaDW14aNJE1v4SlqJPILPl/aJC7YdtRE4CybBf8gDwObBvKha8Xlyg==", + "dev": true, + "license": "MIT", + "dependencies": { + "add-stream": "^1.0.0", + "conventional-changelog-writer": "^5.0.0", + "conventional-commits-parser": "^3.2.0", + "dateformat": "^3.0.0", + "get-pkg-repo": "^4.0.0", + "git-raw-commits": "^2.0.8", + "git-remote-origin-url": "^2.0.0", + "git-semver-tags": "^4.1.1", + "lodash": "^4.17.15", + "normalize-package-data": "^3.0.0", + "q": "^1.5.1", + "read-pkg": "^3.0.0", + "read-pkg-up": "^3.0.0", + "through2": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/conventional-changelog-core/node_modules/conventional-commits-parser": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-3.2.4.tgz", + "integrity": "sha512-nK7sAtfi+QXbxHCYfhpZsfRtaitZLIA6889kFIouLvz6repszQDgxBu7wf2WbU+Dco7sAnNCJYERCwt54WPC2Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-text-path": "^1.0.1", + "JSONStream": "^1.0.4", + "lodash": "^4.17.15", + "meow": "^8.0.0", + "split2": "^3.0.0", + "through2": "^4.0.0" + }, + "bin": { + "conventional-commits-parser": "cli.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/conventional-changelog-core/node_modules/dargs": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/dargs/-/dargs-7.0.0.tgz", + "integrity": "sha512-2iy1EkLdlBzQGvbweYRFxmFath8+K7+AKB0TlhHWkNuH+TmovaMH/Wp7V7R4u7f4SnX3OgLsU9t1NI9ioDnUpg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/conventional-changelog-core/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "license": "MIT", + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/conventional-changelog-core/node_modules/git-raw-commits": { + "version": "2.0.11", + "resolved": "https://registry.npmjs.org/git-raw-commits/-/git-raw-commits-2.0.11.tgz", + "integrity": "sha512-VnctFhw+xfj8Va1xtfEqCUD2XDrbAPSJx+hSrE5K7fGdjZruW7XV+QOrN7LF/RJyvspRiD2I0asWsxFp0ya26A==", + "dev": true, + "license": "MIT", + "dependencies": { + "dargs": "^7.0.0", + "lodash": "^4.17.15", + "meow": "^8.0.0", + "split2": "^3.0.0", + "through2": "^4.0.0" + }, + "bin": { + "git-raw-commits": "cli.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/conventional-changelog-core/node_modules/hosted-git-info": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", + "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", + "dev": true, + "license": "ISC", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/conventional-changelog-core/node_modules/is-text-path": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-text-path/-/is-text-path-1.0.1.tgz", + "integrity": "sha512-xFuJpne9oFz5qDaodwmmG08e3CawH/2ZV8Qqza1Ko7Sk8POWbkRdwIoAWVhqvq0XeUzANEhKo2n0IXUGBm7A/w==", + "dev": true, + "license": "MIT", + "dependencies": { + "text-extensions": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/conventional-changelog-core/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/conventional-changelog-core/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/conventional-changelog-core/node_modules/meow": { + "version": "8.1.2", + "resolved": "https://registry.npmjs.org/meow/-/meow-8.1.2.tgz", + "integrity": "sha512-r85E3NdZ+mpYk1C6RjPFEMSE+s1iZMuHtsHAqY0DT3jZczl0diWUZ8g6oU7h0M9cD2EL+PzaYghhCLzR0ZNn5Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/minimist": "^1.2.0", + "camelcase-keys": "^6.2.2", + "decamelize-keys": "^1.1.0", + "hard-rejection": "^2.1.0", + "minimist-options": "4.1.0", + "normalize-package-data": "^3.0.0", + "read-pkg-up": "^7.0.1", + "redent": "^3.0.0", + "trim-newlines": "^3.0.0", + "type-fest": "^0.18.0", + "yargs-parser": "^20.2.3" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/conventional-changelog-core/node_modules/meow/node_modules/hosted-git-info": { + "version": "2.8.9", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", + "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", + "dev": true, + "license": "ISC" + }, + "node_modules/conventional-changelog-core/node_modules/meow/node_modules/read-pkg": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", + "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/normalize-package-data": "^2.4.0", + "normalize-package-data": "^2.5.0", + "parse-json": "^5.0.0", + "type-fest": "^0.6.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/conventional-changelog-core/node_modules/meow/node_modules/read-pkg-up": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", + "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", + "dev": true, + "license": "MIT", + "dependencies": { + "find-up": "^4.1.0", + "read-pkg": "^5.2.0", + "type-fest": "^0.8.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/conventional-changelog-core/node_modules/meow/node_modules/read-pkg-up/node_modules/type-fest": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", + "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", + "dev": true, + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=8" + } + }, + "node_modules/conventional-changelog-core/node_modules/meow/node_modules/read-pkg/node_modules/normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + } + }, + "node_modules/conventional-changelog-core/node_modules/meow/node_modules/read-pkg/node_modules/type-fest": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", + "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", + "dev": true, + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=8" + } + }, + "node_modules/conventional-changelog-core/node_modules/meow/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/conventional-changelog-core/node_modules/normalize-package-data": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", + "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "hosted-git-info": "^4.0.1", + "is-core-module": "^2.5.0", + "semver": "^7.3.4", + "validate-npm-package-license": "^3.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/conventional-changelog-core/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/conventional-changelog-core/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/conventional-changelog-core/node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/conventional-changelog-core/node_modules/split2": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/split2/-/split2-3.2.2.tgz", + "integrity": "sha512-9NThjpgZnifTkJpzTZ7Eue85S49QwpNhZTq6GRJwObb6jnLFNGB7Qm73V5HewTROPyxD0C29xqmaI68bQtV+hg==", + "dev": true, + "license": "ISC", + "dependencies": { + "readable-stream": "^3.0.0" + } + }, + "node_modules/conventional-changelog-core/node_modules/text-extensions": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/text-extensions/-/text-extensions-1.9.0.tgz", + "integrity": "sha512-wiBrwC1EhBelW12Zy26JeOUkQ5mRu+5o8rpsJk5+2t+Y5vE7e842qtZDQ2g1NpX/29HdyFeJ4nSIhI47ENSxlQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10" + } + }, + "node_modules/conventional-changelog-core/node_modules/type-fest": { + "version": "0.18.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.18.1.tgz", + "integrity": "sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw==", + "dev": true, + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/conventional-changelog-core/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true, + "license": "ISC" + }, + "node_modules/conventional-changelog-core/node_modules/yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=10" + } + }, + "node_modules/conventional-changelog-ember": { + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/conventional-changelog-ember/-/conventional-changelog-ember-2.0.9.tgz", + "integrity": "sha512-ulzIReoZEvZCBDhcNYfDIsLTHzYHc7awh+eI44ZtV5cx6LVxLlVtEmcO+2/kGIHGtw+qVabJYjdI5cJOQgXh1A==", + "dev": true, + "license": "ISC", + "dependencies": { + "q": "^1.5.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/conventional-changelog-eslint": { + "version": "3.0.9", + "resolved": "https://registry.npmjs.org/conventional-changelog-eslint/-/conventional-changelog-eslint-3.0.9.tgz", + "integrity": "sha512-6NpUCMgU8qmWmyAMSZO5NrRd7rTgErjrm4VASam2u5jrZS0n38V7Y9CzTtLT2qwz5xEChDR4BduoWIr8TfwvXA==", + "dev": true, + "license": "ISC", + "dependencies": { + "q": "^1.5.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/conventional-changelog-express": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/conventional-changelog-express/-/conventional-changelog-express-2.0.6.tgz", + "integrity": "sha512-SDez2f3iVJw6V563O3pRtNwXtQaSmEfTCaTBPCqn0oG0mfkq0rX4hHBq5P7De2MncoRixrALj3u3oQsNK+Q0pQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "q": "^1.5.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/conventional-changelog-jquery": { + "version": "3.0.11", + "resolved": "https://registry.npmjs.org/conventional-changelog-jquery/-/conventional-changelog-jquery-3.0.11.tgz", + "integrity": "sha512-x8AWz5/Td55F7+o/9LQ6cQIPwrCjfJQ5Zmfqi8thwUEKHstEn4kTIofXub7plf1xvFA2TqhZlq7fy5OmV6BOMw==", + "dev": true, + "license": "ISC", + "dependencies": { + "q": "^1.5.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/conventional-changelog-jshint": { + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/conventional-changelog-jshint/-/conventional-changelog-jshint-2.0.9.tgz", + "integrity": "sha512-wMLdaIzq6TNnMHMy31hql02OEQ8nCQfExw1SE0hYL5KvU+JCTuPaDO+7JiogGT2gJAxiUGATdtYYfh+nT+6riA==", + "dev": true, + "license": "ISC", + "dependencies": { + "compare-func": "^2.0.0", + "q": "^1.5.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/conventional-changelog-preset-loader": { + "version": "2.3.4", + "resolved": "https://registry.npmjs.org/conventional-changelog-preset-loader/-/conventional-changelog-preset-loader-2.3.4.tgz", + "integrity": "sha512-GEKRWkrSAZeTq5+YjUZOYxdHq+ci4dNwHvpaBC3+ENalzFWuCWa9EZXSuZBpkr72sMdKB+1fyDV4takK1Lf58g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + } + }, + "node_modules/conventional-changelog-writer": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/conventional-changelog-writer/-/conventional-changelog-writer-5.0.1.tgz", + "integrity": "sha512-5WsuKUfxW7suLblAbFnxAcrvf6r+0b7GvNaWUwUIk0bXMnENP/PEieGKVUQrjPqwPT4o3EPAASBXiY6iHooLOQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "conventional-commits-filter": "^2.0.7", + "dateformat": "^3.0.0", + "handlebars": "^4.7.7", + "json-stringify-safe": "^5.0.1", + "lodash": "^4.17.15", + "meow": "^8.0.0", + "semver": "^6.0.0", + "split": "^1.0.0", + "through2": "^4.0.0" + }, + "bin": { + "conventional-changelog-writer": "cli.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/conventional-changelog-writer/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "license": "MIT", + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/conventional-changelog-writer/node_modules/hosted-git-info": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", + "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", + "dev": true, + "license": "ISC", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/conventional-changelog-writer/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/conventional-changelog-writer/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/conventional-changelog-writer/node_modules/meow": { + "version": "8.1.2", + "resolved": "https://registry.npmjs.org/meow/-/meow-8.1.2.tgz", + "integrity": "sha512-r85E3NdZ+mpYk1C6RjPFEMSE+s1iZMuHtsHAqY0DT3jZczl0diWUZ8g6oU7h0M9cD2EL+PzaYghhCLzR0ZNn5Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/minimist": "^1.2.0", + "camelcase-keys": "^6.2.2", + "decamelize-keys": "^1.1.0", + "hard-rejection": "^2.1.0", + "minimist-options": "4.1.0", + "normalize-package-data": "^3.0.0", + "read-pkg-up": "^7.0.1", + "redent": "^3.0.0", + "trim-newlines": "^3.0.0", + "type-fest": "^0.18.0", + "yargs-parser": "^20.2.3" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/conventional-changelog-writer/node_modules/normalize-package-data": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", + "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "hosted-git-info": "^4.0.1", + "is-core-module": "^2.5.0", + "semver": "^7.3.4", + "validate-npm-package-license": "^3.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/conventional-changelog-writer/node_modules/normalize-package-data/node_modules/semver": { + "version": "7.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", + "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/conventional-changelog-writer/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/conventional-changelog-writer/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/conventional-changelog-writer/node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/conventional-changelog-writer/node_modules/read-pkg": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", + "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/normalize-package-data": "^2.4.0", + "normalize-package-data": "^2.5.0", + "parse-json": "^5.0.0", + "type-fest": "^0.6.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/conventional-changelog-writer/node_modules/read-pkg-up": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", + "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", + "dev": true, + "license": "MIT", + "dependencies": { + "find-up": "^4.1.0", + "read-pkg": "^5.2.0", + "type-fest": "^0.8.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/conventional-changelog-writer/node_modules/read-pkg-up/node_modules/type-fest": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", + "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", + "dev": true, + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=8" + } + }, + "node_modules/conventional-changelog-writer/node_modules/read-pkg/node_modules/hosted-git-info": { + "version": "2.8.9", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", + "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", + "dev": true, + "license": "ISC" + }, + "node_modules/conventional-changelog-writer/node_modules/read-pkg/node_modules/normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + } + }, + "node_modules/conventional-changelog-writer/node_modules/read-pkg/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/conventional-changelog-writer/node_modules/read-pkg/node_modules/type-fest": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", + "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", + "dev": true, + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=8" + } + }, + "node_modules/conventional-changelog-writer/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/conventional-changelog-writer/node_modules/type-fest": { + "version": "0.18.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.18.1.tgz", + "integrity": "sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw==", + "dev": true, + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/conventional-changelog-writer/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true, + "license": "ISC" + }, + "node_modules/conventional-changelog-writer/node_modules/yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=10" + } + }, + "node_modules/conventional-changelog/node_modules/conventional-changelog-angular": { + "version": "5.0.13", + "resolved": "https://registry.npmjs.org/conventional-changelog-angular/-/conventional-changelog-angular-5.0.13.tgz", + "integrity": "sha512-i/gipMxs7s8L/QeuavPF2hLnJgH6pEZAttySB6aiQLWcX3puWDL3ACVmvBhJGxnAy52Qc15ua26BufY6KpmrVA==", + "dev": true, + "license": "ISC", + "dependencies": { + "compare-func": "^2.0.0", + "q": "^1.5.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/conventional-changelog/node_modules/conventional-changelog-conventionalcommits": { + "version": "4.6.3", + "resolved": "https://registry.npmjs.org/conventional-changelog-conventionalcommits/-/conventional-changelog-conventionalcommits-4.6.3.tgz", + "integrity": "sha512-LTTQV4fwOM4oLPad317V/QNQ1FY4Hju5qeBIM1uTHbrnCE+Eg4CdRZ3gO2pUeR+tzWdp80M2j3qFFEDWVqOV4g==", + "dev": true, + "license": "ISC", + "dependencies": { + "compare-func": "^2.0.0", + "lodash": "^4.17.15", + "q": "^1.5.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/conventional-commits-filter": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/conventional-commits-filter/-/conventional-commits-filter-2.0.7.tgz", + "integrity": "sha512-ASS9SamOP4TbCClsRHxIHXRfcGCnIoQqkvAzCSbZzTFLfcTqJVugB0agRgsEELsqaeWgsXv513eS116wnlSSPA==", + "dev": true, + "license": "MIT", + "dependencies": { + "lodash.ismatch": "^4.4.0", + "modify-values": "^1.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/conventional-commits-parser": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-5.0.0.tgz", + "integrity": "sha512-ZPMl0ZJbw74iS9LuX9YIAiW8pfM5p3yh2o/NbXHbkFuZzY5jvdi5jFycEOkmBW5H5I7nA+D6f3UcsCLP2vvSEA==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-text-path": "^2.0.0", + "JSONStream": "^1.3.5", + "meow": "^12.0.1", + "split2": "^4.0.0" + }, + "bin": { + "conventional-commits-parser": "cli.mjs" + }, + "engines": { + "node": ">=16" + } + }, + "node_modules/conventional-recommended-bump": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/conventional-recommended-bump/-/conventional-recommended-bump-6.1.0.tgz", + "integrity": "sha512-uiApbSiNGM/kkdL9GTOLAqC4hbptObFo4wW2QRyHsKciGAfQuLU1ShZ1BIVI/+K2BE/W1AWYQMCXAsv4dyKPaw==", + "dev": true, + "license": "MIT", + "dependencies": { + "concat-stream": "^2.0.0", + "conventional-changelog-preset-loader": "^2.3.4", + "conventional-commits-filter": "^2.0.7", + "conventional-commits-parser": "^3.2.0", + "git-raw-commits": "^2.0.8", + "git-semver-tags": "^4.1.1", + "meow": "^8.0.0", + "q": "^1.5.1" + }, + "bin": { + "conventional-recommended-bump": "cli.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/conventional-recommended-bump/node_modules/conventional-commits-parser": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-3.2.4.tgz", + "integrity": "sha512-nK7sAtfi+QXbxHCYfhpZsfRtaitZLIA6889kFIouLvz6repszQDgxBu7wf2WbU+Dco7sAnNCJYERCwt54WPC2Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-text-path": "^1.0.1", + "JSONStream": "^1.0.4", + "lodash": "^4.17.15", + "meow": "^8.0.0", + "split2": "^3.0.0", + "through2": "^4.0.0" + }, + "bin": { + "conventional-commits-parser": "cli.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/conventional-recommended-bump/node_modules/dargs": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/dargs/-/dargs-7.0.0.tgz", + "integrity": "sha512-2iy1EkLdlBzQGvbweYRFxmFath8+K7+AKB0TlhHWkNuH+TmovaMH/Wp7V7R4u7f4SnX3OgLsU9t1NI9ioDnUpg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/conventional-recommended-bump/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "license": "MIT", + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/conventional-recommended-bump/node_modules/git-raw-commits": { + "version": "2.0.11", + "resolved": "https://registry.npmjs.org/git-raw-commits/-/git-raw-commits-2.0.11.tgz", + "integrity": "sha512-VnctFhw+xfj8Va1xtfEqCUD2XDrbAPSJx+hSrE5K7fGdjZruW7XV+QOrN7LF/RJyvspRiD2I0asWsxFp0ya26A==", + "dev": true, + "license": "MIT", + "dependencies": { + "dargs": "^7.0.0", + "lodash": "^4.17.15", + "meow": "^8.0.0", + "split2": "^3.0.0", + "through2": "^4.0.0" + }, + "bin": { + "git-raw-commits": "cli.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/conventional-recommended-bump/node_modules/hosted-git-info": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", + "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", + "dev": true, + "license": "ISC", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/conventional-recommended-bump/node_modules/is-text-path": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-text-path/-/is-text-path-1.0.1.tgz", + "integrity": "sha512-xFuJpne9oFz5qDaodwmmG08e3CawH/2ZV8Qqza1Ko7Sk8POWbkRdwIoAWVhqvq0XeUzANEhKo2n0IXUGBm7A/w==", + "dev": true, + "license": "MIT", + "dependencies": { + "text-extensions": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/conventional-recommended-bump/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/conventional-recommended-bump/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/conventional-recommended-bump/node_modules/meow": { + "version": "8.1.2", + "resolved": "https://registry.npmjs.org/meow/-/meow-8.1.2.tgz", + "integrity": "sha512-r85E3NdZ+mpYk1C6RjPFEMSE+s1iZMuHtsHAqY0DT3jZczl0diWUZ8g6oU7h0M9cD2EL+PzaYghhCLzR0ZNn5Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/minimist": "^1.2.0", + "camelcase-keys": "^6.2.2", + "decamelize-keys": "^1.1.0", + "hard-rejection": "^2.1.0", + "minimist-options": "4.1.0", + "normalize-package-data": "^3.0.0", + "read-pkg-up": "^7.0.1", + "redent": "^3.0.0", + "trim-newlines": "^3.0.0", + "type-fest": "^0.18.0", + "yargs-parser": "^20.2.3" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/conventional-recommended-bump/node_modules/normalize-package-data": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", + "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "hosted-git-info": "^4.0.1", + "is-core-module": "^2.5.0", + "semver": "^7.3.4", + "validate-npm-package-license": "^3.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/conventional-recommended-bump/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/conventional-recommended-bump/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/conventional-recommended-bump/node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/conventional-recommended-bump/node_modules/read-pkg": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", + "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/normalize-package-data": "^2.4.0", + "normalize-package-data": "^2.5.0", + "parse-json": "^5.0.0", + "type-fest": "^0.6.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/conventional-recommended-bump/node_modules/read-pkg-up": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", + "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", + "dev": true, + "license": "MIT", + "dependencies": { + "find-up": "^4.1.0", + "read-pkg": "^5.2.0", + "type-fest": "^0.8.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/conventional-recommended-bump/node_modules/read-pkg-up/node_modules/type-fest": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", + "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", + "dev": true, + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=8" + } + }, + "node_modules/conventional-recommended-bump/node_modules/read-pkg/node_modules/hosted-git-info": { + "version": "2.8.9", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", + "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", + "dev": true, + "license": "ISC" + }, + "node_modules/conventional-recommended-bump/node_modules/read-pkg/node_modules/normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + } + }, + "node_modules/conventional-recommended-bump/node_modules/read-pkg/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/conventional-recommended-bump/node_modules/read-pkg/node_modules/type-fest": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", + "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", + "dev": true, + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=8" + } + }, + "node_modules/conventional-recommended-bump/node_modules/split2": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/split2/-/split2-3.2.2.tgz", + "integrity": "sha512-9NThjpgZnifTkJpzTZ7Eue85S49QwpNhZTq6GRJwObb6jnLFNGB7Qm73V5HewTROPyxD0C29xqmaI68bQtV+hg==", + "dev": true, + "license": "ISC", + "dependencies": { + "readable-stream": "^3.0.0" + } + }, + "node_modules/conventional-recommended-bump/node_modules/text-extensions": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/text-extensions/-/text-extensions-1.9.0.tgz", + "integrity": "sha512-wiBrwC1EhBelW12Zy26JeOUkQ5mRu+5o8rpsJk5+2t+Y5vE7e842qtZDQ2g1NpX/29HdyFeJ4nSIhI47ENSxlQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10" + } + }, + "node_modules/conventional-recommended-bump/node_modules/type-fest": { + "version": "0.18.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.18.1.tgz", + "integrity": "sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw==", + "dev": true, + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/conventional-recommended-bump/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true, + "license": "ISC" + }, + "node_modules/conventional-recommended-bump/node_modules/yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=10" + } + }, + "node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true, + "license": "MIT" + }, + "node_modules/copy-anything": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/copy-anything/-/copy-anything-2.0.6.tgz", + "integrity": "sha512-1j20GZTsvKNkc4BY3NpMOM8tt///wY3FpIzozTOFO2ffuZcV61nojHXVKIy3WM+7ADCy5FVhdZYHYDdgTU0yJw==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-what": "^3.14.1" + }, + "funding": { + "url": "https://github.com/sponsors/mesqueeb" + } + }, + "node_modules/core-js-compat": { + "version": "3.43.0", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.43.0.tgz", + "integrity": "sha512-2GML2ZsCc5LR7hZYz4AXmjQw8zuy2T//2QntwdnpuYI7jteT6GVYJL7F6C2C57R7gSYrcqVW3lAALefdbhBLDA==", + "dev": true, + "license": "MIT", + "dependencies": { + "browserslist": "^4.25.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/core-util-is": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/cosmiconfig": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-9.0.0.tgz", + "integrity": "sha512-itvL5h8RETACmOTFc4UfIyB2RfEHi71Ax6E/PivVxq9NseKbOWpeyHEOIbmAw1rs8Ak0VursQNww7lf7YtUwzg==", + "dev": true, + "license": "MIT", + "dependencies": { + "env-paths": "^2.2.1", + "import-fresh": "^3.3.0", + "js-yaml": "^4.1.0", + "parse-json": "^5.2.0" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/d-fischer" + }, + "peerDependencies": { + "typescript": ">=4.9.5" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/cosmiconfig-typescript-loader": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/cosmiconfig-typescript-loader/-/cosmiconfig-typescript-loader-6.1.0.tgz", + "integrity": "sha512-tJ1w35ZRUiM5FeTzT7DtYWAFFv37ZLqSRkGi2oeCK1gPhvaWjkAtfXvLmvE1pRfxxp9aQo6ba/Pvg1dKj05D4g==", + "dev": true, + "license": "MIT", + "dependencies": { + "jiti": "^2.4.1" + }, + "engines": { + "node": ">=v18" + }, + "peerDependencies": { + "@types/node": "*", + "cosmiconfig": ">=9", + "typescript": ">=5" + } + }, + "node_modules/cosmiconfig/node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true, + "license": "Python-2.0" + }, + "node_modules/cosmiconfig/node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, + "license": "MIT", + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/cross-env": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-env/-/cross-env-7.0.3.tgz", + "integrity": "sha512-+/HKd6EgcQCJGh2PSjZuUitQBQynKor4wrFbRg4DtAgS1aWO+gU52xpH7M9ScGgXSYmAVS9bIJ8EzuaGw0oNAw==", + "dev": true, + "license": "MIT", + "dependencies": { + "cross-spawn": "^7.0.1" + }, + "bin": { + "cross-env": "src/bin/cross-env.js", + "cross-env-shell": "src/bin/cross-env-shell.js" + }, + "engines": { + "node": ">=10.14", + "npm": ">=6", + "yarn": ">=1" + } + }, + "node_modules/cross-spawn": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", + "dev": true, + "license": "MIT", + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/cspell": { + "version": "8.19.4", + "resolved": "https://registry.npmjs.org/cspell/-/cspell-8.19.4.tgz", + "integrity": "sha512-toaLrLj3usWY0Bvdi661zMmpKW2DVLAG3tcwkAv4JBTisdIRn15kN/qZDrhSieUEhVgJgZJDH4UKRiq29mIFxA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@cspell/cspell-json-reporter": "8.19.4", + "@cspell/cspell-pipe": "8.19.4", + "@cspell/cspell-types": "8.19.4", + "@cspell/dynamic-import": "8.19.4", + "@cspell/url": "8.19.4", + "chalk": "^5.4.1", + "chalk-template": "^1.1.0", + "commander": "^13.1.0", + "cspell-dictionary": "8.19.4", + "cspell-gitignore": "8.19.4", + "cspell-glob": "8.19.4", + "cspell-io": "8.19.4", + "cspell-lib": "8.19.4", + "fast-json-stable-stringify": "^2.1.0", + "file-entry-cache": "^9.1.0", + "semver": "^7.7.1", + "tinyglobby": "^0.2.13" + }, + "bin": { + "cspell": "bin.mjs", + "cspell-esm": "bin.mjs" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/streetsidesoftware/cspell?sponsor=1" + } + }, + "node_modules/cspell-config-lib": { + "version": "8.19.4", + "resolved": "https://registry.npmjs.org/cspell-config-lib/-/cspell-config-lib-8.19.4.tgz", + "integrity": "sha512-LtFNZEWVrnpjiTNgEDsVN05UqhhJ1iA0HnTv4jsascPehlaUYVoyucgNbFeRs6UMaClJnqR0qT9lnPX+KO1OLg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@cspell/cspell-types": "8.19.4", + "comment-json": "^4.2.5", + "yaml": "^2.7.1" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/cspell-dictionary": { + "version": "8.19.4", + "resolved": "https://registry.npmjs.org/cspell-dictionary/-/cspell-dictionary-8.19.4.tgz", + "integrity": "sha512-lr8uIm7Wub8ToRXO9f6f7in429P1Egm3I+Ps3ZGfWpwLTCUBnHvJdNF/kQqF7PL0Lw6acXcjVWFYT7l2Wdst2g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@cspell/cspell-pipe": "8.19.4", + "@cspell/cspell-types": "8.19.4", + "cspell-trie-lib": "8.19.4", + "fast-equals": "^5.2.2" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/cspell-gitignore": { + "version": "8.19.4", + "resolved": "https://registry.npmjs.org/cspell-gitignore/-/cspell-gitignore-8.19.4.tgz", + "integrity": "sha512-KrViypPilNUHWZkMV0SM8P9EQVIyH8HvUqFscI7+cyzWnlglvzqDdV4N5f+Ax5mK+IqR6rTEX8JZbCwIWWV7og==", + "dev": true, + "license": "MIT", + "dependencies": { + "@cspell/url": "8.19.4", + "cspell-glob": "8.19.4", + "cspell-io": "8.19.4" + }, + "bin": { + "cspell-gitignore": "bin.mjs" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/cspell-glob": { + "version": "8.19.4", + "resolved": "https://registry.npmjs.org/cspell-glob/-/cspell-glob-8.19.4.tgz", + "integrity": "sha512-042uDU+RjAz882w+DXKuYxI2rrgVPfRQDYvIQvUrY1hexH4sHbne78+OMlFjjzOCEAgyjnm1ktWUCCmh08pQUw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@cspell/url": "8.19.4", + "picomatch": "^4.0.2" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/cspell-grammar": { + "version": "8.19.4", + "resolved": "https://registry.npmjs.org/cspell-grammar/-/cspell-grammar-8.19.4.tgz", + "integrity": "sha512-lzWgZYTu/L7DNOHjxuKf8H7DCXvraHMKxtFObf8bAzgT+aBmey5fW2LviXUkZ2Lb2R0qQY+TJ5VIGoEjNf55ow==", + "dev": true, + "license": "MIT", + "dependencies": { + "@cspell/cspell-pipe": "8.19.4", + "@cspell/cspell-types": "8.19.4" + }, + "bin": { + "cspell-grammar": "bin.mjs" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/cspell-io": { + "version": "8.19.4", + "resolved": "https://registry.npmjs.org/cspell-io/-/cspell-io-8.19.4.tgz", + "integrity": "sha512-W48egJqZ2saEhPWf5ftyighvm4mztxEOi45ILsKgFikXcWFs0H0/hLwqVFeDurgELSzprr12b6dXsr67dV8amg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@cspell/cspell-service-bus": "8.19.4", + "@cspell/url": "8.19.4" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/cspell-lib": { + "version": "8.19.4", + "resolved": "https://registry.npmjs.org/cspell-lib/-/cspell-lib-8.19.4.tgz", + "integrity": "sha512-NwfdCCYtIBNQuZcoMlMmL3HSv2olXNErMi/aOTI9BBAjvCHjhgX5hbHySMZ0NFNynnN+Mlbu5kooJ5asZeB3KA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@cspell/cspell-bundled-dicts": "8.19.4", + "@cspell/cspell-pipe": "8.19.4", + "@cspell/cspell-resolver": "8.19.4", + "@cspell/cspell-types": "8.19.4", + "@cspell/dynamic-import": "8.19.4", + "@cspell/filetypes": "8.19.4", + "@cspell/strong-weak-map": "8.19.4", + "@cspell/url": "8.19.4", + "clear-module": "^4.1.2", + "comment-json": "^4.2.5", + "cspell-config-lib": "8.19.4", + "cspell-dictionary": "8.19.4", + "cspell-glob": "8.19.4", + "cspell-grammar": "8.19.4", + "cspell-io": "8.19.4", + "cspell-trie-lib": "8.19.4", + "env-paths": "^3.0.0", + "fast-equals": "^5.2.2", + "gensequence": "^7.0.0", + "import-fresh": "^3.3.1", + "resolve-from": "^5.0.0", + "vscode-languageserver-textdocument": "^1.0.12", + "vscode-uri": "^3.1.0", + "xdg-basedir": "^5.1.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/cspell-lib/node_modules/env-paths": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-3.0.0.tgz", + "integrity": "sha512-dtJUTepzMW3Lm/NPxRf3wP4642UWhjL2sQxc+ym2YMj1m/H2zDNQOlezafzkHwn6sMstjHTwG6iQQsctDW/b1A==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/cspell-trie-lib": { + "version": "8.19.4", + "resolved": "https://registry.npmjs.org/cspell-trie-lib/-/cspell-trie-lib-8.19.4.tgz", + "integrity": "sha512-yIPlmGSP3tT3j8Nmu+7CNpkPh/gBO2ovdnqNmZV+LNtQmVxqFd2fH7XvR1TKjQyctSH1ip0P5uIdJmzY1uhaYg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@cspell/cspell-pipe": "8.19.4", + "@cspell/cspell-types": "8.19.4", + "gensequence": "^7.0.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/cspell/node_modules/commander": { + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-13.1.0.tgz", + "integrity": "sha512-/rFeCpNJQbhSZjGVwO9RFV3xPqbnERS8MmIQzCtD/zl6gpJuV/bMLuN92oG3F7d8oDEHHRrujSXNUr8fpjntKw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + } + }, + "node_modules/css-blank-pseudo": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/css-blank-pseudo/-/css-blank-pseudo-6.0.2.tgz", + "integrity": "sha512-J/6m+lsqpKPqWHOifAFtKFeGLOzw3jR92rxQcwRUfA/eTuZzKfKlxOmYDx2+tqOPQAueNvBiY8WhAeHu5qNmTg==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "postcss-selector-parser": "^6.0.13" + }, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/css-has-pseudo": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/css-has-pseudo/-/css-has-pseudo-6.0.5.tgz", + "integrity": "sha512-ZTv6RlvJJZKp32jPYnAJVhowDCrRrHUTAxsYSuUPBEDJjzws6neMnzkRblxtgmv1RgcV5dhH2gn7E3wA9Wt6lw==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/selector-specificity": "^3.1.1", + "postcss-selector-parser": "^6.0.13", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/css-prefers-color-scheme": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/css-prefers-color-scheme/-/css-prefers-color-scheme-9.0.1.tgz", + "integrity": "sha512-iFit06ochwCKPRiWagbTa1OAWCvWWVdEnIFd8BaRrgO8YrrNh4RAWUQTFcYX5tdFZgFl1DJ3iiULchZyEbnF4g==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/cssdb": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/cssdb/-/cssdb-8.3.0.tgz", + "integrity": "sha512-c7bmItIg38DgGjSwDPZOYF/2o0QU/sSgkWOMyl8votOfgFuyiFKWPesmCGEsrGLxEA9uL540cp8LdaGEjUGsZQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + } + ], + "license": "MIT-0" + }, + "node_modules/cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "license": "MIT", + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/cssstyle": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-4.4.0.tgz", + "integrity": "sha512-W0Y2HOXlPkb2yaKrCVRjinYKciu/qSLEmK0K9mcfDei3zwlnHFEHAs/Du3cIRwPqY+J4JsiBzUjoHyc8RsJ03A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@asamuzakjp/css-color": "^3.2.0", + "rrweb-cssom": "^0.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/dargs": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/dargs/-/dargs-8.1.0.tgz", + "integrity": "sha512-wAV9QHOsNbwnWdNW2FYvE1P56wtgSbM+3SZcdGiWQILwVjACCXDCI3Ai8QlCjMDB8YK5zySiXZYBiwGmNY3lnw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/data-urls": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-5.0.0.tgz", + "integrity": "sha512-ZYP5VBHshaDAiVZxjbRVcFJpc+4xGgT0bK3vzy1HLN8jTO975HEbuYzZJcHoQEY5K1a0z8YayJkyVETa08eNTg==", + "dev": true, + "license": "MIT", + "dependencies": { + "whatwg-mimetype": "^4.0.0", + "whatwg-url": "^14.0.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/data-view-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.2.tgz", + "integrity": "sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/data-view-byte-length": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.2.tgz", + "integrity": "sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/inspect-js" + } + }, + "node_modules/data-view-byte-offset": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.1.tgz", + "integrity": "sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/dateformat": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-3.0.3.tgz", + "integrity": "sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": "*" + } + }, + "node_modules/debug": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.1.tgz", + "integrity": "sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/decamelize-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.1.tgz", + "integrity": "sha512-WiPxgEirIV0/eIOMcnFBA3/IJZAZqKnwAwWyvvdi4lsr1WCN22nhdf/3db3DoZcUjTV2SqfzIwNyp6y2xs3nmg==", + "dev": true, + "license": "MIT", + "dependencies": { + "decamelize": "^1.1.0", + "map-obj": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/decamelize-keys/node_modules/map-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", + "integrity": "sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/decimal.js": { + "version": "10.5.0", + "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.5.0.tgz", + "integrity": "sha512-8vDa8Qxvr/+d94hSh5P3IJwI5t8/c0KsMp+g8bNw9cY2icONa5aPfvKeieW1WlG0WQYwwhJ7mjui2xtiePQSXw==", + "dev": true, + "license": "MIT" + }, + "node_modules/dedent": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/dedent/-/dedent-1.6.0.tgz", + "integrity": "sha512-F1Z+5UCFpmQUzJa11agbyPVMbpgT/qA3/SKyJ1jyBgm7dUcUEa8v9JwDkerSQXfakBwFljIxhOJqGkjUwZ9FSA==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "babel-plugin-macros": "^3.1.0" + }, + "peerDependenciesMeta": { + "babel-plugin-macros": { + "optional": true + } + } + }, + "node_modules/deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/deepmerge": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", + "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/define-data-property": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", + "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/define-properties": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", + "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", + "dev": true, + "license": "MIT", + "dependencies": { + "define-data-property": "^1.0.1", + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/del": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/del/-/del-7.1.0.tgz", + "integrity": "sha512-v2KyNk7efxhlyHpjEvfyxaAihKKK0nWCuf6ZtqZcFFpQRG0bJ12Qsr0RpvsICMjAAZ8DOVCxrlqpxISlMHC4Kg==", + "dev": true, + "license": "MIT", + "dependencies": { + "globby": "^13.1.2", + "graceful-fs": "^4.2.10", + "is-glob": "^4.0.3", + "is-path-cwd": "^3.0.0", + "is-path-inside": "^4.0.0", + "p-map": "^5.5.0", + "rimraf": "^3.0.2", + "slash": "^4.0.0" + }, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/del-cli": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/del-cli/-/del-cli-5.1.0.tgz", + "integrity": "sha512-xwMeh2acluWeccsfzE7VLsG3yTr7nWikbfw+xhMnpRrF15pGSkw+3/vJZWlGoE4I86UiLRNHicmKt4tkIX9Jtg==", + "dev": true, + "license": "MIT", + "dependencies": { + "del": "^7.1.0", + "meow": "^10.1.3" + }, + "bin": { + "del": "cli.js", + "del-cli": "cli.js" + }, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/del-cli/node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/del-cli/node_modules/camelcase-keys": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-7.0.2.tgz", + "integrity": "sha512-Rjs1H+A9R+Ig+4E/9oyB66UC5Mj9Xq3N//vcLf2WzgdTi/3gUu3Z9KoqmlrEG4VuuLK8wJHofxzdQXz/knhiYg==", + "dev": true, + "license": "MIT", + "dependencies": { + "camelcase": "^6.3.0", + "map-obj": "^4.1.0", + "quick-lru": "^5.1.1", + "type-fest": "^1.2.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/del-cli/node_modules/decamelize": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-5.0.1.tgz", + "integrity": "sha512-VfxadyCECXgQlkoEAjeghAr5gY3Hf+IKjKb+X8tGVDtveCjN+USwprd2q3QXBR9T1+x2DG0XZF5/w+7HAtSaXA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/del-cli/node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "license": "MIT", + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/del-cli/node_modules/hosted-git-info": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", + "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", + "dev": true, + "license": "ISC", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/del-cli/node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/del-cli/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/del-cli/node_modules/meow": { + "version": "10.1.5", + "resolved": "https://registry.npmjs.org/meow/-/meow-10.1.5.tgz", + "integrity": "sha512-/d+PQ4GKmGvM9Bee/DPa8z3mXs/pkvJE2KEThngVNOqtmljC6K7NMPxtc2JeZYTmpWb9k/TmxjeL18ez3h7vCw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/minimist": "^1.2.2", + "camelcase-keys": "^7.0.0", + "decamelize": "^5.0.0", + "decamelize-keys": "^1.1.0", + "hard-rejection": "^2.1.0", + "minimist-options": "4.1.0", + "normalize-package-data": "^3.0.2", + "read-pkg-up": "^8.0.0", + "redent": "^4.0.0", + "trim-newlines": "^4.0.2", + "type-fest": "^1.2.2", + "yargs-parser": "^20.2.9" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/del-cli/node_modules/normalize-package-data": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", + "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "hosted-git-info": "^4.0.1", + "is-core-module": "^2.5.0", + "semver": "^7.3.4", + "validate-npm-package-license": "^3.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/del-cli/node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/del-cli/node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/del-cli/node_modules/quick-lru": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz", + "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/del-cli/node_modules/read-pkg": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-6.0.0.tgz", + "integrity": "sha512-X1Fu3dPuk/8ZLsMhEj5f4wFAF0DWoK7qhGJvgaijocXxBmSToKfbFtqbxMO7bVjNA1dmE5huAzjXj/ey86iw9Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/normalize-package-data": "^2.4.0", + "normalize-package-data": "^3.0.2", + "parse-json": "^5.2.0", + "type-fest": "^1.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/del-cli/node_modules/read-pkg-up": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-8.0.0.tgz", + "integrity": "sha512-snVCqPczksT0HS2EC+SxUndvSzn6LRCwpfSvLrIfR5BKDQQZMaI6jPRC9dYvYFDRAuFEAnkwww8kBBNE/3VvzQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "find-up": "^5.0.0", + "read-pkg": "^6.0.0", + "type-fest": "^1.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/del-cli/node_modules/redent": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-4.0.0.tgz", + "integrity": "sha512-tYkDkVVtYkSVhuQ4zBgfvciymHaeuel+zFKXShfDnFP5SyVEP7qo70Rf1jTOTCx3vGNAbnEi/xFkcfQVMIBWag==", + "dev": true, + "license": "MIT", + "dependencies": { + "indent-string": "^5.0.0", + "strip-indent": "^4.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/del-cli/node_modules/strip-indent": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-4.0.0.tgz", + "integrity": "sha512-mnVSV2l+Zv6BLpSD/8V87CW/y9EmmbYzGCIavsnsI6/nwn26DwffM/yztm30Z/I2DY9wdS3vXVCMnHDgZaVNoA==", + "dev": true, + "license": "MIT", + "dependencies": { + "min-indent": "^1.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/del-cli/node_modules/trim-newlines": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-4.1.1.tgz", + "integrity": "sha512-jRKj0n0jXWo6kh62nA5TEh3+4igKDXLvzBJcPpiizP7oOolUrYIxmVBG9TOtHYFHoddUk6YvAkGeGoSVTXfQXQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/del-cli/node_modules/type-fest": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz", + "integrity": "sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==", + "dev": true, + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/del-cli/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true, + "license": "ISC" + }, + "node_modules/del-cli/node_modules/yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=10" + } + }, + "node_modules/del/node_modules/slash": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", + "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/detect-indent": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-6.1.0.tgz", + "integrity": "sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/detect-libc": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", + "integrity": "sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==", + "dev": true, + "license": "Apache-2.0", + "optional": true, + "bin": { + "detect-libc": "bin/detect-libc.js" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/detect-newline": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz", + "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "dev": true, + "license": "MIT", + "dependencies": { + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/dot-prop": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", + "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-obj": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/dotgitignore": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/dotgitignore/-/dotgitignore-2.1.0.tgz", + "integrity": "sha512-sCm11ak2oY6DglEPpCB8TixLjWAxd3kJTs6UIcSasNYxXdFPV+YKlye92c8H4kKFqV5qYMIh7d+cYecEg0dIkA==", + "dev": true, + "license": "ISC", + "dependencies": { + "find-up": "^3.0.0", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/dotgitignore/node_modules/find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "license": "MIT", + "dependencies": { + "locate-path": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/dotgitignore/node_modules/locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/dotgitignore/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/dotgitignore/node_modules/p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-limit": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/dotgitignore/node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/dunder-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", + "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.1", + "es-errors": "^1.3.0", + "gopd": "^1.2.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", + "dev": true, + "license": "MIT" + }, + "node_modules/electron-to-chromium": { + "version": "1.5.166", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.166.tgz", + "integrity": "sha512-QPWqHL0BglzPYyJJ1zSSmwFFL6MFXhbACOCcsCdUMCkzPdS9/OIBVxg516X/Ado2qwAq8k0nJJ7phQPCqiaFAw==", + "dev": true, + "license": "ISC" + }, + "node_modules/emittery": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.13.1.tgz", + "integrity": "sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sindresorhus/emittery?sponsor=1" + } + }, + "node_modules/emoji-regex": { + "version": "10.4.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-10.4.0.tgz", + "integrity": "sha512-EC+0oUMY1Rqm4O6LLrgjtYDvcVYTy7chDnM4Q7030tP4Kwj3u/pR6gP9ygnp2CJMK5Gq+9Q2oqmrFJAz01DXjw==", + "dev": true, + "license": "MIT" + }, + "node_modules/emojis-list": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", + "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 4" + } + }, + "node_modules/enabled": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/enabled/-/enabled-2.0.0.tgz", + "integrity": "sha512-AKrN98kuwOzMIdAizXGI86UFBoo26CL21UM763y1h/GMSJ4/OHU9k2YlsmBpyScFo/wbLzWQJBMCW4+IO3/+OQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/enhanced-resolve": { + "version": "5.18.1", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.18.1.tgz", + "integrity": "sha512-ZSW3ma5GkcQBIpwZTSRAI8N71Uuwgs93IezB7mf7R60tC8ZbJideoDNKjHn2O9KIlx6rkGTTEk1xUCK2E1Y2Yg==", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.4", + "tapable": "^2.2.0" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/entities": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/entities/-/entities-6.0.1.tgz", + "integrity": "sha512-aN97NXWF6AWBTahfVOIrB/NShkzi5H7F9r1s9mD3cDj4Ko5f2qhhVoYMibXF7GlLveb/D2ioWay8lxI97Ven3g==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/env-paths": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", + "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/environment": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/environment/-/environment-1.1.0.tgz", + "integrity": "sha512-xUtoPkMggbz0MPyPiIWr1Kp4aeWJjDZ6SMvURhimjdZgsRuDplF5/s9hcgGhyXMhs+6vpnuoiZ2kFiu3FMnS8Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/errno": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.8.tgz", + "integrity": "sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "prr": "~1.0.1" + }, + "bin": { + "errno": "cli.js" + } + }, + "node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-arrayish": "^0.2.1" + } + }, + "node_modules/es-abstract": { + "version": "1.24.0", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.24.0.tgz", + "integrity": "sha512-WSzPgsdLtTcQwm4CROfS5ju2Wa1QQcVeT37jFjYzdFz1r9ahadC8B8/a4qxJxM+09F18iumCdRmlr96ZYkQvEg==", + "dev": true, + "license": "MIT", + "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.4", + "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.3.0", + "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-negative-zero": "^2.0.3", + "is-regex": "^1.2.1", + "is-set": "^2.0.3", + "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", + "stop-iteration-iterator": "^1.1.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.19" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/es-check": { + "version": "7.2.1", + "resolved": "https://registry.npmjs.org/es-check/-/es-check-7.2.1.tgz", + "integrity": "sha512-4sxU2OZ1aYYRRX2ajL3hDDBaY96Yr/OcH6MTRerIuOSyil6SQYQQ0b48uqVfYGRCiI0NgJbtY6Sbmf75oPaTeQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "acorn": "8.11.3", + "commander": "12.0.0", + "fast-glob": "^3.3.2", + "supports-color": "^8.1.1", + "winston": "3.13.0" + }, + "bin": { + "es-check": "index.js" + }, + "engines": { + "node": ">= 4" + } + }, + "node_modules/es-check/node_modules/commander": { + "version": "12.0.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-12.0.0.tgz", + "integrity": "sha512-MwVNWlYjDTtOjX5PiD7o5pK0UrFU/OYgcJfjjK4RaHZETNtjJqrZa9Y9ds88+A+f+d5lv+561eZ+yCKoS3gbAA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + } + }, + "node_modules/es-define-property": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", + "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-module-lexer": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.7.0.tgz", + "integrity": "sha512-jEQoCwk8hyb2AZziIOLhDqpm5+2ww5uIE6lkO/6jcOCusfk6LhMHpXXfBLXTZ7Ydyt0j4VoUQv6uGNYbdW+kBA==", + "dev": true, + "license": "MIT" + }, + "node_modules/es-object-atoms": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", + "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-set-tostringtag": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz", + "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-shim-unscopables": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.1.0.tgz", + "integrity": "sha512-d9T8ucsEhh8Bi1woXCf+TIKDIROLG5WCkxg8geBCbvk22kzwC5G2OnXVMO6FUsvQlgUUXQ2itephWDLqDzbeCw==", + "dev": true, + "license": "MIT", + "dependencies": { + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-to-primitive": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.3.0.tgz", + "integrity": "sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-callable": "^1.2.7", + "is-date-object": "^1.0.5", + "is-symbol": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/escalade": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint": { + "version": "8.57.1", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.1.tgz", + "integrity": "sha512-ypowyDxpVSYpkXr9WPv2PAZCtNip1Mv5KTW0SCurXv/9iOpcrH9PaqUElksqEB6pChqHGDRCFTyrZlGhnLNGiA==", + "deprecated": "This version is no longer supported. Please see https://eslint.org/version-support for other options.", + "dev": true, + "license": "MIT", + "dependencies": { + "@eslint-community/eslint-utils": "^4.2.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.4", + "@eslint/js": "8.57.1", + "@humanwhocodes/config-array": "^0.13.0", + "@humanwhocodes/module-importer": "^1.0.1", + "@nodelib/fs.walk": "^1.2.8", + "@ungap/structured-clone": "^1.2.0", + "ajv": "^6.12.4", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.3.2", + "doctrine": "^3.0.0", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.3", + "espree": "^9.6.1", + "esquery": "^1.4.2", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "globals": "^13.19.0", + "graphemer": "^1.4.0", + "ignore": "^5.2.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "is-path-inside": "^3.0.3", + "js-yaml": "^4.1.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.3", + "strip-ansi": "^6.0.1", + "text-table": "^0.2.0" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-config-prettier": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-9.1.0.tgz", + "integrity": "sha512-NSWl5BFQWEPi1j4TjVNItzYV7dZXZ+wP6I6ZhrBGpChQhZRUaElihE9uRRkcbRnNb76UMKDF3r+WTmNcGPKsqw==", + "dev": true, + "license": "MIT", + "bin": { + "eslint-config-prettier": "bin/cli.js" + }, + "peerDependencies": { + "eslint": ">=7.0.0" + } + }, + "node_modules/eslint-import-resolver-node": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz", + "integrity": "sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "^3.2.7", + "is-core-module": "^2.13.0", + "resolve": "^1.22.4" + } + }, + "node_modules/eslint-import-resolver-node/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/eslint-module-utils": { + "version": "2.12.0", + "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.12.0.tgz", + "integrity": "sha512-wALZ0HFoytlyh/1+4wuZ9FJCD/leWHQzzrxJ8+rebyReSLk7LApMyd3WJaLVoN+D5+WIdJyDK1c6JnE65V4Zyg==", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "^3.2.7" + }, + "engines": { + "node": ">=4" + }, + "peerDependenciesMeta": { + "eslint": { + "optional": true + } + } + }, + "node_modules/eslint-module-utils/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/eslint-plugin-import": { + "version": "2.31.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.31.0.tgz", + "integrity": "sha512-ixmkI62Rbc2/w8Vfxyh1jQRTdRTF52VxwRVHl/ykPAmqG+Nb7/kNn+byLP0LxPgI7zWA16Jt82SybJInmMia3A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@rtsao/scc": "^1.1.0", + "array-includes": "^3.1.8", + "array.prototype.findlastindex": "^1.2.5", + "array.prototype.flat": "^1.3.2", + "array.prototype.flatmap": "^1.3.2", + "debug": "^3.2.7", + "doctrine": "^2.1.0", + "eslint-import-resolver-node": "^0.3.9", + "eslint-module-utils": "^2.12.0", + "hasown": "^2.0.2", + "is-core-module": "^2.15.1", + "is-glob": "^4.0.3", + "minimatch": "^3.1.2", + "object.fromentries": "^2.0.8", + "object.groupby": "^1.0.3", + "object.values": "^1.2.0", + "semver": "^6.3.1", + "string.prototype.trimend": "^1.0.8", + "tsconfig-paths": "^3.15.0" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 || ^9" + } + }, + "node_modules/eslint-plugin-import/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/eslint-plugin-import/node_modules/doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/eslint-plugin-import/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/eslint-scope": { + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", + "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/eslint/node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true, + "license": "Python-2.0" + }, + "node_modules/eslint/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/eslint/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/eslint/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/eslint/node_modules/file-entry-cache": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", + "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", + "dev": true, + "license": "MIT", + "dependencies": { + "flat-cache": "^3.0.4" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/eslint/node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "license": "MIT", + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint/node_modules/flat-cache": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz", + "integrity": "sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==", + "dev": true, + "license": "MIT", + "dependencies": { + "flatted": "^3.2.9", + "keyv": "^4.5.3", + "rimraf": "^3.0.2" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/eslint/node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dev": true, + "license": "ISC", + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/eslint/node_modules/globals": { + "version": "13.24.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", + "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint/node_modules/is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/eslint/node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, + "license": "MIT", + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/eslint/node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint/node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint/node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/eslint/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/eslint/node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true, + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/espree": { + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", + "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "acorn": "^8.9.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.4.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true, + "license": "BSD-2-Clause", + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/esquery": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.6.0.tgz", + "integrity": "sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/eventemitter3": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-5.0.1.tgz", + "integrity": "sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==", + "dev": true, + "license": "MIT" + }, + "node_modules/events": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8.x" + } + }, + "node_modules/execa": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "dev": true, + "license": "MIT", + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/exit-x": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/exit-x/-/exit-x-0.2.2.tgz", + "integrity": "sha512-+I6B/IkJc1o/2tiURyz/ivu/O0nKNEArIUB5O7zBrlDVJr22SCLH3xTeEry428LvFhRzIA1g8izguxJ/gbNcVQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/expect": { + "version": "30.0.0", + "resolved": "https://registry.npmjs.org/expect/-/expect-30.0.0.tgz", + "integrity": "sha512-xCdPp6gwiR9q9lsPCHANarIkFTN/IMZso6Kkq03sOm9IIGtzK/UJqml0dkhHibGh8HKOj8BIDIpZ0BZuU7QK6w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/expect-utils": "30.0.0", + "@jest/get-type": "30.0.0", + "jest-matcher-utils": "30.0.0", + "jest-message-util": "30.0.0", + "jest-mock": "30.0.0", + "jest-util": "30.0.0" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" + } + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true, + "license": "MIT" + }, + "node_modules/fast-equals": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/fast-equals/-/fast-equals-5.2.2.tgz", + "integrity": "sha512-V7/RktU11J3I36Nwq2JnZEM7tNm17eBJz+u25qdxBZeCKiX6BkVSZQjwWIr+IobgnZy+ag73tTZgZi7tr0LrBw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/fast-glob": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.3.tgz", + "integrity": "sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.8" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true, + "license": "MIT" + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", + "dev": true, + "license": "MIT" + }, + "node_modules/fast-uri": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.0.6.tgz", + "integrity": "sha512-Atfo14OibSv5wAp4VWNsFYE1AchQRTv9cBGWET4pZWHzYshFSS9NQI6I57rdKn9croWVMbYFbLhJ+yJvmZIIHw==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fastify" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/fastify" + } + ], + "license": "BSD-3-Clause" + }, + "node_modules/fastq": { + "version": "1.19.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.19.1.tgz", + "integrity": "sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/fb-watchman": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz", + "integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "bser": "2.1.1" + } + }, + "node_modules/fdir": { + "version": "6.4.6", + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.4.6.tgz", + "integrity": "sha512-hiFoqpyZcfNm1yc4u8oWCf9A2c4D3QjCrks3zmoVKVxpQRzmPNar1hUJcBG2RQHvEVGDN+Jm81ZheVLAQMK6+w==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "picomatch": "^3 || ^4" + }, + "peerDependenciesMeta": { + "picomatch": { + "optional": true + } + } + }, + "node_modules/fecha": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/fecha/-/fecha-4.2.3.tgz", + "integrity": "sha512-OP2IUU6HeYKJi3i0z4A19kHMQoLVs4Hc+DPqqxI2h/DPZHTm/vjsfC6P0b4jCMy14XizLBqvndQ+UilD7707Jw==", + "dev": true, + "license": "MIT" + }, + "node_modules/figures": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", + "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", + "dev": true, + "license": "MIT", + "dependencies": { + "escape-string-regexp": "^1.0.5" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/figures/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/file-entry-cache": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-9.1.0.tgz", + "integrity": "sha512-/pqPFG+FdxWQj+/WSuzXSDaNzxgTLr/OrR1QuqfEZzDakpdYE70PwUxL7BPUa8hpjbvY1+qvCl8k+8Tq34xJgg==", + "dev": true, + "license": "MIT", + "dependencies": { + "flat-cache": "^5.0.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/file-loader": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-6.2.0.tgz", + "integrity": "sha512-qo3glqyTa61Ytg4u73GultjHGjdRyig3tG6lPtyX/jOEJvHif9uB0/OCI2Kif6ctF3caQTW2G5gym21oAsI4pw==", + "dev": true, + "license": "MIT", + "dependencies": { + "loader-utils": "^2.0.0", + "schema-utils": "^3.0.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.0.0 || ^5.0.0" + } + }, + "node_modules/fill-range": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", + "dev": true, + "license": "MIT", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/find-up": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-7.0.0.tgz", + "integrity": "sha512-YyZM99iHrqLKjmt4LJDj58KI+fYyufRLBSYcqycxf//KpBk9FoewoGX0450m9nB44qrZnovzC2oeP5hUibxc/g==", + "dev": true, + "license": "MIT", + "dependencies": { + "locate-path": "^7.2.0", + "path-exists": "^5.0.0", + "unicorn-magic": "^0.1.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/flat-cache": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-5.0.0.tgz", + "integrity": "sha512-JrqFmyUl2PnPi1OvLyTVHnQvwQ0S+e6lGSwu8OkAZlSaNIZciTY2H/cOOROxsBA1m/LZNHDsqAgDZt6akWcjsQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "flatted": "^3.3.1", + "keyv": "^4.5.4" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/flatted": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.3.tgz", + "integrity": "sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==", + "dev": true, + "license": "ISC" + }, + "node_modules/fn.name": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fn.name/-/fn.name-1.1.0.tgz", + "integrity": "sha512-GRnmB5gPyJpAhTQdSZTSp9uaPSvl09KoYcMQtsB9rQoOmzs9dH6ffeccH+Z+cv6P68Hu5bC6JjRh4Ah/mHSNRw==", + "dev": true, + "license": "MIT" + }, + "node_modules/for-each": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.5.tgz", + "integrity": "sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-callable": "^1.2.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/foreground-child": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.1.tgz", + "integrity": "sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==", + "dev": true, + "license": "ISC", + "dependencies": { + "cross-spawn": "^7.0.6", + "signal-exit": "^4.0.1" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/foreground-child/node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/fraction.js": { + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.3.7.tgz", + "integrity": "sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==", + "dev": true, + "license": "MIT", + "engines": { + "node": "*" + }, + "funding": { + "type": "patreon", + "url": "https://github.com/sponsors/rawify" + } + }, + "node_modules/fs-readdir-recursive": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fs-readdir-recursive/-/fs-readdir-recursive-1.1.0.tgz", + "integrity": "sha512-GNanXlVr2pf02+sPN40XN8HG+ePaNcvM0q5mZBd668Obwb0yD5GiUbZOFgwn8kGMY6I3mdyDJzieUy3PTYyTRA==", + "dev": true, + "license": "MIT" + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true, + "license": "ISC" + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/function.prototype.name": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.8.tgz", + "integrity": "sha512-e5iwyodOHhbMr/yNrc7fDYG4qlbIvI5gajyzPnb5TCwyhjApznQh1BMFou9b30SevY43gCJKXycoCBjMbsuW0Q==", + "dev": true, + "license": "MIT", + "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" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/functions-have-names": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/gensequence": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/gensequence/-/gensequence-7.0.0.tgz", + "integrity": "sha512-47Frx13aZh01afHJTB3zTtKIlFI6vWY+MYCN9Qpew6i52rfKjnhCF/l1YlC8UmEMvvntZZ6z4PiCcmyuedR2aQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + } + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true, + "license": "ISC", + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/get-east-asian-width": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/get-east-asian-width/-/get-east-asian-width-1.3.0.tgz", + "integrity": "sha512-vpeMIQKxczTD/0s2CdEWHcb0eeJe6TFjxb+J5xgX7hScxqrGuyjmv4c1D4A/gelKfyox0gJJwIHF+fLjeaM8kQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/get-intrinsic": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", + "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "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" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-package-type": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", + "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/get-pkg-repo": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/get-pkg-repo/-/get-pkg-repo-4.2.1.tgz", + "integrity": "sha512-2+QbHjFRfGB74v/pYWjd5OhU3TDIC2Gv/YKUTk/tCvAz0pkn/Mz6P3uByuBimLOcPvN2jYdScl3xGFSrx0jEcA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@hutson/parse-repository-url": "^3.0.0", + "hosted-git-info": "^4.0.0", + "through2": "^2.0.0", + "yargs": "^16.2.0" + }, + "bin": { + "get-pkg-repo": "src/cli.js" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/get-pkg-repo/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/get-pkg-repo/node_modules/cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } + }, + "node_modules/get-pkg-repo/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/get-pkg-repo/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/get-pkg-repo/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true, + "license": "MIT" + }, + "node_modules/get-pkg-repo/node_modules/hosted-git-info": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", + "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", + "dev": true, + "license": "ISC", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/get-pkg-repo/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/get-pkg-repo/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/get-pkg-repo/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/get-pkg-repo/node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "dev": true, + "license": "MIT", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/get-pkg-repo/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true, + "license": "MIT" + }, + "node_modules/get-pkg-repo/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "license": "MIT", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/get-pkg-repo/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "license": "MIT", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/get-pkg-repo/node_modules/through2": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", + "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "readable-stream": "~2.3.6", + "xtend": "~4.0.1" + } + }, + "node_modules/get-pkg-repo/node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/get-pkg-repo/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true, + "license": "ISC" + }, + "node_modules/get-pkg-repo/node_modules/yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "dev": true, + "license": "MIT", + "dependencies": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/get-pkg-repo/node_modules/yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=10" + } + }, + "node_modules/get-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", + "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", + "dev": true, + "license": "MIT", + "dependencies": { + "dunder-proto": "^1.0.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/get-symbol-description": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.1.0.tgz", + "integrity": "sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/git-raw-commits": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/git-raw-commits/-/git-raw-commits-4.0.0.tgz", + "integrity": "sha512-ICsMM1Wk8xSGMowkOmPrzo2Fgmfo4bMHLNX6ytHjajRJUqvHOw/TFapQ+QG75c3X/tTDDhOSRPGC52dDbNM8FQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "dargs": "^8.0.0", + "meow": "^12.0.1", + "split2": "^4.0.0" + }, + "bin": { + "git-raw-commits": "cli.mjs" + }, + "engines": { + "node": ">=16" + } + }, + "node_modules/git-remote-origin-url": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/git-remote-origin-url/-/git-remote-origin-url-2.0.0.tgz", + "integrity": "sha512-eU+GGrZgccNJcsDH5LkXR3PB9M958hxc7sbA8DFJjrv9j4L2P/eZfKhM+QD6wyzpiv+b1BpK0XrYCxkovtjSLw==", + "dev": true, + "license": "MIT", + "dependencies": { + "gitconfiglocal": "^1.0.0", + "pify": "^2.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/git-remote-origin-url/node_modules/pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/git-semver-tags": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/git-semver-tags/-/git-semver-tags-4.1.1.tgz", + "integrity": "sha512-OWyMt5zBe7xFs8vglMmhM9lRQzCWL3WjHtxNNfJTMngGym7pC1kh8sP6jevfydJ6LP3ZvGxfb6ABYgPUM0mtsA==", + "dev": true, + "license": "MIT", + "dependencies": { + "meow": "^8.0.0", + "semver": "^6.0.0" + }, + "bin": { + "git-semver-tags": "cli.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/git-semver-tags/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "license": "MIT", + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/git-semver-tags/node_modules/hosted-git-info": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", + "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", + "dev": true, + "license": "ISC", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/git-semver-tags/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/git-semver-tags/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/git-semver-tags/node_modules/meow": { + "version": "8.1.2", + "resolved": "https://registry.npmjs.org/meow/-/meow-8.1.2.tgz", + "integrity": "sha512-r85E3NdZ+mpYk1C6RjPFEMSE+s1iZMuHtsHAqY0DT3jZczl0diWUZ8g6oU7h0M9cD2EL+PzaYghhCLzR0ZNn5Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/minimist": "^1.2.0", + "camelcase-keys": "^6.2.2", + "decamelize-keys": "^1.1.0", + "hard-rejection": "^2.1.0", + "minimist-options": "4.1.0", + "normalize-package-data": "^3.0.0", + "read-pkg-up": "^7.0.1", + "redent": "^3.0.0", + "trim-newlines": "^3.0.0", + "type-fest": "^0.18.0", + "yargs-parser": "^20.2.3" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/git-semver-tags/node_modules/normalize-package-data": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", + "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "hosted-git-info": "^4.0.1", + "is-core-module": "^2.5.0", + "semver": "^7.3.4", + "validate-npm-package-license": "^3.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/git-semver-tags/node_modules/normalize-package-data/node_modules/semver": { + "version": "7.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", + "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/git-semver-tags/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/git-semver-tags/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/git-semver-tags/node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/git-semver-tags/node_modules/read-pkg": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", + "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/normalize-package-data": "^2.4.0", + "normalize-package-data": "^2.5.0", + "parse-json": "^5.0.0", + "type-fest": "^0.6.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/git-semver-tags/node_modules/read-pkg-up": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", + "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", + "dev": true, + "license": "MIT", + "dependencies": { + "find-up": "^4.1.0", + "read-pkg": "^5.2.0", + "type-fest": "^0.8.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/git-semver-tags/node_modules/read-pkg-up/node_modules/type-fest": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", + "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", + "dev": true, + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=8" + } + }, + "node_modules/git-semver-tags/node_modules/read-pkg/node_modules/hosted-git-info": { + "version": "2.8.9", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", + "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", + "dev": true, + "license": "ISC" + }, + "node_modules/git-semver-tags/node_modules/read-pkg/node_modules/normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + } + }, + "node_modules/git-semver-tags/node_modules/read-pkg/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/git-semver-tags/node_modules/read-pkg/node_modules/type-fest": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", + "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", + "dev": true, + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=8" + } + }, + "node_modules/git-semver-tags/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/git-semver-tags/node_modules/type-fest": { + "version": "0.18.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.18.1.tgz", + "integrity": "sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw==", + "dev": true, + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/git-semver-tags/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true, + "license": "ISC" + }, + "node_modules/git-semver-tags/node_modules/yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=10" + } + }, + "node_modules/gitconfiglocal": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/gitconfiglocal/-/gitconfiglocal-1.0.0.tgz", + "integrity": "sha512-spLUXeTAVHxDtKsJc8FkFVgFtMdEN9qPGpL23VfSHx4fP4+Ds097IXLvymbnDH8FnmxX5Nr9bPw3A+AQ6mWEaQ==", + "dev": true, + "license": "BSD", + "dependencies": { + "ini": "^1.3.2" + } + }, + "node_modules/gitconfiglocal/node_modules/ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", + "dev": true, + "license": "ISC" + }, + "node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "dev": true, + "license": "ISC", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "license": "ISC", + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/glob-to-regexp": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", + "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", + "dev": true, + "license": "BSD-2-Clause" + }, + "node_modules/global-directory": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/global-directory/-/global-directory-4.0.1.tgz", + "integrity": "sha512-wHTUcDUoZ1H5/0iVqEudYW4/kAlN5cZ3j/bXn0Dpbizl9iaUVeWSHqiOjsgk6OW2bkLclbBjzewBz6weQ1zA2Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "ini": "4.1.1" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/globalthis": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz", + "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "define-properties": "^1.2.1", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/globby": { + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/globby/-/globby-13.2.2.tgz", + "integrity": "sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w==", + "dev": true, + "license": "MIT", + "dependencies": { + "dir-glob": "^3.0.1", + "fast-glob": "^3.3.0", + "ignore": "^5.2.4", + "merge2": "^1.4.1", + "slash": "^4.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/globby/node_modules/slash": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", + "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/gopd": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", + "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/graphemer": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", + "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", + "dev": true, + "license": "MIT" + }, + "node_modules/handlebars": { + "version": "4.7.8", + "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.8.tgz", + "integrity": "sha512-vafaFqs8MZkRrSX7sFVUdo3ap/eNiLnb4IakshzvP56X5Nr1iGKAIqdX6tMlm6HcNRIkr6AxO5jFEoJzzpT8aQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "minimist": "^1.2.5", + "neo-async": "^2.6.2", + "source-map": "^0.6.1", + "wordwrap": "^1.0.0" + }, + "bin": { + "handlebars": "bin/handlebars" + }, + "engines": { + "node": ">=0.4.7" + }, + "optionalDependencies": { + "uglify-js": "^3.1.4" + } + }, + "node_modules/hard-rejection": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/hard-rejection/-/hard-rejection-2.1.0.tgz", + "integrity": "sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/has-bigints": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.1.0.tgz", + "integrity": "sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/has-own-prop": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-own-prop/-/has-own-prop-2.0.0.tgz", + "integrity": "sha512-Pq0h+hvsVm6dDEa8x82GnLSYHOzNDt7f0ddFa3FqcQlgzEiptPqL+XrOJNavjOzSYiYWIrgeVYYgGlLmnxwilQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/has-property-descriptors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", + "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-define-property": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-proto": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.2.0.tgz", + "integrity": "sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "dunder-proto": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-symbols": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", + "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-tostringtag": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", + "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-symbols": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/hosted-git-info": { + "version": "2.8.9", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", + "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", + "dev": true, + "license": "ISC" + }, + "node_modules/html-encoding-sniffer": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-4.0.0.tgz", + "integrity": "sha512-Y22oTqIU4uuPgEemfz7NDJz6OeKf12Lsu+QC+s3BVpda64lTiMYCyGwg5ki4vFxkMwQdeZDl2adZoqUgdFuTgQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "whatwg-encoding": "^3.1.1" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/html-escaper": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", + "dev": true, + "license": "MIT" + }, + "node_modules/http-proxy-agent": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz", + "integrity": "sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==", + "dev": true, + "license": "MIT", + "dependencies": { + "agent-base": "^7.1.0", + "debug": "^4.3.4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/https-proxy-agent": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz", + "integrity": "sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==", + "dev": true, + "license": "MIT", + "dependencies": { + "agent-base": "^7.1.2", + "debug": "4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/human-signals": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", + "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=10.17.0" + } + }, + "node_modules/husky": { + "version": "9.1.7", + "resolved": "https://registry.npmjs.org/husky/-/husky-9.1.7.tgz", + "integrity": "sha512-5gs5ytaNjBrh5Ow3zrvdUUY+0VxIuWVL4i9irt6friV+BqdCfmV11CQTWMiBYWHbXhco+J1kHfTOUkePhCDvMA==", + "dev": true, + "license": "MIT", + "bin": { + "husky": "bin.js" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/typicode" + } + }, + "node_modules/hyperdyperid": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/hyperdyperid/-/hyperdyperid-1.2.0.tgz", + "integrity": "sha512-Y93lCzHYgGWdrJ66yIktxiaGULYc6oGiABxhcO5AufBeOyoIdZF7bIfLaOrbM0iGIOXQQgxxRrFEnb+Y6w1n4A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10.18" + } + }, + "node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "dev": true, + "license": "MIT", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/icss-utils": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz", + "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", + "license": "ISC", + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/ignore": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", + "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 4" + } + }, + "node_modules/image-size": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/image-size/-/image-size-0.5.5.tgz", + "integrity": "sha512-6TDAlDPZxUFCv+fuOkIoXT/V/f3Qbq8e37p+YOiYrUv3v9cc3/6x78VdfPgFVaB9dZYeLUfKgHRebpkm/oP2VQ==", + "dev": true, + "license": "MIT", + "optional": true, + "bin": { + "image-size": "bin/image-size.js" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/immutable": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-5.1.3.tgz", + "integrity": "sha512-+chQdDfvscSF1SJqv2gn4SRO2ZyS3xL3r7IW/wWEEzrzLisnOlKiQu5ytC/BVNcS15C39WT2Hg/bjKjDMcu+zg==", + "dev": true, + "license": "MIT" + }, + "node_modules/import-fresh": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.1.tgz", + "integrity": "sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/import-fresh/node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "license": "MIT", + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/import-fresh/node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/import-local": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.2.0.tgz", + "integrity": "sha512-2SPlun1JUPWoM6t3F0dw0FkCF/jWY8kttcY4f599GLTSjh2OCuuhdTkJQsEcZzBqbXZGKMK2OqW1oZsjtf/gQA==", + "dev": true, + "license": "MIT", + "dependencies": { + "pkg-dir": "^4.2.0", + "resolve-cwd": "^3.0.0" + }, + "bin": { + "import-local-fixture": "fixtures/cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/import-meta-resolve": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/import-meta-resolve/-/import-meta-resolve-4.1.0.tgz", + "integrity": "sha512-I6fiaX09Xivtk+THaMfAwnA3MVA5Big1WHF1Dfx9hFuvNIWpXnorlkzhcQf6ehrqQiiZECRt1poOAkPmer3ruw==", + "dev": true, + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/indent-string": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-5.0.0.tgz", + "integrity": "sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", + "dev": true, + "license": "ISC", + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/ini": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.1.tgz", + "integrity": "sha512-QQnnxNyfvmHFIsj7gkPcYymR8Jdw/o7mp5ZFihxn6h8Ci6fh3Dx4E1gPjpQEpIuPo9XVNY/ZUwh4BPMjGyL01g==", + "dev": true, + "license": "ISC", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/internal-slot": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.1.0.tgz", + "integrity": "sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "hasown": "^2.0.2", + "side-channel": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/is-array-buffer": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.5.tgz", + "integrity": "sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "get-intrinsic": "^1.2.6" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", + "dev": true, + "license": "MIT" + }, + "node_modules/is-async-function": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-async-function/-/is-async-function-2.1.1.tgz", + "integrity": "sha512-9dgM/cZBnNvjzaMYHVoxxfPj2QXt22Ev7SuuPrs+xav0ukGB0S6d4ydZdEiM48kLx5kDV+QBPrpVnFyefL8kkQ==", + "dev": true, + "license": "MIT", + "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" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-bigint": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.1.0.tgz", + "integrity": "sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-bigints": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-boolean-object": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.2.2.tgz", + "integrity": "sha512-wa56o2/ElJMYqjCjGkXri7it5FbebW5usLw/nPmCMs5DeZ7eziSYZhSmPRn0txqeW4LnAmQQU7FgqLpsEFKM4A==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-callable": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-core-module": { + "version": "2.16.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.1.tgz", + "integrity": "sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==", + "dev": true, + "license": "MIT", + "dependencies": { + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-data-view": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.2.tgz", + "integrity": "sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "get-intrinsic": "^1.2.6", + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-date-object": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.1.0.tgz", + "integrity": "sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-finalizationregistry": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-finalizationregistry/-/is-finalizationregistry-1.1.1.tgz", + "integrity": "sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-4.0.0.tgz", + "integrity": "sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-generator-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", + "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/is-generator-function": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.1.0.tgz", + "integrity": "sha512-nPUB5km40q9e8UfN/Zc24eLlzdSf9OfKByBw9CIdw4H1giPMeA0OIJvbchsCu4npfI2QcMVBsGEBHKZ7wLTWmQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "get-proto": "^1.0.0", + "has-tostringtag": "^1.0.2", + "safe-regex-test": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-map": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.3.tgz", + "integrity": "sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-negative-zero": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.3.tgz", + "integrity": "sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-number-object": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.1.1.tgz", + "integrity": "sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-obj": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", + "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-path-cwd": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-3.0.0.tgz", + "integrity": "sha512-kyiNFFLU0Ampr6SDZitD/DwUo4Zs1nSdnygUBqsu3LooL00Qvb5j+UnvApUn/TTj1J3OuE6BTdQ5rudKmU2ZaA==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-path-inside": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-4.0.0.tgz", + "integrity": "sha512-lJJV/5dYS+RcL8uQdBDW9c9uWFLLBNRyFhnAKXw5tVqLlKZ4RMGZKv+YQ/IA3OhD+RpbJa1LLFM1FQPGyIXvOA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-plain-obj": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", + "integrity": "sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-potential-custom-element-name": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz", + "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/is-regex": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.2.1.tgz", + "integrity": "sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "gopd": "^1.2.0", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-set": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.3.tgz", + "integrity": "sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-shared-array-buffer": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.4.tgz", + "integrity": "sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-string": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.1.1.tgz", + "integrity": "sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-symbol": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.1.1.tgz", + "integrity": "sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "has-symbols": "^1.1.0", + "safe-regex-test": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-text-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-text-path/-/is-text-path-2.0.0.tgz", + "integrity": "sha512-+oDTluR6WEjdXEJMnC2z6A4FRwFoYuvShVVEGsS7ewc0UTi2QtAKMDJuL4BDEVt+5T7MjFo12RP8ghOM75oKJw==", + "dev": true, + "license": "MIT", + "dependencies": { + "text-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-typed-array": { + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.15.tgz", + "integrity": "sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "which-typed-array": "^1.1.16" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakmap": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.2.tgz", + "integrity": "sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakref": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.1.1.tgz", + "integrity": "sha512-6i9mGWSlqzNMEqpCp93KwRS1uUOodk2OJ6b+sq7ZPDSy2WuI5NFIxp/254TytR8ftefexkWn5xNiHUNpPOfSew==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakset": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.4.tgz", + "integrity": "sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "get-intrinsic": "^1.2.6" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-what": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/is-what/-/is-what-3.14.1.tgz", + "integrity": "sha512-sNxgpk9793nzSs7bA6JQJGeIuRBQhAaNGG77kzYQgMkrID+lS6SlK07K5LaptscDlSaIgH+GPFzf+d75FVxozA==", + "dev": true, + "license": "MIT" + }, + "node_modules/isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", + "dev": true, + "license": "MIT" + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true, + "license": "ISC" + }, + "node_modules/istanbul-lib-coverage": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz", + "integrity": "sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-instrument": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.3.tgz", + "integrity": "sha512-Vtgk7L/R2JHyyGW07spoFlB8/lpjiOLTjMdms6AFMraYt3BaJauod/NGrfnVG/y4Ix1JEuMRPDPEj2ua+zz1/Q==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "@babel/core": "^7.23.9", + "@babel/parser": "^7.23.9", + "@istanbuljs/schema": "^0.1.3", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^7.5.4" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-report": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", + "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "istanbul-lib-coverage": "^3.0.0", + "make-dir": "^4.0.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-report/node_modules/make-dir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", + "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", + "dev": true, + "license": "MIT", + "dependencies": { + "semver": "^7.5.3" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/istanbul-lib-report/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-source-maps": { + "version": "5.0.6", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-5.0.6.tgz", + "integrity": "sha512-yg2d+Em4KizZC5niWhQaIomgf5WlL4vOOjZ5xGCmF8SnPE/mDWWXgvRExdcpCgh9lLRRa1/fSYp2ymmbJ1pI+A==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.23", + "debug": "^4.1.1", + "istanbul-lib-coverage": "^3.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-reports": { + "version": "3.1.7", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.7.tgz", + "integrity": "sha512-BewmUXImeuRk2YY0PVbxgKAysvhRPUQE0h5QRM++nVWyubKGV0l8qQ5op8+B2DOmwSe63Jivj0BjkPQVf8fP5g==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jackspeak": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.3.tgz", + "integrity": "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==", + "dev": true, + "license": "BlueOak-1.0.0", + "dependencies": { + "@isaacs/cliui": "^8.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + }, + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" + } + }, + "node_modules/jest": { + "version": "30.0.0", + "resolved": "https://registry.npmjs.org/jest/-/jest-30.0.0.tgz", + "integrity": "sha512-/3G2iFwsUY95vkflmlDn/IdLyLWqpQXcftptooaPH4qkyU52V7qVYf1BjmdSPlp1+0fs6BmNtrGaSFwOfV07ew==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/core": "30.0.0", + "@jest/types": "30.0.0", + "import-local": "^3.2.0", + "jest-cli": "30.0.0" + }, + "bin": { + "jest": "bin/jest.js" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/jest-changed-files": { + "version": "30.0.0", + "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-30.0.0.tgz", + "integrity": "sha512-rzGpvCdPdEV1Ma83c1GbZif0L2KAm3vXSXGRlpx7yCt0vhruwCNouKNRh3SiVcISHP1mb3iJzjb7tAEnNu1laQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "execa": "^5.1.1", + "jest-util": "30.0.0", + "p-limit": "^3.1.0" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" + } + }, + "node_modules/jest-circus": { + "version": "30.0.0", + "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-30.0.0.tgz", + "integrity": "sha512-nTwah78qcKVyndBS650hAkaEmwWGaVsMMoWdJwMnH77XArRJow2Ir7hc+8p/mATtxVZuM9OTkA/3hQocRIK5Dw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/environment": "30.0.0", + "@jest/expect": "30.0.0", + "@jest/test-result": "30.0.0", + "@jest/types": "30.0.0", + "@types/node": "*", + "chalk": "^4.1.2", + "co": "^4.6.0", + "dedent": "^1.6.0", + "is-generator-fn": "^2.1.0", + "jest-each": "30.0.0", + "jest-matcher-utils": "30.0.0", + "jest-message-util": "30.0.0", + "jest-runtime": "30.0.0", + "jest-snapshot": "30.0.0", + "jest-util": "30.0.0", + "p-limit": "^3.1.0", + "pretty-format": "30.0.0", + "pure-rand": "^7.0.0", + "slash": "^3.0.0", + "stack-utils": "^2.0.6" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" + } + }, + "node_modules/jest-circus/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-circus/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-circus/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-circus/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/jest-circus/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-circus/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-cli": { + "version": "30.0.0", + "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-30.0.0.tgz", + "integrity": "sha512-fWKAgrhlwVVCfeizsmIrPRTBYTzO82WSba3gJniZNR3PKXADgdC0mmCSK+M+t7N8RCXOVfY6kvCkvjUNtzmHYQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/core": "30.0.0", + "@jest/test-result": "30.0.0", + "@jest/types": "30.0.0", + "chalk": "^4.1.2", + "exit-x": "^0.2.2", + "import-local": "^3.2.0", + "jest-config": "30.0.0", + "jest-util": "30.0.0", + "jest-validate": "30.0.0", + "yargs": "^17.7.2" + }, + "bin": { + "jest": "bin/jest.js" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/jest-cli/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-cli/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-cli/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-cli/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/jest-cli/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-config": { + "version": "30.0.0", + "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-30.0.0.tgz", + "integrity": "sha512-p13a/zun+sbOMrBnTEUdq/5N7bZMOGd1yMfqtAJniPNuzURMay4I+vxZLK1XSDbjvIhmeVdG8h8RznqYyjctyg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/core": "^7.27.4", + "@jest/get-type": "30.0.0", + "@jest/pattern": "30.0.0", + "@jest/test-sequencer": "30.0.0", + "@jest/types": "30.0.0", + "babel-jest": "30.0.0", + "chalk": "^4.1.2", + "ci-info": "^4.2.0", + "deepmerge": "^4.3.1", + "glob": "^10.3.10", + "graceful-fs": "^4.2.11", + "jest-circus": "30.0.0", + "jest-docblock": "30.0.0", + "jest-environment-node": "30.0.0", + "jest-regex-util": "30.0.0", + "jest-resolve": "30.0.0", + "jest-runner": "30.0.0", + "jest-util": "30.0.0", + "jest-validate": "30.0.0", + "micromatch": "^4.0.8", + "parse-json": "^5.2.0", + "pretty-format": "30.0.0", + "slash": "^3.0.0", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" + }, + "peerDependencies": { + "@types/node": "*", + "esbuild-register": ">=3.4.0", + "ts-node": ">=9.0.0" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "esbuild-register": { + "optional": true + }, + "ts-node": { + "optional": true + } + } + }, + "node_modules/jest-config/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-config/node_modules/brace-expansion": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", + "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/jest-config/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-config/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-config/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/jest-config/node_modules/glob": { + "version": "10.4.5", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", + "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==", + "dev": true, + "license": "ISC", + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^3.1.2", + "minimatch": "^9.0.4", + "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", + "path-scurry": "^1.11.1" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/jest-config/node_modules/minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/jest-config/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-config/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-diff": { + "version": "30.0.0", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-30.0.0.tgz", + "integrity": "sha512-TgT1+KipV8JTLXXeFX0qSvIJR/UXiNNojjxb/awh3vYlBZyChU/NEmyKmq+wijKjWEztyrGJFL790nqMqNjTHA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/diff-sequences": "30.0.0", + "@jest/get-type": "30.0.0", + "chalk": "^4.1.2", + "pretty-format": "30.0.0" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" + } + }, + "node_modules/jest-diff/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-diff/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-diff/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-diff/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/jest-diff/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-docblock": { + "version": "30.0.0", + "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-30.0.0.tgz", + "integrity": "sha512-By/iQ0nvTzghEecGzUMCp1axLtBh+8wB4Hpoi5o+x1stycjEmPcH1mHugL4D9Q+YKV++vKeX/3ZTW90QC8ICPg==", + "dev": true, + "license": "MIT", + "dependencies": { + "detect-newline": "^3.1.0" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" + } + }, + "node_modules/jest-each": { + "version": "30.0.0", + "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-30.0.0.tgz", + "integrity": "sha512-qkFEW3cfytEjG2KtrhwtldZfXYnWSanO8xUMXLe4A6yaiHMHJUalk0Yyv4MQH6aeaxgi4sGVrukvF0lPMM7U1w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/get-type": "30.0.0", + "@jest/types": "30.0.0", + "chalk": "^4.1.2", + "jest-util": "30.0.0", + "pretty-format": "30.0.0" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" + } + }, + "node_modules/jest-each/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-each/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-each/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-each/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/jest-each/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-environment-jsdom": { + "version": "30.0.0", + "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-30.0.0.tgz", + "integrity": "sha512-IjDRABkSx+HpO7+WGVKPZL5XZajWRsMo2iQIudyiG4BhCi9Uah9HrFluqLUXdjPkIOoox+utUEUl8TDR2kc/Og==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/environment": "30.0.0", + "@jest/environment-jsdom-abstract": "30.0.0", + "@types/jsdom": "^21.1.7", + "@types/node": "*", + "jsdom": "^26.1.0" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" + }, + "peerDependencies": { + "canvas": "^3.0.0" + }, + "peerDependenciesMeta": { + "canvas": { + "optional": true + } + } + }, + "node_modules/jest-environment-node": { + "version": "30.0.0", + "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-30.0.0.tgz", + "integrity": "sha512-sF6lxyA25dIURyDk4voYmGU9Uwz2rQKMfjxKnDd19yk+qxKGrimFqS5YsPHWTlAVBo+YhWzXsqZoaMzrTFvqfg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/environment": "30.0.0", + "@jest/fake-timers": "30.0.0", + "@jest/types": "30.0.0", + "@types/node": "*", + "jest-mock": "30.0.0", + "jest-util": "30.0.0", + "jest-validate": "30.0.0" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" + } + }, + "node_modules/jest-haste-map": { + "version": "30.0.0", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-30.0.0.tgz", + "integrity": "sha512-p4bXAhXTawTsADgQgTpbymdLaTyPW1xWNu1oIGG7/N3LIAbZVkH2JMJqS8/IUcnGR8Kc7WFE+vWbJvsqGCWZXw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "30.0.0", + "@types/node": "*", + "anymatch": "^3.1.3", + "fb-watchman": "^2.0.2", + "graceful-fs": "^4.2.11", + "jest-regex-util": "30.0.0", + "jest-util": "30.0.0", + "jest-worker": "30.0.0", + "micromatch": "^4.0.8", + "walker": "^1.0.8" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" + }, + "optionalDependencies": { + "fsevents": "^2.3.3" + } + }, + "node_modules/jest-leak-detector": { + "version": "30.0.0", + "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-30.0.0.tgz", + "integrity": "sha512-E/ly1azdVVbZrS0T6FIpyYHvsdek4FNaThJTtggjV/8IpKxh3p9NLndeUZy2+sjAI3ncS+aM0uLLon/dBg8htA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/get-type": "30.0.0", + "pretty-format": "30.0.0" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" + } + }, + "node_modules/jest-matcher-utils": { + "version": "30.0.0", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-30.0.0.tgz", + "integrity": "sha512-m5mrunqopkrqwG1mMdJxe1J4uGmS9AHHKYUmoxeQOxBcLjEvirIrIDwuKmUYrecPHVB/PUBpXs2gPoeA2FSSLQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/get-type": "30.0.0", + "chalk": "^4.1.2", + "jest-diff": "30.0.0", + "pretty-format": "30.0.0" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" + } + }, + "node_modules/jest-matcher-utils/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-matcher-utils/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-matcher-utils/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-matcher-utils/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/jest-matcher-utils/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-message-util": { + "version": "30.0.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-30.0.0.tgz", + "integrity": "sha512-pV3qcrb4utEsa/U7UI2VayNzSDQcmCllBZLSoIucrESRu0geKThFZOjjh0kACDJFJRAQwsK7GVsmS6SpEceD8w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.27.1", + "@jest/types": "30.0.0", + "@types/stack-utils": "^2.0.3", + "chalk": "^4.1.2", + "graceful-fs": "^4.2.11", + "micromatch": "^4.0.8", + "pretty-format": "30.0.0", + "slash": "^3.0.0", + "stack-utils": "^2.0.6" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" + } + }, + "node_modules/jest-message-util/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-message-util/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-message-util/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-message-util/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/jest-message-util/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-message-util/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-mock": { + "version": "30.0.0", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-30.0.0.tgz", + "integrity": "sha512-W2sRA4ALXILrEetEOh2ooZG6fZ01iwVs0OWMKSSWRcUlaLr4ESHuiKXDNTg+ZVgOq8Ei5445i/Yxrv59VT+XkA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "30.0.0", + "@types/node": "*", + "jest-util": "30.0.0" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" + } + }, + "node_modules/jest-pnp-resolver": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz", + "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + }, + "peerDependencies": { + "jest-resolve": "*" + }, + "peerDependenciesMeta": { + "jest-resolve": { + "optional": true + } + } + }, + "node_modules/jest-regex-util": { + "version": "30.0.0", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-30.0.0.tgz", + "integrity": "sha512-rT84010qRu/5OOU7a9TeidC2Tp3Qgt9Sty4pOZ/VSDuEmRupIjKZAb53gU3jr4ooMlhwScrgC9UixJxWzVu9oQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" + } + }, + "node_modules/jest-resolve": { + "version": "30.0.0", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-30.0.0.tgz", + "integrity": "sha512-zwWl1P15CcAfuQCEuxszjiKdsValhnWcj/aXg/R3aMHs8HVoCWHC4B/+5+1BirMoOud8NnN85GSP2LEZCbj3OA==", + "dev": true, + "license": "MIT", + "dependencies": { + "chalk": "^4.1.2", + "graceful-fs": "^4.2.11", + "jest-haste-map": "30.0.0", + "jest-pnp-resolver": "^1.2.3", + "jest-util": "30.0.0", + "jest-validate": "30.0.0", + "slash": "^3.0.0", + "unrs-resolver": "^1.7.11" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" + } + }, + "node_modules/jest-resolve-dependencies": { + "version": "30.0.0", + "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-30.0.0.tgz", + "integrity": "sha512-Yhh7odCAUNXhluK1bCpwIlHrN1wycYaTlZwq1GdfNBEESNNI/z1j1a7dUEWHbmB9LGgv0sanxw3JPmWU8NeebQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "jest-regex-util": "30.0.0", + "jest-snapshot": "30.0.0" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" + } + }, + "node_modules/jest-resolve/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-resolve/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-resolve/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-resolve/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/jest-resolve/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-resolve/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-runner": { + "version": "30.0.0", + "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-30.0.0.tgz", + "integrity": "sha512-xbhmvWIc8X1IQ8G7xTv0AQJXKjBVyxoVJEJgy7A4RXsSaO+k/1ZSBbHwjnUhvYqMvwQPomWssDkUx6EoidEhlw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/console": "30.0.0", + "@jest/environment": "30.0.0", + "@jest/test-result": "30.0.0", + "@jest/transform": "30.0.0", + "@jest/types": "30.0.0", + "@types/node": "*", + "chalk": "^4.1.2", + "emittery": "^0.13.1", + "exit-x": "^0.2.2", + "graceful-fs": "^4.2.11", + "jest-docblock": "30.0.0", + "jest-environment-node": "30.0.0", + "jest-haste-map": "30.0.0", + "jest-leak-detector": "30.0.0", + "jest-message-util": "30.0.0", + "jest-resolve": "30.0.0", + "jest-runtime": "30.0.0", + "jest-util": "30.0.0", + "jest-watcher": "30.0.0", + "jest-worker": "30.0.0", + "p-limit": "^3.1.0", + "source-map-support": "0.5.13" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" + } + }, + "node_modules/jest-runner/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-runner/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-runner/node_modules/chalk/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-runner/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-runner/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/jest-runtime": { + "version": "30.0.0", + "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-30.0.0.tgz", + "integrity": "sha512-/O07qVgFrFAOGKGigojmdR3jUGz/y3+a/v9S/Yi2MHxsD+v6WcPppglZJw0gNJkRBArRDK8CFAwpM/VuEiiRjA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/environment": "30.0.0", + "@jest/fake-timers": "30.0.0", + "@jest/globals": "30.0.0", + "@jest/source-map": "30.0.0", + "@jest/test-result": "30.0.0", + "@jest/transform": "30.0.0", + "@jest/types": "30.0.0", + "@types/node": "*", + "chalk": "^4.1.2", + "cjs-module-lexer": "^2.1.0", + "collect-v8-coverage": "^1.0.2", + "glob": "^10.3.10", + "graceful-fs": "^4.2.11", + "jest-haste-map": "30.0.0", + "jest-message-util": "30.0.0", + "jest-mock": "30.0.0", + "jest-regex-util": "30.0.0", + "jest-resolve": "30.0.0", + "jest-snapshot": "30.0.0", + "jest-util": "30.0.0", + "slash": "^3.0.0", + "strip-bom": "^4.0.0" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" + } + }, + "node_modules/jest-runtime/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-runtime/node_modules/brace-expansion": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", + "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/jest-runtime/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-runtime/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-runtime/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/jest-runtime/node_modules/glob": { + "version": "10.4.5", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", + "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==", + "dev": true, + "license": "ISC", + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^3.1.2", + "minimatch": "^9.0.4", + "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", + "path-scurry": "^1.11.1" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/jest-runtime/node_modules/minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/jest-runtime/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-runtime/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-snapshot": { + "version": "30.0.0", + "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-30.0.0.tgz", + "integrity": "sha512-6oCnzjpvfj/UIOMTqKZ6gedWAUgaycMdV8Y8h2dRJPvc2wSjckN03pzeoonw8y33uVngfx7WMo1ygdRGEKOT7w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/core": "^7.27.4", + "@babel/generator": "^7.27.5", + "@babel/plugin-syntax-jsx": "^7.27.1", + "@babel/plugin-syntax-typescript": "^7.27.1", + "@babel/types": "^7.27.3", + "@jest/expect-utils": "30.0.0", + "@jest/get-type": "30.0.0", + "@jest/snapshot-utils": "30.0.0", + "@jest/transform": "30.0.0", + "@jest/types": "30.0.0", + "babel-preset-current-node-syntax": "^1.1.0", + "chalk": "^4.1.2", + "expect": "30.0.0", + "graceful-fs": "^4.2.11", + "jest-diff": "30.0.0", + "jest-matcher-utils": "30.0.0", + "jest-message-util": "30.0.0", + "jest-util": "30.0.0", + "pretty-format": "30.0.0", + "semver": "^7.7.2", + "synckit": "^0.11.8" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" + } + }, + "node_modules/jest-snapshot/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-snapshot/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-snapshot/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-snapshot/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/jest-snapshot/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-util": { + "version": "30.0.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-30.0.0.tgz", + "integrity": "sha512-fhNBBM9uSUbd4Lzsf8l/kcAdaHD/4SgoI48en3HXcBEMwKwoleKFMZ6cYEYs21SB779PRuRCyNLmymApAm8tZw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "30.0.0", + "@types/node": "*", + "chalk": "^4.1.2", + "ci-info": "^4.2.0", + "graceful-fs": "^4.2.11", + "picomatch": "^4.0.2" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" + } + }, + "node_modules/jest-util/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-util/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-util/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-util/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/jest-util/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-validate": { + "version": "30.0.0", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-30.0.0.tgz", + "integrity": "sha512-d6OkzsdlWItHAikUDs1hlLmpOIRhsZoXTCliV2XXalVQ3ZOeb9dy0CQ6AKulJu/XOZqpOEr/FiMH+FeOBVV+nw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/get-type": "30.0.0", + "@jest/types": "30.0.0", + "camelcase": "^6.3.0", + "chalk": "^4.1.2", + "leven": "^3.1.0", + "pretty-format": "30.0.0" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" + } + }, + "node_modules/jest-validate/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-validate/node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/jest-validate/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-validate/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-validate/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/jest-validate/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-watcher": { + "version": "30.0.0", + "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-30.0.0.tgz", + "integrity": "sha512-fbAkojcyS53bOL/B7XYhahORq9cIaPwOgd/p9qW/hybbC8l6CzxfWJJxjlPBAIVN8dRipLR0zdhpGQdam+YBtw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/test-result": "30.0.0", + "@jest/types": "30.0.0", + "@types/node": "*", + "ansi-escapes": "^4.3.2", + "chalk": "^4.1.2", + "emittery": "^0.13.1", + "jest-util": "30.0.0", + "string-length": "^4.0.2" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" + } + }, + "node_modules/jest-watcher/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-watcher/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-watcher/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-watcher/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/jest-watcher/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-worker": { + "version": "30.0.0", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-30.0.0.tgz", + "integrity": "sha512-VZvxfWIybIvwK8N/Bsfe43LfQgd/rD0c4h5nLUx78CAqPxIQcW2qDjsVAC53iUR8yxzFIeCFFvWOh8en8hGzdg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/node": "*", + "@ungap/structured-clone": "^1.3.0", + "jest-util": "30.0.0", + "merge-stream": "^2.0.0", + "supports-color": "^8.1.1" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" + } + }, + "node_modules/jiti": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/jiti/-/jiti-2.4.2.tgz", + "integrity": "sha512-rg9zJN+G4n2nfJl5MW3BMygZX56zKPNVEYYqq7adpmMh4Jn2QNEwhvQlFy6jPVdcod7txZtKHWnyZiA3a0zP7A==", + "dev": true, + "license": "MIT", + "bin": { + "jiti": "lib/jiti-cli.mjs" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dev": true, + "license": "MIT", + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/jsdom": { + "version": "26.1.0", + "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-26.1.0.tgz", + "integrity": "sha512-Cvc9WUhxSMEo4McES3P7oK3QaXldCfNWp7pl2NNeiIFlCoLr3kfq9kb1fxftiwk1FLV7CvpvDfonxtzUDeSOPg==", + "dev": true, + "license": "MIT", + "dependencies": { + "cssstyle": "^4.2.1", + "data-urls": "^5.0.0", + "decimal.js": "^10.5.0", + "html-encoding-sniffer": "^4.0.0", + "http-proxy-agent": "^7.0.2", + "https-proxy-agent": "^7.0.6", + "is-potential-custom-element-name": "^1.0.1", + "nwsapi": "^2.2.16", + "parse5": "^7.2.1", + "rrweb-cssom": "^0.8.0", + "saxes": "^6.0.0", + "symbol-tree": "^3.2.4", + "tough-cookie": "^5.1.1", + "w3c-xmlserializer": "^5.0.0", + "webidl-conversions": "^7.0.0", + "whatwg-encoding": "^3.1.1", + "whatwg-mimetype": "^4.0.0", + "whatwg-url": "^14.1.1", + "ws": "^8.18.0", + "xml-name-validator": "^5.0.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "canvas": "^3.0.0" + }, + "peerDependenciesMeta": { + "canvas": { + "optional": true + } + } + }, + "node_modules/jsesc": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", + "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", + "dev": true, + "license": "MIT", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/json-parse-better-errors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", + "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", + "dev": true, + "license": "MIT" + }, + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "dev": true, + "license": "MIT" + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true, + "license": "MIT" + }, + "node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", + "dev": true, + "license": "MIT" + }, + "node_modules/json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==", + "dev": true, + "license": "ISC" + }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "dev": true, + "license": "MIT", + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/jsonparse": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", + "integrity": "sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==", + "dev": true, + "engines": [ + "node >= 0.2.0" + ], + "license": "MIT" + }, + "node_modules/JSONStream": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz", + "integrity": "sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==", + "dev": true, + "license": "(MIT OR Apache-2.0)", + "dependencies": { + "jsonparse": "^1.2.0", + "through": ">=2.2.7 <3" + }, + "bin": { + "JSONStream": "bin.js" + }, + "engines": { + "node": "*" + } + }, + "node_modules/keyv": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", + "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", + "dev": true, + "license": "MIT", + "dependencies": { + "json-buffer": "3.0.1" + } + }, + "node_modules/kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/kuler": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/kuler/-/kuler-2.0.0.tgz", + "integrity": "sha512-Xq9nH7KlWZmXAtodXDDRE7vs6DU1gTU8zYDHDiWLSip45Egwq3plLHzPn27NgvzL2r1LMPC1vdqh98sQxtqj4A==", + "dev": true, + "license": "MIT" + }, + "node_modules/less": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/less/-/less-4.3.0.tgz", + "integrity": "sha512-X9RyH9fvemArzfdP8Pi3irr7lor2Ok4rOttDXBhlwDg+wKQsXOXgHWduAJE1EsF7JJx0w0bcO6BC6tCKKYnXKA==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "copy-anything": "^2.0.1", + "parse-node-version": "^1.0.1", + "tslib": "^2.3.0" + }, + "bin": { + "lessc": "bin/lessc" + }, + "engines": { + "node": ">=14" + }, + "optionalDependencies": { + "errno": "^0.1.1", + "graceful-fs": "^4.1.2", + "image-size": "~0.5.0", + "make-dir": "^2.1.0", + "mime": "^1.4.1", + "needle": "^3.1.0", + "source-map": "~0.6.0" + } + }, + "node_modules/less-loader": { + "version": "12.3.0", + "resolved": "https://registry.npmjs.org/less-loader/-/less-loader-12.3.0.tgz", + "integrity": "sha512-0M6+uYulvYIWs52y0LqN4+QM9TqWAohYSNTo4htE8Z7Cn3G/qQMEmktfHmyJT23k+20kU9zHH2wrfFXkxNLtVw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 18.12.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "@rspack/core": "0.x || 1.x", + "less": "^3.5.0 || ^4.0.0", + "webpack": "^5.0.0" + }, + "peerDependenciesMeta": { + "@rspack/core": { + "optional": true + }, + "webpack": { + "optional": true + } + } + }, + "node_modules/leven": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", + "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/lilconfig": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-3.1.3.tgz", + "integrity": "sha512-/vlFKAoH5Cgt3Ie+JLhRbwOsCQePABiU3tJ1egGvyQ+33R/vcwM2Zl2QR/LzjsBeItPt3oSVXapn+m4nQDvpzw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antonk52" + } + }, + "node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", + "dev": true, + "license": "MIT" + }, + "node_modules/lint-staged": { + "version": "15.5.2", + "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-15.5.2.tgz", + "integrity": "sha512-YUSOLq9VeRNAo/CTaVmhGDKG+LBtA8KF1X4K5+ykMSwWST1vDxJRB2kv2COgLb1fvpCo+A/y9A0G0znNVmdx4w==", + "dev": true, + "license": "MIT", + "dependencies": { + "chalk": "^5.4.1", + "commander": "^13.1.0", + "debug": "^4.4.0", + "execa": "^8.0.1", + "lilconfig": "^3.1.3", + "listr2": "^8.2.5", + "micromatch": "^4.0.8", + "pidtree": "^0.6.0", + "string-argv": "^0.3.2", + "yaml": "^2.7.0" + }, + "bin": { + "lint-staged": "bin/lint-staged.js" + }, + "engines": { + "node": ">=18.12.0" + }, + "funding": { + "url": "https://opencollective.com/lint-staged" + } + }, + "node_modules/lint-staged/node_modules/commander": { + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-13.1.0.tgz", + "integrity": "sha512-/rFeCpNJQbhSZjGVwO9RFV3xPqbnERS8MmIQzCtD/zl6gpJuV/bMLuN92oG3F7d8oDEHHRrujSXNUr8fpjntKw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + } + }, + "node_modules/lint-staged/node_modules/execa": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-8.0.1.tgz", + "integrity": "sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==", + "dev": true, + "license": "MIT", + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^8.0.1", + "human-signals": "^5.0.0", + "is-stream": "^3.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^5.1.0", + "onetime": "^6.0.0", + "signal-exit": "^4.1.0", + "strip-final-newline": "^3.0.0" + }, + "engines": { + "node": ">=16.17" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/lint-staged/node_modules/get-stream": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-8.0.1.tgz", + "integrity": "sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lint-staged/node_modules/human-signals": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-5.0.0.tgz", + "integrity": "sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=16.17.0" + } + }, + "node_modules/lint-staged/node_modules/is-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz", + "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lint-staged/node_modules/mimic-fn": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz", + "integrity": "sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lint-staged/node_modules/npm-run-path": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.3.0.tgz", + "integrity": "sha512-ppwTtiJZq0O/ai0z7yfudtBpWIoxM8yE6nHi1X47eFR2EWORqfbu6CnPlNsjeN683eT0qG6H/Pyf9fCcvjnnnQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "path-key": "^4.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lint-staged/node_modules/onetime": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz", + "integrity": "sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "mimic-fn": "^4.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lint-staged/node_modules/path-key": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz", + "integrity": "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lint-staged/node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/lint-staged/node_modules/strip-final-newline": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz", + "integrity": "sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/listr2": { + "version": "8.3.3", + "resolved": "https://registry.npmjs.org/listr2/-/listr2-8.3.3.tgz", + "integrity": "sha512-LWzX2KsqcB1wqQ4AHgYb4RsDXauQiqhjLk+6hjbaeHG4zpjjVAB6wC/gz6X0l+Du1cN3pUB5ZlrvTbhGSNnUQQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "cli-truncate": "^4.0.0", + "colorette": "^2.0.20", + "eventemitter3": "^5.0.1", + "log-update": "^6.1.0", + "rfdc": "^1.4.1", + "wrap-ansi": "^9.0.0" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/load-json-file": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", + "integrity": "sha512-Kx8hMakjX03tiGTLAIdJ+lL0htKnXjEZN6hk/tozf/WOuYGdZBJrZ+rCJRbVCugsjB3jMLn9746NsQIf5VjBMw==", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.1.2", + "parse-json": "^4.0.0", + "pify": "^3.0.0", + "strip-bom": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/load-json-file/node_modules/parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==", + "dev": true, + "license": "MIT", + "dependencies": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/load-json-file/node_modules/pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/load-json-file/node_modules/strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/loader-runner": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", + "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.11.5" + } + }, + "node_modules/loader-utils": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz", + "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", + "dev": true, + "license": "MIT", + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + }, + "engines": { + "node": ">=8.9.0" + } + }, + "node_modules/locate-path": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-7.2.0.tgz", + "integrity": "sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-locate": "^6.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true, + "license": "MIT" + }, + "node_modules/lodash.camelcase": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz", + "integrity": "sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==", + "dev": true, + "license": "MIT" + }, + "node_modules/lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", + "dev": true, + "license": "MIT" + }, + "node_modules/lodash.ismatch": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.ismatch/-/lodash.ismatch-4.4.0.tgz", + "integrity": "sha512-fPMfXjGQEV9Xsq/8MTSgUf255gawYRbjwMyDbcvDhXgV7enSZA0hynz6vMPnpAb5iONEzBHBPsT+0zes5Z301g==", + "dev": true, + "license": "MIT" + }, + "node_modules/lodash.isplainobject": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", + "integrity": "sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==", + "dev": true, + "license": "MIT" + }, + "node_modules/lodash.kebabcase": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/lodash.kebabcase/-/lodash.kebabcase-4.1.1.tgz", + "integrity": "sha512-N8XRTIMMqqDgSy4VLKPnJ/+hpGZN+PHQiJnSenYqPaVV/NCqEogTnAdZLQiGKhxX+JCs8waWq2t1XHWKOmlY8g==", + "dev": true, + "license": "MIT" + }, + "node_modules/lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/lodash.mergewith": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.mergewith/-/lodash.mergewith-4.6.2.tgz", + "integrity": "sha512-GK3g5RPZWTRSeLSpgP8Xhra+pnjBC56q9FZYe1d5RN3TJ35dbkGy3YqBSMbyCrlbi+CM9Z3Jk5yTL7RCsqboyQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/lodash.snakecase": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/lodash.snakecase/-/lodash.snakecase-4.1.1.tgz", + "integrity": "sha512-QZ1d4xoBHYUeuouhEq3lk3Uq7ldgyFXGBhg04+oRLnIz8o9T65Eh+8YdroUwn846zchkA9yDsDl5CVVaV2nqYw==", + "dev": true, + "license": "MIT" + }, + "node_modules/lodash.startcase": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.startcase/-/lodash.startcase-4.4.0.tgz", + "integrity": "sha512-+WKqsK294HMSc2jEbNgpHpd0JfIBhp7rEV4aqXWqFr6AlXov+SlcgB1Fv01y2kGe3Gc8nMW7VA0SrGuSkRfIEg==", + "dev": true, + "license": "MIT" + }, + "node_modules/lodash.uniq": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", + "integrity": "sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/lodash.upperfirst": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/lodash.upperfirst/-/lodash.upperfirst-4.3.1.tgz", + "integrity": "sha512-sReKOYJIJf74dhJONhU4e0/shzi1trVbSWDOhKYE5XV2O+H7Sb2Dihwuc7xWxVl+DgFPyTqIN3zMfT9cq5iWDg==", + "dev": true, + "license": "MIT" + }, + "node_modules/log-update": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/log-update/-/log-update-6.1.0.tgz", + "integrity": "sha512-9ie8ItPR6tjY5uYJh8K/Zrv/RMZ5VOlOWvtZdEHYSTFKZfIBPQa9tOAEeAWhd+AnIneLJ22w5fjOYtoutpWq5w==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-escapes": "^7.0.0", + "cli-cursor": "^5.0.0", + "slice-ansi": "^7.1.0", + "strip-ansi": "^7.1.0", + "wrap-ansi": "^9.0.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/log-update/node_modules/ansi-escapes": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-7.0.0.tgz", + "integrity": "sha512-GdYO7a61mR0fOlAsvC9/rIHf7L96sBc6dEWzeOu+KAea5bZyQRPIpojrVoI4AXGJS/ycu/fBTdLrUkA4ODrvjw==", + "dev": true, + "license": "MIT", + "dependencies": { + "environment": "^1.0.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/log-update/node_modules/ansi-regex": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.1.0.tgz", + "integrity": "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/log-update/node_modules/ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/log-update/node_modules/is-fullwidth-code-point": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-5.0.0.tgz", + "integrity": "sha512-OVa3u9kkBbw7b8Xw5F9P+D/T9X+Z4+JruYVNapTjPYZYUznQ5YfWeFkOj606XYYW8yugTfC8Pj0hYqvi4ryAhA==", + "dev": true, + "license": "MIT", + "dependencies": { + "get-east-asian-width": "^1.0.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/log-update/node_modules/slice-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-7.1.0.tgz", + "integrity": "sha512-bSiSngZ/jWeX93BqeIAbImyTbEihizcwNjFoRUIY/T1wWQsfsm2Vw1agPKylXvQTU7iASGdHhyqRlqQzfz+Htg==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^6.2.1", + "is-fullwidth-code-point": "^5.0.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/chalk/slice-ansi?sponsor=1" + } + }, + "node_modules/log-update/node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/logform": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/logform/-/logform-2.7.0.tgz", + "integrity": "sha512-TFYA4jnP7PVbmlBIfhlSe+WKxs9dklXMTEGcBCIvLhE/Tn3H6Gk1norupVW7m5Cnd4bLcr08AytbyV/xj7f/kQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@colors/colors": "1.6.0", + "@types/triple-beam": "^1.3.2", + "fecha": "^4.2.0", + "ms": "^2.1.1", + "safe-stable-stringify": "^2.3.1", + "triple-beam": "^1.3.0" + }, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "dev": true, + "license": "MIT", + "dependencies": { + "pify": "^4.0.1", + "semver": "^5.6.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/make-dir/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/makeerror": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", + "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "tmpl": "1.0.5" + } + }, + "node_modules/map-obj": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.3.0.tgz", + "integrity": "sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/math-intrinsics": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", + "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/memfs": { + "version": "4.17.2", + "resolved": "https://registry.npmjs.org/memfs/-/memfs-4.17.2.tgz", + "integrity": "sha512-NgYhCOWgovOXSzvYgUW0LQ7Qy72rWQMGGFJDoWg4G30RHd3z77VbYdtJ4fembJXBy8pMIUA31XNAupobOQlwdg==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@jsonjoy.com/json-pack": "^1.0.3", + "@jsonjoy.com/util": "^1.3.0", + "tree-dump": "^1.0.1", + "tslib": "^2.0.0" + }, + "engines": { + "node": ">= 4.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/streamich" + } + }, + "node_modules/memorystream": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/memorystream/-/memorystream-0.3.1.tgz", + "integrity": "sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw==", + "dev": true, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/meow": { + "version": "12.1.1", + "resolved": "https://registry.npmjs.org/meow/-/meow-12.1.1.tgz", + "integrity": "sha512-BhXM0Au22RwUneMPwSCnyhTOizdWoIEPU9sp0Aqa1PnDMR5Wv2FGXYDjuzJEIX+Eo2Rb8xuYe5jrnm5QowQFkw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=16.10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true, + "license": "MIT" + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "node_modules/micromatch": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", + "dev": true, + "license": "MIT", + "dependencies": { + "braces": "^3.0.3", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/micromatch/node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "dev": true, + "license": "MIT", + "optional": true, + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dev": true, + "license": "MIT", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/mimic-function": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/mimic-function/-/mimic-function-5.0.1.tgz", + "integrity": "sha512-VP79XUPxV2CigYP3jWwAUFSku2aKqBH7uTAapFWCBqutsbmDo96KY5o8uh6U+/YSIn5OxJnXp73beVkpqMIGhA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/min-indent": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", + "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/mini-css-extract-plugin": { + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-2.9.2.tgz", + "integrity": "sha512-GJuACcS//jtq4kCtd5ii/M0SZf7OZRH+BxdqXZHaJfb8TJiVl+NgQRPwiYt2EuqeSkNydn/7vP+bcE27C5mb9w==", + "dev": true, + "license": "MIT", + "dependencies": { + "schema-utils": "^4.0.0", + "tapable": "^2.2.1" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.0.0" + } + }, + "node_modules/mini-css-extract-plugin/node_modules/ajv": { + "version": "8.17.1", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.17.1.tgz", + "integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.3", + "fast-uri": "^3.0.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/mini-css-extract-plugin/node_modules/ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.3" + }, + "peerDependencies": { + "ajv": "^8.8.2" + } + }, + "node_modules/mini-css-extract-plugin/node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "dev": true, + "license": "MIT" + }, + "node_modules/mini-css-extract-plugin/node_modules/schema-utils": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.3.2.tgz", + "integrity": "sha512-Gn/JaSk/Mt9gYubxTtSn/QCV4em9mpAPiR1rqy/Ocu19u/G9J5WWdNoUT4SiV6mFC3y6cxyFcFwdzPM3FgxGAQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.9.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.1.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/minimist-options": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-4.1.0.tgz", + "integrity": "sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==", + "dev": true, + "license": "MIT", + "dependencies": { + "arrify": "^1.0.1", + "is-plain-obj": "^1.1.0", + "kind-of": "^6.0.3" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/minipass": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", + "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/modify-values": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/modify-values/-/modify-values-1.0.1.tgz", + "integrity": "sha512-xV2bxeN6F7oYjZWTe/YPAy6MN2M+sL4u/Rlm2AHCIVGfo2p1yGmBHQ6vHehl4bRTZBdHu3TSkWdYgkwpYzAGSw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true, + "license": "MIT" + }, + "node_modules/nanoid": { + "version": "3.3.11", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz", + "integrity": "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/napi-postinstall": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/napi-postinstall/-/napi-postinstall-0.2.4.tgz", + "integrity": "sha512-ZEzHJwBhZ8qQSbknHqYcdtQVr8zUgGyM/q6h6qAyhtyVMNrSgDhrC4disf03dYW0e+czXyLnZINnCTEkWy0eJg==", + "dev": true, + "license": "MIT", + "bin": { + "napi-postinstall": "lib/cli.js" + }, + "engines": { + "node": "^12.20.0 || ^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/napi-postinstall" + } + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "dev": true, + "license": "MIT" + }, + "node_modules/needle": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/needle/-/needle-3.3.1.tgz", + "integrity": "sha512-6k0YULvhpw+RoLNiQCRKOl09Rv1dPLr8hHnVjHqdolKwDrdNyk+Hmrthi4lIGPPz3r39dLx0hsF5s40sZ3Us4Q==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "iconv-lite": "^0.6.3", + "sax": "^1.2.4" + }, + "bin": { + "needle": "bin/needle" + }, + "engines": { + "node": ">= 4.4.x" + } + }, + "node_modules/neo-async": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", + "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", + "dev": true, + "license": "MIT" + }, + "node_modules/nice-try": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", + "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/node-addon-api": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.1.1.tgz", + "integrity": "sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==", + "dev": true, + "license": "MIT", + "optional": true + }, + "node_modules/node-int64": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", + "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==", + "dev": true, + "license": "MIT" + }, + "node_modules/node-releases": { + "version": "2.0.19", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.19.tgz", + "integrity": "sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==", + "dev": true, + "license": "MIT" + }, + "node_modules/normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + } + }, + "node_modules/normalize-package-data/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/normalize-range": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", + "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/npm-run-all": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/npm-run-all/-/npm-run-all-4.1.5.tgz", + "integrity": "sha512-Oo82gJDAVcaMdi3nuoKFavkIHBRVqQ1qvMb+9LHk/cF4P6B2m8aP04hGf7oL6wZ9BuGwX1onlLhpuoofSyoQDQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^3.2.1", + "chalk": "^2.4.1", + "cross-spawn": "^6.0.5", + "memorystream": "^0.3.1", + "minimatch": "^3.0.4", + "pidtree": "^0.3.0", + "read-pkg": "^3.0.0", + "shell-quote": "^1.6.1", + "string.prototype.padend": "^3.0.0" + }, + "bin": { + "npm-run-all": "bin/npm-run-all/index.js", + "run-p": "bin/run-p/index.js", + "run-s": "bin/run-s/index.js" + }, + "engines": { + "node": ">= 4" + } + }, + "node_modules/npm-run-all/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/npm-run-all/node_modules/cross-spawn": { + "version": "6.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.6.tgz", + "integrity": "sha512-VqCUuhcd1iB+dsv8gxPttb5iZh/D0iubSP21g36KXdEuf6I5JiioesUVjpCdHV9MZRUfVFlvwtIUyPfxo5trtw==", + "dev": true, + "license": "MIT", + "dependencies": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + }, + "engines": { + "node": ">=4.8" + } + }, + "node_modules/npm-run-all/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/npm-run-all/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/npm-run-all/node_modules/path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/npm-run-all/node_modules/pidtree": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/pidtree/-/pidtree-0.3.1.tgz", + "integrity": "sha512-qQbW94hLHEqCg7nhby4yRC7G2+jYHY4Rguc2bjw7Uug4GIJuu1tvf2uHaZv5Q8zdt+WKJ6qK1FOI6amaWUo5FA==", + "dev": true, + "license": "MIT", + "bin": { + "pidtree": "bin/pidtree.js" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/npm-run-all/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/npm-run-all/node_modules/shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==", + "dev": true, + "license": "MIT", + "dependencies": { + "shebang-regex": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/npm-run-all/node_modules/shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/npm-run-all/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/npm-run-all/node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" + } + }, + "node_modules/npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "dev": true, + "license": "MIT", + "dependencies": { + "path-key": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/nwsapi": { + "version": "2.2.20", + "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.20.tgz", + "integrity": "sha512-/ieB+mDe4MrrKMT8z+mQL8klXydZWGR5Dowt4RAGKbJ3kIGEx3X4ljUo+6V73IXtUPWgfOlU5B9MlGxFO5T+cA==", + "dev": true, + "license": "MIT" + }, + "node_modules/object-inspect": { + "version": "1.13.4", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz", + "integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.assign": { + "version": "4.1.7", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.7.tgz", + "integrity": "sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0", + "has-symbols": "^1.1.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.fromentries": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.8.tgz", + "integrity": "sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.groupby": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.3.tgz", + "integrity": "sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.values": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.2.1.tgz", + "integrity": "sha512-gXah6aZrcUxjWg2zR2MwouP2eHlCBzdV4pygudehaKXSGW4v2AsRQUK+lwwXhii6KFZcunEnmSUoYp5CXibxtA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dev": true, + "license": "ISC", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/one-time": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/one-time/-/one-time-1.0.0.tgz", + "integrity": "sha512-5DXOiRKwuSEcQ/l0kGCF6Q3jcADFv5tSmRaJck/OqkVFcOzutB134KRSfF0xDrL39MNnqxbHBbUUcjZIhTgb2g==", + "dev": true, + "license": "MIT", + "dependencies": { + "fn.name": "1.x.x" + } + }, + "node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dev": true, + "license": "MIT", + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/optionator": { + "version": "0.9.4", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz", + "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==", + "dev": true, + "license": "MIT", + "dependencies": { + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0", + "word-wrap": "^1.2.5" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/own-keys": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/own-keys/-/own-keys-1.0.1.tgz", + "integrity": "sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg==", + "dev": true, + "license": "MIT", + "dependencies": { + "get-intrinsic": "^1.2.6", + "object-keys": "^1.1.1", + "safe-push-apply": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-6.0.0.tgz", + "integrity": "sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-limit": "^4.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate/node_modules/p-limit": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz", + "integrity": "sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "yocto-queue": "^1.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate/node_modules/yocto-queue": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.2.1.tgz", + "integrity": "sha512-AyeEbWOu/TAXdxlV9wmGcR0+yh2j3vYPGOECcIj2S7MkrLyC7ne+oye2BKTItt0ii2PHk4cDy+95+LshzbXnGg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-map": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-5.5.0.tgz", + "integrity": "sha512-VFqfGDHlx87K66yZrNdI4YGtD70IRyd+zSvgks6mzHPRNkoKy+9EKP4SFC77/vTTQYmRmti7dvqC+m5jBrBAcg==", + "dev": true, + "license": "MIT", + "dependencies": { + "aggregate-error": "^4.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/package-json-from-dist": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz", + "integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==", + "dev": true, + "license": "BlueOak-1.0.0" + }, + "node_modules/parent-module": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-2.0.0.tgz", + "integrity": "sha512-uo0Z9JJeWzv8BG+tRcapBKNJ0dro9cLyczGzulS6EfeyAdeC9sbojtW6XwvYxJkEne9En+J2XEl4zyglVeIwFg==", + "dev": true, + "license": "MIT", + "dependencies": { + "callsites": "^3.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/parse-node-version": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parse-node-version/-/parse-node-version-1.0.1.tgz", + "integrity": "sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/parse5": { + "version": "7.3.0", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.3.0.tgz", + "integrity": "sha512-IInvU7fabl34qmi9gY8XOVxhYyMyuH2xUNpb2q8/Y+7552KlejkRvqvD19nMoUW/uQGGbqNpA6Tufu5FL5BZgw==", + "dev": true, + "license": "MIT", + "dependencies": { + "entities": "^6.0.0" + }, + "funding": { + "url": "https://github.com/inikulin/parse5?sponsor=1" + } + }, + "node_modules/path-exists": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-5.0.0.tgz", + "integrity": "sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true, + "license": "MIT" + }, + "node_modules/path-scurry": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz", + "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==", + "dev": true, + "license": "BlueOak-1.0.0", + "dependencies": { + "lru-cache": "^10.2.0", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" + }, + "engines": { + "node": ">=16 || 14 >=14.18" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/path-scurry/node_modules/lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", + "license": "ISC" + }, + "node_modules/picomatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz", + "integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" } }, - "jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", + "node_modules/pidtree": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/pidtree/-/pidtree-0.6.0.tgz", + "integrity": "sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g==", "dev": true, - "requires": { - "graceful-fs": "^4.1.6" + "license": "MIT", + "bin": { + "pidtree": "bin/pidtree.js" + }, + "engines": { + "node": ">=0.10" } }, - "jsonparse": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", - "integrity": "sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA=", - "dev": true - }, - "jsprim": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", - "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", + "node_modules/pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", "dev": true, - "requires": { - "assert-plus": "1.0.0", - "extsprintf": "1.3.0", - "json-schema": "0.2.3", - "verror": "1.10.0" + "license": "MIT", + "engines": { + "node": ">=6" } }, - "kind-of": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", - "dev": true - }, - "kleur": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/kleur/-/kleur-2.0.2.tgz", - "integrity": "sha512-77XF9iTllATmG9lSlIv0qdQ2BQ/h9t0bJllHlbvsQ0zUWfU7Yi0S8L5JXzPZgkefIiajLmBJJ4BsMJmqcf7oxQ==", - "dev": true + "node_modules/pirates": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.7.tgz", + "integrity": "sha512-TfySrs/5nm8fQJDcBDuUng3VOUKsd7S+zqvbOTiGXHfxX4wK31ard+hoNuvkicM/2YFzlpDgABOevKSsB4G/FA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 6" + } }, - "leven": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", - "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", - "dev": true + "node_modules/pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "find-up": "^4.0.0" + }, + "engines": { + "node": ">=8" + } }, - "levenary": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/levenary/-/levenary-1.1.1.tgz", - "integrity": "sha512-mkAdOIt79FD6irqjYSs4rdbnlT5vRonMEvBVPVb3XmevfS8kgRXwfes0dhPdEtzTWD/1eNE/Bm/G1iRt6DcnQQ==", + "node_modules/pkg-dir/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", "dev": true, - "requires": { - "leven": "^3.1.0" + "license": "MIT", + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "levn": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", - "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", + "node_modules/pkg-dir/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", "dev": true, - "requires": { - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2" + "license": "MIT", + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" } }, - "lines-and-columns": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.1.6.tgz", - "integrity": "sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA=", - "dev": true + "node_modules/pkg-dir/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "lint-staged": { - "version": "10.1.7", - "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-10.1.7.tgz", - "integrity": "sha512-ZkK8t9Ep/AHuJQKV95izSa+DqotftGnSsNeEmCSqbQ6j4C4H0jDYhEZqVOGD1Q2Oe227igbqjMWycWyYbQtpoA==", + "node_modules/pkg-dir/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", "dev": true, - "requires": { - "chalk": "^4.0.0", - "commander": "^5.0.0", - "cosmiconfig": "^6.0.0", - "debug": "^4.1.1", - "dedent": "^0.7.0", - "execa": "^4.0.0", - "listr": "^0.14.3", - "log-symbols": "^3.0.0", - "micromatch": "^4.0.2", - "normalize-path": "^3.0.0", - "please-upgrade-node": "^3.2.0", - "string-argv": "0.3.1", - "stringify-object": "^3.3.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "requires": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - } - }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "chalk": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.0.0.tgz", - "integrity": "sha512-N9oWFcegS0sFr9oh1oz2d7Npos6vNoWW9HvtCg5N1KRFpUhaAhvTv5Y58g880fZaEYSNm3qDz8SU1UrGvp+n7A==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "commander": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-5.0.0.tgz", - "integrity": "sha512-JrDGPAKjMGSP1G0DUoaceEJ3DZgAfr/q6X7FVk4+U5KxUSKviYGM2k6zWkfyyBHy5rAtzgYJFa1ro2O9PtoxwQ==", - "dev": true - }, - "cosmiconfig": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-6.0.0.tgz", - "integrity": "sha512-xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg==", - "dev": true, - "requires": { - "@types/parse-json": "^4.0.0", - "import-fresh": "^3.1.0", - "parse-json": "^5.0.0", - "path-type": "^4.0.0", - "yaml": "^1.7.2" - } - }, - "cross-spawn": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.2.tgz", - "integrity": "sha512-PD6G8QG3S4FK/XCGFbEQrDqO2AnMMsy0meR7lerlIOHAAbkuavGU/pOqprrlvfTNjvowivTeBsjebAL0NSoMxw==", - "dev": true, - "requires": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - } - }, - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "execa": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-4.0.0.tgz", - "integrity": "sha512-JbDUxwV3BoT5ZVXQrSVbAiaXhXUkIwvbhPIwZ0N13kX+5yCzOhUNdocxB/UQRuYOHRYYwAxKYwJYc0T4D12pDA==", - "dev": true, - "requires": { - "cross-spawn": "^7.0.0", - "get-stream": "^5.0.0", - "human-signals": "^1.1.1", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.0", - "onetime": "^5.1.0", - "signal-exit": "^3.0.2", - "strip-final-newline": "^2.0.0" - } - }, - "fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "get-stream": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.1.0.tgz", - "integrity": "sha512-EXr1FOzrzTfGeL0gQdeFEvOMm2mzMOglyiOXSTpPC+iAjAKftbr3jpCMWynogwYnM+eSj9sHGc6wjIcDvYiygw==", - "dev": true, - "requires": { - "pump": "^3.0.0" - } - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true - }, - "is-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.0.tgz", - "integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==", - "dev": true - }, - "micromatch": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", - "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", - "dev": true, - "requires": { - "braces": "^3.0.1", - "picomatch": "^2.0.5" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "npm-run-path": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", - "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", - "dev": true, - "requires": { - "path-key": "^3.0.0" - } - }, - "parse-json": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.0.0.tgz", - "integrity": "sha512-OOY5b7PAEFV0E2Fir1KOkxchnZNCdowAJgQ5NuxjpBKTRP3pQhwkrkxqQjeoKJ+fO7bCpmIZaogI4eZGDMEGOw==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1", - "lines-and-columns": "^1.1.6" - } - }, - "path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true - }, - "path-type": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", - "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", - "dev": true - }, - "shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, - "requires": { - "shebang-regex": "^3.0.0" - } - }, - "shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true - }, - "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - }, - "to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "requires": { - "is-number": "^7.0.0" - } - } + "license": "MIT", + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" } }, - "listify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/listify/-/listify-1.0.0.tgz", - "integrity": "sha1-A8p7otFQ1CZ3c/dOV1WNEFPSvuM=", - "dev": true - }, - "listr": { - "version": "0.14.3", - "resolved": "https://registry.npmjs.org/listr/-/listr-0.14.3.tgz", - "integrity": "sha512-RmAl7su35BFd/xoMamRjpIE4j3v+L28o8CT5YhAXQJm1fD+1l9ngXY8JAQRJ+tFK2i5njvi0iRUKV09vPwA0iA==", - "dev": true, - "requires": { - "@samverschueren/stream-to-observable": "^0.3.0", - "is-observable": "^1.1.0", - "is-promise": "^2.1.0", - "is-stream": "^1.1.0", - "listr-silent-renderer": "^1.1.1", - "listr-update-renderer": "^0.5.0", - "listr-verbose-renderer": "^0.5.0", - "p-map": "^2.0.0", - "rxjs": "^6.3.3" - }, - "dependencies": { - "p-map": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-2.1.0.tgz", - "integrity": "sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==", - "dev": true - } + "node_modules/pkg-dir/node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" } }, - "listr-silent-renderer": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/listr-silent-renderer/-/listr-silent-renderer-1.1.1.tgz", - "integrity": "sha1-kktaN1cVN3C/Go4/v3S4u/P5JC4=", - "dev": true - }, - "listr-update-renderer": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/listr-update-renderer/-/listr-update-renderer-0.5.0.tgz", - "integrity": "sha512-tKRsZpKz8GSGqoI/+caPmfrypiaq+OQCbd+CovEC24uk1h952lVj5sC7SqyFUm+OaJ5HN/a1YLt5cit2FMNsFA==", - "dev": true, - "requires": { - "chalk": "^1.1.3", - "cli-truncate": "^0.2.1", - "elegant-spinner": "^1.0.1", - "figures": "^1.7.0", - "indent-string": "^3.0.0", - "log-symbols": "^1.0.2", - "log-update": "^2.3.0", - "strip-ansi": "^3.0.1" - }, - "dependencies": { - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true - }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "dev": true, - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - } - }, - "log-symbols": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-1.0.2.tgz", - "integrity": "sha1-N2/3tY6jCGoPCfrMdGF+ylAeGhg=", - "dev": true, - "requires": { - "chalk": "^1.0.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true + "node_modules/possible-typed-array-names": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.1.0.tgz", + "integrity": "sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/postcss": { + "version": "8.5.5", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.5.tgz", + "integrity": "sha512-d/jtm+rdNT8tpXuHY5MMtcbJFBkhXE6593XVR9UoGCH8jSFGci7jGvMGH5RYd5PBJW+00NZQt6gf7CbagJCrhg==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" } + ], + "license": "MIT", + "dependencies": { + "nanoid": "^3.3.11", + "picocolors": "^1.1.1", + "source-map-js": "^1.2.1" + }, + "engines": { + "node": "^10 || ^12 || >=14" } }, - "listr-verbose-renderer": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/listr-verbose-renderer/-/listr-verbose-renderer-0.5.0.tgz", - "integrity": "sha512-04PDPqSlsqIOaaaGZ+41vq5FejI9auqTInicFRndCBgE3bXG8D6W1I+mWhk+1nqbHmyhla/6BUrd5OSiHwKRXw==", + "node_modules/postcss-attribute-case-insensitive": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/postcss-attribute-case-insensitive/-/postcss-attribute-case-insensitive-6.0.3.tgz", + "integrity": "sha512-KHkmCILThWBRtg+Jn1owTnHPnFit4OkqS+eKiGEOPIGke54DCeYGJ6r0Fx/HjfE9M9kznApCLcU0DvnPchazMQ==", "dev": true, - "requires": { - "chalk": "^2.4.1", - "cli-cursor": "^2.1.0", - "date-fns": "^1.27.2", - "figures": "^2.0.0" - }, - "dependencies": { - "cli-cursor": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", - "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", - "dev": true, - "requires": { - "restore-cursor": "^2.0.0" - } - }, - "figures": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", - "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", - "dev": true, - "requires": { - "escape-string-regexp": "^1.0.5" - } - }, - "mimic-fn": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", - "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", - "dev": true + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" }, - "onetime": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", - "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", - "dev": true, - "requires": { - "mimic-fn": "^1.0.0" - } - }, - "restore-cursor": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", - "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", - "dev": true, - "requires": { - "onetime": "^2.0.0", - "signal-exit": "^3.0.2" - } + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" } + ], + "license": "MIT", + "dependencies": { + "postcss-selector-parser": "^6.0.13" + }, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "load-json-file": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", - "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", + "node_modules/postcss-clamp": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/postcss-clamp/-/postcss-clamp-4.1.0.tgz", + "integrity": "sha512-ry4b1Llo/9zz+PKC+030KUnPITTJAHeOwjfAyyB60eT0AorGLdzp52s31OsPRHRf8NchkgFoG2y6fCfn1IV1Ow==", "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "parse-json": "^4.0.0", - "pify": "^3.0.0", - "strip-bom": "^3.0.0" - }, + "license": "MIT", "dependencies": { - "pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", - "dev": true - } + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": ">=7.6.0" + }, + "peerDependencies": { + "postcss": "^8.4.6" } }, - "loader-runner": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-2.4.0.tgz", - "integrity": "sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw==", - "dev": true - }, - "loader-utils": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz", - "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" + "node_modules/postcss-color-functional-notation": { + "version": "6.0.14", + "resolved": "https://registry.npmjs.org/postcss-color-functional-notation/-/postcss-color-functional-notation-6.0.14.tgz", + "integrity": "sha512-dNUX+UH4dAozZ8uMHZ3CtCNYw8fyFAmqqdcyxMr7PEdM9jLXV19YscoYO0F25KqZYhmtWKQ+4tKrIZQrwzwg7A==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/css-color-parser": "^2.0.4", + "@csstools/css-parser-algorithms": "^2.7.1", + "@csstools/css-tokenizer": "^2.4.1", + "@csstools/postcss-progressive-custom-properties": "^3.3.0", + "@csstools/utilities": "^1.0.0" + }, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "node_modules/postcss-color-hex-alpha": { + "version": "9.0.4", + "resolved": "https://registry.npmjs.org/postcss-color-hex-alpha/-/postcss-color-hex-alpha-9.0.4.tgz", + "integrity": "sha512-XQZm4q4fNFqVCYMGPiBjcqDhuG7Ey2xrl99AnDJMyr5eDASsAGalndVgHZF8i97VFNy1GQeZc4q2ydagGmhelQ==", "dev": true, - "requires": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT", + "dependencies": { + "@csstools/utilities": "^1.0.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "lodash": { - "version": "4.17.15", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz", - "integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==", - "dev": true - }, - "lodash._reinterpolate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz", - "integrity": "sha1-DM8tiRZq8Ds2Y8eWU4t1rG4RTZ0=", - "dev": true - }, - "lodash.camelcase": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz", - "integrity": "sha1-soqmKIorn8ZRA1x3EfZathkDMaY=", - "dev": true - }, - "lodash.difference": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.difference/-/lodash.difference-4.5.0.tgz", - "integrity": "sha1-nMtOUF1Ia5FlE0V3KIWi3yf9AXw=", - "dev": true - }, - "lodash.ismatch": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.ismatch/-/lodash.ismatch-4.4.0.tgz", - "integrity": "sha1-dWy1FQyjum8RCFp4hJZF8Yj4Xzc=", - "dev": true - }, - "lodash.pad": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/lodash.pad/-/lodash.pad-4.5.1.tgz", - "integrity": "sha1-QzCUmoM6fI2iLMIPaibE1Z3runA=", - "dev": true - }, - "lodash.padend": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/lodash.padend/-/lodash.padend-4.6.1.tgz", - "integrity": "sha1-U8y6BH0G4VjTEfRdpiX05J5vFm4=", - "dev": true - }, - "lodash.padstart": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/lodash.padstart/-/lodash.padstart-4.6.1.tgz", - "integrity": "sha1-0uPuv/DZ05rVD1y9G1KnvOa7YRs=", - "dev": true - }, - "lodash.sortby": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz", - "integrity": "sha1-7dFMgk4sycHgsKG0K7UhBRakJDg=", - "dev": true - }, - "lodash.template": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.template/-/lodash.template-4.5.0.tgz", - "integrity": "sha512-84vYFxIkmidUiFxidA/KjjH9pAycqW+h980j7Fuz5qxRtO9pgB7MDFTdys1N7A5mcucRiDyEq4fusljItR1T/A==", + "node_modules/postcss-color-rebeccapurple": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/postcss-color-rebeccapurple/-/postcss-color-rebeccapurple-9.0.3.tgz", + "integrity": "sha512-ruBqzEFDYHrcVq3FnW3XHgwRqVMrtEPLBtD7K2YmsLKVc2jbkxzzNEctJKsPCpDZ+LeMHLKRDoSShVefGc+CkQ==", "dev": true, - "requires": { - "lodash._reinterpolate": "^3.0.0", - "lodash.templatesettings": "^4.0.0" + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/utilities": "^1.0.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "lodash.templatesettings": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/lodash.templatesettings/-/lodash.templatesettings-4.2.0.tgz", - "integrity": "sha512-stgLz+i3Aa9mZgnjr/O+v9ruKZsPsndy7qPZOchbqk2cnTU1ZaldKK+v7m54WoKIyxiuMZTKT2H81F8BeAc3ZQ==", + "node_modules/postcss-custom-media": { + "version": "10.0.8", + "resolved": "https://registry.npmjs.org/postcss-custom-media/-/postcss-custom-media-10.0.8.tgz", + "integrity": "sha512-V1KgPcmvlGdxTel4/CyQtBJEFhMVpEmRGFrnVtgfGIHj5PJX9vO36eFBxKBeJn+aCDTed70cc+98Mz3J/uVdGQ==", "dev": true, - "requires": { - "lodash._reinterpolate": "^3.0.0" + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT", + "dependencies": { + "@csstools/cascade-layer-name-parser": "^1.0.13", + "@csstools/css-parser-algorithms": "^2.7.1", + "@csstools/css-tokenizer": "^2.4.1", + "@csstools/media-query-list-parser": "^2.1.13" + }, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "lodash.uniq": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", - "integrity": "sha1-0CJTc662Uq3BvILklFM5qEJ1R3M=", - "dev": true - }, - "log-symbols": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-3.0.0.tgz", - "integrity": "sha512-dSkNGuI7iG3mfvDzUuYZyvk5dD9ocYCYzNU6CYDE6+Xqd+gwme6Z00NS3dUh8mq/73HaEtT7m6W+yUPtU6BZnQ==", + "node_modules/postcss-custom-properties": { + "version": "13.3.12", + "resolved": "https://registry.npmjs.org/postcss-custom-properties/-/postcss-custom-properties-13.3.12.tgz", + "integrity": "sha512-oPn/OVqONB2ZLNqN185LDyaVByELAA/u3l2CS2TS16x2j2XsmV4kd8U49+TMxmUsEU9d8fB/I10E6U7kB0L1BA==", "dev": true, - "requires": { - "chalk": "^2.4.2" + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT", + "dependencies": { + "@csstools/cascade-layer-name-parser": "^1.0.13", + "@csstools/css-parser-algorithms": "^2.7.1", + "@csstools/css-tokenizer": "^2.4.1", + "@csstools/utilities": "^1.0.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "log-update": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/log-update/-/log-update-2.3.0.tgz", - "integrity": "sha1-iDKP19HOeTiykoN0bwsbwSayRwg=", + "node_modules/postcss-custom-selectors": { + "version": "7.1.12", + "resolved": "https://registry.npmjs.org/postcss-custom-selectors/-/postcss-custom-selectors-7.1.12.tgz", + "integrity": "sha512-ctIoprBMJwByYMGjXG0F7IT2iMF2hnamQ+aWZETyBM0aAlyaYdVZTeUkk8RB+9h9wP+NdN3f01lfvKl2ZSqC0g==", "dev": true, - "requires": { - "ansi-escapes": "^3.0.0", - "cli-cursor": "^2.0.0", - "wrap-ansi": "^3.0.1" - }, - "dependencies": { - "ansi-escapes": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.2.0.tgz", - "integrity": "sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ==", - "dev": true - }, - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" }, - "cli-cursor": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", - "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", - "dev": true, - "requires": { - "restore-cursor": "^2.0.0" - } - }, - "mimic-fn": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", - "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", - "dev": true - }, - "onetime": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", - "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", - "dev": true, - "requires": { - "mimic-fn": "^1.0.0" - } - }, - "restore-cursor": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", - "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", - "dev": true, - "requires": { - "onetime": "^2.0.0", - "signal-exit": "^3.0.2" - } - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT", + "dependencies": { + "@csstools/cascade-layer-name-parser": "^1.0.13", + "@csstools/css-parser-algorithms": "^2.7.1", + "@csstools/css-tokenizer": "^2.4.1", + "postcss-selector-parser": "^6.1.0" + }, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/postcss-dir-pseudo-class": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/postcss-dir-pseudo-class/-/postcss-dir-pseudo-class-8.0.1.tgz", + "integrity": "sha512-uULohfWBBVoFiZXgsQA24JV6FdKIidQ+ZqxOouhWwdE+qJlALbkS5ScB43ZTjPK+xUZZhlaO/NjfCt5h4IKUfw==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" }, - "wrap-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-3.0.1.tgz", - "integrity": "sha1-KIoE2H7aXChuBg3+jxNc6NAH+Lo=", - "dev": true, - "requires": { - "string-width": "^2.1.1", - "strip-ansi": "^4.0.0" - } + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" } + ], + "license": "MIT-0", + "dependencies": { + "postcss-selector-parser": "^6.0.13" + }, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "lolex": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/lolex/-/lolex-5.1.2.tgz", - "integrity": "sha512-h4hmjAvHTmd+25JSwrtTIuwbKdwg5NzZVRMLn9saij4SZaepCrTCxPr35H/3bjwfMJtN+t3CX8672UIkglz28A==", + "node_modules/postcss-double-position-gradients": { + "version": "5.0.7", + "resolved": "https://registry.npmjs.org/postcss-double-position-gradients/-/postcss-double-position-gradients-5.0.7.tgz", + "integrity": "sha512-1xEhjV9u1s4l3iP5lRt1zvMjI/ya8492o9l/ivcxHhkO3nOz16moC4JpMxDUGrOs4R3hX+KWT7gKoV842cwRgg==", "dev": true, - "requires": { - "@sinonjs/commons": "^1.7.0" + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/postcss-progressive-custom-properties": "^3.3.0", + "@csstools/utilities": "^1.0.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "loose-envify": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", - "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "node_modules/postcss-focus-visible": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/postcss-focus-visible/-/postcss-focus-visible-9.0.1.tgz", + "integrity": "sha512-N2VQ5uPz3Z9ZcqI5tmeholn4d+1H14fKXszpjogZIrFbhaq0zNAtq8sAnw6VLiqGbL8YBzsnu7K9bBkTqaRimQ==", "dev": true, - "requires": { - "js-tokens": "^3.0.0 || ^4.0.0" + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "postcss-selector-parser": "^6.0.13" + }, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "loud-rejection": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", - "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=", + "node_modules/postcss-focus-within": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/postcss-focus-within/-/postcss-focus-within-8.0.1.tgz", + "integrity": "sha512-NFU3xcY/xwNaapVb+1uJ4n23XImoC86JNwkY/uduytSl2s9Ekc2EpzmRR63+ExitnW3Mab3Fba/wRPCT5oDILA==", "dev": true, - "requires": { - "currently-unhandled": "^0.4.1", - "signal-exit": "^3.0.0" + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "postcss-selector-parser": "^6.0.13" + }, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "lru-cache": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", - "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "node_modules/postcss-font-variant": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-font-variant/-/postcss-font-variant-5.0.0.tgz", + "integrity": "sha512-1fmkBaCALD72CK2a9i468mA/+tr9/1cBxRRMXOUaZqO43oWPR5imcyPjXwuv7PXbCid4ndlP5zWhidQVVa3hmA==", "dev": true, - "requires": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" + "license": "MIT", + "peerDependencies": { + "postcss": "^8.1.0" } }, - "make-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", - "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "node_modules/postcss-gap-properties": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/postcss-gap-properties/-/postcss-gap-properties-5.0.1.tgz", + "integrity": "sha512-k2z9Cnngc24c0KF4MtMuDdToROYqGMMUQGcE6V0odwjHyOHtaDBlLeRBV70y9/vF7KIbShrTRZ70JjsI1BZyWw==", "dev": true, - "requires": { - "pify": "^4.0.1", - "semver": "^5.6.0" - }, - "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" } + ], + "license": "MIT-0", + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "makeerror": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.11.tgz", - "integrity": "sha1-4BpckQnyr3lmDk6LlYd5AYT1qWw=", + "node_modules/postcss-image-set-function": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/postcss-image-set-function/-/postcss-image-set-function-6.0.3.tgz", + "integrity": "sha512-i2bXrBYzfbRzFnm+pVuxVePSTCRiNmlfssGI4H0tJQvDue+yywXwUxe68VyzXs7cGtMaH6MCLY6IbCShrSroCw==", "dev": true, - "requires": { - "tmpl": "1.0.x" + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/utilities": "^1.0.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "map-cache": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", - "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=", - "dev": true - }, - "map-obj": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-2.0.0.tgz", - "integrity": "sha1-plzSkIepJZi4eRJXpSPgISIqwfk=", - "dev": true - }, - "map-visit": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", - "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", + "node_modules/postcss-lab-function": { + "version": "6.0.19", + "resolved": "https://registry.npmjs.org/postcss-lab-function/-/postcss-lab-function-6.0.19.tgz", + "integrity": "sha512-vwln/mgvFrotJuGV8GFhpAOu9iGf3pvTBr6dLPDmUcqVD5OsQpEFyQMAFTxSxWXGEzBj6ld4pZ/9GDfEpXvo0g==", "dev": true, - "requires": { - "object-visit": "^1.0.0" + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/css-color-parser": "^2.0.4", + "@csstools/css-parser-algorithms": "^2.7.1", + "@csstools/css-tokenizer": "^2.4.1", + "@csstools/postcss-progressive-custom-properties": "^3.3.0", + "@csstools/utilities": "^1.0.0" + }, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "md5.js": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", - "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", + "node_modules/postcss-loader": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-8.1.1.tgz", + "integrity": "sha512-0IeqyAsG6tYiDRCYKQJLAmgQr47DX6N7sFSWvQxt6AcupX8DIdmykuk/o/tx0Lze3ErGHJEp5OSRxrelC6+NdQ==", "dev": true, - "requires": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" + "license": "MIT", + "dependencies": { + "cosmiconfig": "^9.0.0", + "jiti": "^1.20.0", + "semver": "^7.5.4" + }, + "engines": { + "node": ">= 18.12.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "@rspack/core": "0.x || 1.x", + "postcss": "^7.0.0 || ^8.0.1", + "webpack": "^5.0.0" + }, + "peerDependenciesMeta": { + "@rspack/core": { + "optional": true + }, + "webpack": { + "optional": true + } } }, - "memfs": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/memfs/-/memfs-3.1.2.tgz", - "integrity": "sha512-YubKuE+RGSdpZcRq2Nih8HcHj3LrqndsDFNB9IFjrgwzdM4eq+fImlDMfNm/HdRhYRkLdUecHGIpdz+wyrqlDg==", + "node_modules/postcss-loader/node_modules/jiti": { + "version": "1.21.7", + "resolved": "https://registry.npmjs.org/jiti/-/jiti-1.21.7.tgz", + "integrity": "sha512-/imKNG4EbWNrVjoNC/1H5/9GFy+tqjGBHCaSsN+P2RnPqjsLmv6UD3Ej+Kj8nBWaRAwyk7kK5ZUc+OEatnTR3A==", "dev": true, - "requires": { - "fs-monkey": "1.0.0" + "license": "MIT", + "bin": { + "jiti": "bin/jiti.js" } }, - "memory-fs": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.4.1.tgz", - "integrity": "sha1-OpoguEYlI+RHz7x+i7gO1me/xVI=", + "node_modules/postcss-logical": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/postcss-logical/-/postcss-logical-7.0.1.tgz", + "integrity": "sha512-8GwUQZE0ri0K0HJHkDv87XOLC8DE0msc+HoWLeKdtjDZEwpZ5xuK3QdV6FhmHSQW40LPkg43QzvATRAI3LsRkg==", "dev": true, - "requires": { - "errno": "^0.1.3", - "readable-stream": "^2.0.1" + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "memorystream": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/memorystream/-/memorystream-0.3.1.tgz", - "integrity": "sha1-htcJCzDORV1j+64S3aUaR93K+bI=", - "dev": true - }, - "meow": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/meow/-/meow-5.0.0.tgz", - "integrity": "sha512-CbTqYU17ABaLefO8vCU153ZZlprKYWDljcndKKDCFcYQITzWCXZAVk4QMFZPgvzrnUQ3uItnIE/LoUOwrT15Ig==", - "dev": true, - "requires": { - "camelcase-keys": "^4.0.0", - "decamelize-keys": "^1.0.0", - "loud-rejection": "^1.0.0", - "minimist-options": "^3.0.1", - "normalize-package-data": "^2.3.4", - "read-pkg-up": "^3.0.0", - "redent": "^2.0.0", - "trim-newlines": "^2.0.0", - "yargs-parser": "^10.0.0" + "node_modules/postcss-modules-extract-imports": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.1.0.tgz", + "integrity": "sha512-k3kNe0aNFQDAZGbin48pL2VNidTF0w4/eASDsxlyspobzU3wZQLOGj7L9gfRe0Jo9/4uud09DsjFNH7winGv8Q==", + "license": "ISC", + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" } }, - "merge-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", - "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", - "dev": true - }, - "merge2": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.3.0.tgz", - "integrity": "sha512-2j4DAdlBOkiSZIsaXk4mTE3sRS02yBHAtfy127xRV3bQUFqXkjHCHLW6Scv7DwNRbIWNHH8zpnz9zMaKXIdvYw==", - "dev": true - }, - "micromatch": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", - "dev": true, - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" - } - }, - "micromist": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/micromist/-/micromist-1.1.0.tgz", - "integrity": "sha512-+CQ76pabE9egniSEdmDuH+j2cYyIBKP97kujG8ZLZyLCRq5ExwtIy4DPHPFrq4jVbhMRBnyjuH50KU9Ohs8QCg==", - "dev": true, - "requires": { - "lodash.camelcase": "^4.3.0" + "node_modules/postcss-modules-local-by-default": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.2.0.tgz", + "integrity": "sha512-5kcJm/zk+GJDSfw+V/42fJ5fhjL5YbFDl8nVdXkJPLLW+Vf9mTD5Xe0wqIaDnLuL2U6cDNpTr+UQ+v2HWIBhzw==", + "license": "MIT", + "dependencies": { + "icss-utils": "^5.0.0", + "postcss-selector-parser": "^7.0.0", + "postcss-value-parser": "^4.1.0" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" } }, - "miller-rabin": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", - "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", - "dev": true, - "requires": { - "bn.js": "^4.0.0", - "brorand": "^1.0.1" + "node_modules/postcss-modules-local-by-default/node_modules/postcss-selector-parser": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.0.tgz", + "integrity": "sha512-8sLjZwK0R+JlxlYcTuVnyT2v+htpdrjDOKuMcOVdYjt52Lh8hWRYpxBPoKx/Zg+bcjc3wx6fmQevMmUztS/ccA==", + "license": "MIT", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" } }, - "mime-db": { - "version": "1.43.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.43.0.tgz", - "integrity": "sha512-+5dsGEEovYbT8UY9yD7eE4XTc4UwJ1jBYlgaQQF38ENsKR3wj/8q8RFZrF9WIZpB2V1ArTVFUva8sAul1NzRzQ==", - "dev": true - }, - "mime-types": { - "version": "2.1.26", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.26.tgz", - "integrity": "sha512-01paPWYgLrkqAyrlDorC1uDwl2p3qZT7yl806vW7DvDoxwXi46jsjFbg+WdwotBIk6/MbEhO/dh5aZ5sNj/dWQ==", - "dev": true, - "requires": { - "mime-db": "1.43.0" + "node_modules/postcss-modules-scope": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.2.1.tgz", + "integrity": "sha512-m9jZstCVaqGjTAuny8MdgE88scJnCiQSlSrOWcTQgM2t32UBe+MUmFSO5t7VMSfAf/FJKImAxBav8ooCHJXCJA==", + "license": "ISC", + "dependencies": { + "postcss-selector-parser": "^7.0.0" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" } }, - "mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", - "dev": true - }, - "minimalistic-assert": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", - "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", - "dev": true - }, - "minimalistic-crypto-utils": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", - "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=", - "dev": true - }, - "minimatch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" + "node_modules/postcss-modules-scope/node_modules/postcss-selector-parser": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.0.tgz", + "integrity": "sha512-8sLjZwK0R+JlxlYcTuVnyT2v+htpdrjDOKuMcOVdYjt52Lh8hWRYpxBPoKx/Zg+bcjc3wx6fmQevMmUztS/ccA==", + "license": "MIT", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" } }, - "minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" + "node_modules/postcss-modules-values": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz", + "integrity": "sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==", + "license": "ISC", + "dependencies": { + "icss-utils": "^5.0.0" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } }, - "minimist-options": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-3.0.2.tgz", - "integrity": "sha512-FyBrT/d0d4+uiZRbqznPXqw3IpZZG3gl3wKWiX784FycUKVwBt0uLBFkQrtE4tZOrgo78nZp2jnKz3L65T5LdQ==", + "node_modules/postcss-nesting": { + "version": "12.1.5", + "resolved": "https://registry.npmjs.org/postcss-nesting/-/postcss-nesting-12.1.5.tgz", + "integrity": "sha512-N1NgI1PDCiAGWPTYrwqm8wpjv0bgDmkYHH72pNsqTCv9CObxjxftdYu6AKtGN+pnJa7FQjMm3v4sp8QJbFsYdQ==", "dev": true, - "requires": { - "arrify": "^1.0.1", - "is-plain-obj": "^1.1.0" + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/selector-resolve-nested": "^1.1.0", + "@csstools/selector-specificity": "^3.1.1", + "postcss-selector-parser": "^6.1.0" + }, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "mississippi": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/mississippi/-/mississippi-3.0.0.tgz", - "integrity": "sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA==", - "dev": true, - "requires": { - "concat-stream": "^1.5.0", - "duplexify": "^3.4.2", - "end-of-stream": "^1.1.0", - "flush-write-stream": "^1.0.0", - "from2": "^2.1.0", - "parallel-transform": "^1.1.0", - "pump": "^3.0.0", - "pumpify": "^1.3.3", - "stream-each": "^1.1.0", - "through2": "^2.0.0" - }, - "dependencies": { - "through2": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", - "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", - "dev": true, - "requires": { - "readable-stream": "~2.3.6", - "xtend": "~4.0.1" - } + "node_modules/postcss-opacity-percentage": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/postcss-opacity-percentage/-/postcss-opacity-percentage-2.0.0.tgz", + "integrity": "sha512-lyDrCOtntq5Y1JZpBFzIWm2wG9kbEdujpNt4NLannF+J9c8CgFIzPa80YQfdza+Y+yFfzbYj/rfoOsYsooUWTQ==", + "dev": true, + "funding": [ + { + "type": "kofi", + "url": "https://ko-fi.com/mrcgrtz" + }, + { + "type": "liberapay", + "url": "https://liberapay.com/mrcgrtz" } + ], + "license": "MIT", + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.2" } }, - "mixin-deep": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz", - "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==", - "dev": true, - "requires": { - "for-in": "^1.0.2", - "is-extendable": "^1.0.1" - }, - "dependencies": { - "is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "dev": true, - "requires": { - "is-plain-object": "^2.0.4" - } + "node_modules/postcss-overflow-shorthand": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/postcss-overflow-shorthand/-/postcss-overflow-shorthand-5.0.1.tgz", + "integrity": "sha512-XzjBYKLd1t6vHsaokMV9URBt2EwC9a7nDhpQpjoPk2HRTSQfokPfyAS/Q7AOrzUu6q+vp/GnrDBGuj/FCaRqrQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" } + ], + "license": "MIT-0", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "mkdirp": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", - "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "node_modules/postcss-page-break": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/postcss-page-break/-/postcss-page-break-3.0.4.tgz", + "integrity": "sha512-1JGu8oCjVXLa9q9rFTo4MbeeA5FMe00/9C7lN4va606Rdb+HkxXtXsmEDrIraQ11fGz/WvKWa8gMuCKkrXpTsQ==", "dev": true, - "requires": { - "minimist": "^1.2.5" + "license": "MIT", + "peerDependencies": { + "postcss": "^8" } }, - "modify-values": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/modify-values/-/modify-values-1.0.1.tgz", - "integrity": "sha512-xV2bxeN6F7oYjZWTe/YPAy6MN2M+sL4u/Rlm2AHCIVGfo2p1yGmBHQ6vHehl4bRTZBdHu3TSkWdYgkwpYzAGSw==", - "dev": true - }, - "move-concurrently": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz", - "integrity": "sha1-viwAX9oy4LKa8fBdfEszIUxwH5I=", + "node_modules/postcss-place": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/postcss-place/-/postcss-place-9.0.1.tgz", + "integrity": "sha512-JfL+paQOgRQRMoYFc2f73pGuG/Aw3tt4vYMR6UA3cWVMxivviPTnMFnFTczUJOA4K2Zga6xgQVE+PcLs64WC8Q==", "dev": true, - "requires": { - "aproba": "^1.1.1", - "copy-concurrently": "^1.0.0", - "fs-write-stream-atomic": "^1.0.8", - "mkdirp": "^0.5.1", - "rimraf": "^2.5.4", - "run-queue": "^1.0.3" + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "mrm-core": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/mrm-core/-/mrm-core-3.3.4.tgz", - "integrity": "sha512-vTywqjBrQIDlRuoww+xspvm/be272c2M54VY2GWY4NCZtSSG3uY6zyEuQekKANM5HEKc8WVn+jQGHmdETQCtww==", - "dev": true, - "requires": { - "babel-code-frame": "^6.26.0", - "comment-json": "^1.1.3", - "detect-indent": "^5.0.0", - "editorconfig": "^0.15.0", - "find-up": "^3.0.0", - "fs-extra": "^7.0.0", - "js-yaml": "^3.13.0", - "kleur": "^2.0.2", - "listify": "^1.0.0", - "lodash": "^4.17.11", - "minimist": "^1.2.0", - "prop-ini": "^0.0.2", - "readme-badger": "^0.3.0", - "semver": "^5.5.1", - "smpltmpl": "^1.0.2", - "split-lines": "^2.0.0", - "strip-bom": "^3.0.0", - "webpack-merge": "^4.2.1" - }, - "dependencies": { - "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "dev": true, - "requires": { - "locate-path": "^3.0.0" - } - }, - "locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "dev": true, - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "dev": true, - "requires": { - "p-limit": "^2.0.0" - } - }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true + "node_modules/postcss-preset-env": { + "version": "9.6.0", + "resolved": "https://registry.npmjs.org/postcss-preset-env/-/postcss-preset-env-9.6.0.tgz", + "integrity": "sha512-Lxfk4RYjUdwPCYkc321QMdgtdCP34AeI94z+/8kVmqnTIlD4bMRQeGcMZgwz8BxHrzQiFXYIR5d7k/9JMs2MEA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/postcss-cascade-layers": "^4.0.6", + "@csstools/postcss-color-function": "^3.0.19", + "@csstools/postcss-color-mix-function": "^2.0.19", + "@csstools/postcss-content-alt-text": "^1.0.0", + "@csstools/postcss-exponential-functions": "^1.0.9", + "@csstools/postcss-font-format-keywords": "^3.0.2", + "@csstools/postcss-gamut-mapping": "^1.0.11", + "@csstools/postcss-gradients-interpolation-method": "^4.0.20", + "@csstools/postcss-hwb-function": "^3.0.18", + "@csstools/postcss-ic-unit": "^3.0.7", + "@csstools/postcss-initial": "^1.0.1", + "@csstools/postcss-is-pseudo-class": "^4.0.8", + "@csstools/postcss-light-dark-function": "^1.0.8", + "@csstools/postcss-logical-float-and-clear": "^2.0.1", + "@csstools/postcss-logical-overflow": "^1.0.1", + "@csstools/postcss-logical-overscroll-behavior": "^1.0.1", + "@csstools/postcss-logical-resize": "^2.0.1", + "@csstools/postcss-logical-viewport-units": "^2.0.11", + "@csstools/postcss-media-minmax": "^1.1.8", + "@csstools/postcss-media-queries-aspect-ratio-number-values": "^2.0.11", + "@csstools/postcss-nested-calc": "^3.0.2", + "@csstools/postcss-normalize-display-values": "^3.0.2", + "@csstools/postcss-oklab-function": "^3.0.19", + "@csstools/postcss-progressive-custom-properties": "^3.3.0", + "@csstools/postcss-relative-color-syntax": "^2.0.19", + "@csstools/postcss-scope-pseudo-class": "^3.0.1", + "@csstools/postcss-stepped-value-functions": "^3.0.10", + "@csstools/postcss-text-decoration-shorthand": "^3.0.7", + "@csstools/postcss-trigonometric-functions": "^3.0.10", + "@csstools/postcss-unset-value": "^3.0.1", + "autoprefixer": "^10.4.19", + "browserslist": "^4.23.1", + "css-blank-pseudo": "^6.0.2", + "css-has-pseudo": "^6.0.5", + "css-prefers-color-scheme": "^9.0.1", + "cssdb": "^8.1.0", + "postcss-attribute-case-insensitive": "^6.0.3", + "postcss-clamp": "^4.1.0", + "postcss-color-functional-notation": "^6.0.14", + "postcss-color-hex-alpha": "^9.0.4", + "postcss-color-rebeccapurple": "^9.0.3", + "postcss-custom-media": "^10.0.8", + "postcss-custom-properties": "^13.3.12", + "postcss-custom-selectors": "^7.1.12", + "postcss-dir-pseudo-class": "^8.0.1", + "postcss-double-position-gradients": "^5.0.7", + "postcss-focus-visible": "^9.0.1", + "postcss-focus-within": "^8.0.1", + "postcss-font-variant": "^5.0.0", + "postcss-gap-properties": "^5.0.1", + "postcss-image-set-function": "^6.0.3", + "postcss-lab-function": "^6.0.19", + "postcss-logical": "^7.0.1", + "postcss-nesting": "^12.1.5", + "postcss-opacity-percentage": "^2.0.0", + "postcss-overflow-shorthand": "^5.0.1", + "postcss-page-break": "^3.0.4", + "postcss-place": "^9.0.1", + "postcss-pseudo-class-any-link": "^9.0.2", + "postcss-replace-overflow-wrap": "^4.0.0", + "postcss-selector-not": "^7.0.2" + }, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - }, - "mute-stream": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.6.tgz", - "integrity": "sha1-SJYrGeFp/R38JAs/HnMXYnu8R9s=", - "dev": true - }, - "nan": { - "version": "2.14.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.0.tgz", - "integrity": "sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg==", + "node_modules/postcss-pseudo-class-any-link": { + "version": "9.0.2", + "resolved": "https://registry.npmjs.org/postcss-pseudo-class-any-link/-/postcss-pseudo-class-any-link-9.0.2.tgz", + "integrity": "sha512-HFSsxIqQ9nA27ahyfH37cRWGk3SYyQLpk0LiWw/UGMV4VKT5YG2ONee4Pz/oFesnK0dn2AjcyequDbIjKJgB0g==", "dev": true, - "optional": true - }, - "nanomatch": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", - "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", - "dev": true, - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "fragment-cache": "^0.2.1", - "is-windows": "^1.0.2", - "kind-of": "^6.0.2", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - } - }, - "natural-compare": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", - "dev": true - }, - "neo-async": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.1.tgz", - "integrity": "sha512-iyam8fBuCUpWeKPGpaNMetEocMt364qkCsfL9JuhjXX6dRnguRVOfk2GZaDpPjcOKiiXCPINZC1GczQ7iTq3Zw==", - "dev": true - }, - "nice-try": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", - "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", - "dev": true - }, - "node-int64": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", - "integrity": "sha1-h6kGXNs1XTGC2PlM4RGIuCXGijs=", - "dev": true - }, - "node-libs-browser": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.2.1.tgz", - "integrity": "sha512-h/zcD8H9kaDZ9ALUWwlBUDo6TKF8a7qBSCSEGfjTVIYeqsioSKaAX+BN7NgiMGp6iSIXZ3PxgCu8KS3b71YK5Q==", - "dev": true, - "requires": { - "assert": "^1.1.1", - "browserify-zlib": "^0.2.0", - "buffer": "^4.3.0", - "console-browserify": "^1.1.0", - "constants-browserify": "^1.0.0", - "crypto-browserify": "^3.11.0", - "domain-browser": "^1.1.1", - "events": "^3.0.0", - "https-browserify": "^1.0.0", - "os-browserify": "^0.3.0", - "path-browserify": "0.0.1", - "process": "^0.11.10", - "punycode": "^1.2.4", - "querystring-es3": "^0.2.0", - "readable-stream": "^2.3.3", - "stream-browserify": "^2.0.1", - "stream-http": "^2.7.2", - "string_decoder": "^1.0.0", - "timers-browserify": "^2.0.4", - "tty-browserify": "0.0.0", - "url": "^0.11.0", - "util": "^0.11.0", - "vm-browserify": "^1.0.1" - }, - "dependencies": { - "punycode": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", - "dev": true + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" } + ], + "license": "MIT-0", + "dependencies": { + "postcss-selector-parser": "^6.0.13" + }, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "node-modules-regexp": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz", - "integrity": "sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA=", - "dev": true + "node_modules/postcss-replace-overflow-wrap": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-replace-overflow-wrap/-/postcss-replace-overflow-wrap-4.0.0.tgz", + "integrity": "sha512-KmF7SBPphT4gPPcKZc7aDkweHiKEEO8cla/GjcBK+ckKxiZslIu3C4GCRW3DNfL0o7yW7kMQu9xlZ1kXRXLXtw==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "postcss": "^8.0.3" + } }, - "node-notifier": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/node-notifier/-/node-notifier-6.0.0.tgz", - "integrity": "sha512-SVfQ/wMw+DesunOm5cKqr6yDcvUTDl/yc97ybGHMrteNEY6oekXpNpS3lZwgLlwz0FLgHoiW28ZpmBHUDg37cw==", + "node_modules/postcss-selector-not": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/postcss-selector-not/-/postcss-selector-not-7.0.2.tgz", + "integrity": "sha512-/SSxf/90Obye49VZIfc0ls4H0P6i6V1iHv0pzZH8SdgvZOPFkF37ef1r5cyWcMflJSFJ5bfuoluTnFnBBFiuSA==", "dev": true, - "optional": true, - "requires": { - "growly": "^1.3.0", - "is-wsl": "^2.1.1", - "semver": "^6.3.0", - "shellwords": "^0.1.1", - "which": "^1.3.1" - }, - "dependencies": { - "which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "dev": true, - "optional": true, - "requires": { - "isexe": "^2.0.0" - } + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" } + ], + "license": "MIT", + "dependencies": { + "postcss-selector-parser": "^6.0.13" + }, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "node-releases": { - "version": "1.1.53", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.53.tgz", - "integrity": "sha512-wp8zyQVwef2hpZ/dJH7SfSrIPD6YoJz6BDQDpGEkcA0s3LpAQoxBIYmfIq6QAhC1DhwsyCgTaTTcONwX8qzCuQ==", - "dev": true - }, - "normalize-package-data": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", - "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", "dev": true, - "requires": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" - }, + "license": "MIT", "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - } + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" } }, - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==" - }, - "normalize-range": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", - "integrity": "sha1-LRDAa9/TEuqXd2laTShDlFa3WUI=", - "dev": true + "node_modules/postcss-value-parser": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", + "license": "MIT" }, - "npm-run-all": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/npm-run-all/-/npm-run-all-4.1.5.tgz", - "integrity": "sha512-Oo82gJDAVcaMdi3nuoKFavkIHBRVqQ1qvMb+9LHk/cF4P6B2m8aP04hGf7oL6wZ9BuGwX1onlLhpuoofSyoQDQ==", + "node_modules/prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "chalk": "^2.4.1", - "cross-spawn": "^6.0.5", - "memorystream": "^0.3.1", - "minimatch": "^3.0.4", - "pidtree": "^0.3.0", - "read-pkg": "^3.0.0", - "shell-quote": "^1.6.1", - "string.prototype.padend": "^3.0.0" + "license": "MIT", + "engines": { + "node": ">= 0.8.0" } }, - "npm-run-path": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", - "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", + "node_modules/prettier": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.5.3.tgz", + "integrity": "sha512-QQtaxnoDJeAkDvDKWCLiwIXkTgRhwYDEQCghU9Z6q03iyek/rxRh/2lC3HB7P8sWT2xC/y5JDctPLBIGzHKbhw==", "dev": true, - "requires": { - "path-key": "^2.0.0" + "license": "MIT", + "bin": { + "prettier": "bin/prettier.cjs" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/prettier/prettier?sponsor=1" } }, - "npmlog": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-2.0.4.tgz", - "integrity": "sha1-mLUlMPJRTKkNCexbIsiEZyI3VpI=", + "node_modules/pretty-format": { + "version": "30.0.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-30.0.0.tgz", + "integrity": "sha512-18NAOUr4ZOQiIR+BgI5NhQE7uREdx4ZyV0dyay5izh4yfQ+1T7BSvggxvRGoXocrRyevqW5OhScUjbi9GB8R8Q==", "dev": true, - "requires": { - "ansi": "~0.3.1", - "are-we-there-yet": "~1.1.2", - "gauge": "~1.2.5" + "license": "MIT", + "dependencies": { + "@jest/schemas": "30.0.0", + "ansi-styles": "^5.2.0", + "react-is": "^18.3.1" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" } }, - "null-check": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/null-check/-/null-check-1.0.0.tgz", - "integrity": "sha1-l33/1xdgErnsMNKjnbXPcqBDnt0=", - "dev": true + "node_modules/pretty-format/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } }, - "num2fraction": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/num2fraction/-/num2fraction-1.2.2.tgz", - "integrity": "sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4=", - "dev": true + "node_modules/process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", + "dev": true, + "license": "MIT" }, - "number-is-nan": { + "node_modules/prr": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", - "dev": true - }, - "nwsapi": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.0.tgz", - "integrity": "sha512-h2AatdwYH+JHiZpv7pt/gSX1XoRGb7L/qSIeuqA6GwYoF9w1vP1cw42TO0aI2pNyshRK5893hNSl+1//vHK7hQ==", - "dev": true - }, - "oauth-sign": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", - "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", - "dev": true + "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", + "integrity": "sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==", + "dev": true, + "license": "MIT", + "optional": true }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", - "dev": true + "node_modules/punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } }, - "object-copy": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", - "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", - "dev": true, - "requires": { - "copy-descriptor": "^0.1.0", - "define-property": "^0.2.5", - "kind-of": "^3.0.3" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } + "node_modules/pure-rand": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/pure-rand/-/pure-rand-7.0.1.tgz", + "integrity": "sha512-oTUZM/NAZS8p7ANR3SHh30kXB+zK2r2BPcEn/awJIbOvq82WoMN4p62AWWp3Hhw50G0xMsw1mhIBLqHw64EcNQ==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/dubzzz" }, - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } + { + "type": "opencollective", + "url": "https://opencollective.com/fast-check" } - } - }, - "object-inspect": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.7.0.tgz", - "integrity": "sha512-a7pEHdh1xKIAgTySUGgLMx/xwDZskN1Ud6egYYN3EdRW4ZMPNEDUTF+hwy2LUC+Bl+SyLXANnwz/jyh/qutKUw==", - "dev": true - }, - "object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true + ], + "license": "MIT" }, - "object-visit": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", - "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", + "node_modules/q": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/q/-/q-1.5.1.tgz", + "integrity": "sha512-kV/CThkXo6xyFEZUugw/+pIOywXcDbFYgSct5cT3gqlbkBE1SJdwy6UQoZvodiWF/ckQLZyDE/Bu1M6gVu5lVw==", + "deprecated": "You or someone you depend on is using Q, the JavaScript Promise library that gave JavaScript developers strong feelings about promises. They can almost certainly migrate to the native JavaScript promise now. Thank you literally everyone for joining me in this bet against the odds. Be excellent to each other.\n\n(For a CapTP with native promises, see @endo/eventual-send and @endo/captp)", "dev": true, - "requires": { - "isobject": "^3.0.0" + "license": "MIT", + "engines": { + "node": ">=0.6.0", + "teleport": ">=0.2.0" } }, - "object.assign": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz", - "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==", + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", "dev": true, - "requires": { - "define-properties": "^1.1.2", - "function-bind": "^1.1.1", - "has-symbols": "^1.0.0", - "object-keys": "^1.0.11" - } + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" }, - "object.pick": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", - "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", + "node_modules/quick-lru": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-4.0.1.tgz", + "integrity": "sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==", "dev": true, - "requires": { - "isobject": "^3.0.1" + "license": "MIT", + "engines": { + "node": ">=8" } }, - "object.values": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.1.tgz", - "integrity": "sha512-WTa54g2K8iu0kmS/us18jEmdv1a4Wi//BZ/DTVYEcH0XhLM5NYdpDHja3gt57VrZLcNAO2WGA+KpWsDBaHt6eA==", + "node_modules/randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", "dev": true, - "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.0-next.1", - "function-bind": "^1.1.1", - "has": "^1.0.3" + "license": "MIT", + "dependencies": { + "safe-buffer": "^5.1.0" } }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "node_modules/react-is": { + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz", + "integrity": "sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==", "dev": true, - "requires": { - "wrappy": "1" - } + "license": "MIT" }, - "onetime": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.0.tgz", - "integrity": "sha512-5NcSkPHhwTVFIQN+TUqXoS5+dlElHXdpAWu9I0HP20YOtIi+aZ0Ct82jdlILDxjLEAWwvm+qj1m6aEtsDVmm6Q==", + "node_modules/read-pkg": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", + "integrity": "sha512-BLq/cCO9two+lBgiTYNqD6GdtK8s4NpaWrl6/rCO9w0TUS8oJl7cmToOZfRYllKTISY6nt1U7jQ53brmKqY6BA==", "dev": true, - "requires": { - "mimic-fn": "^2.1.0" + "license": "MIT", + "dependencies": { + "load-json-file": "^4.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^3.0.0" + }, + "engines": { + "node": ">=4" } }, - "opencollective-postinstall": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/opencollective-postinstall/-/opencollective-postinstall-2.0.2.tgz", - "integrity": "sha512-pVOEP16TrAO2/fjej1IdOyupJY8KDUM1CvsaScRbw6oddvpQoOfGk4ywha0HKKVAD6RkW4x6Q+tNBwhf3Bgpuw==", - "dev": true - }, - "optionator": { - "version": "0.8.3", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", - "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", - "dev": true, - "requires": { - "deep-is": "~0.1.3", - "fast-levenshtein": "~2.0.6", - "levn": "~0.3.0", - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2", - "word-wrap": "~1.2.3" - } - }, - "os-browserify": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", - "integrity": "sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=", - "dev": true - }, - "os-shim": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/os-shim/-/os-shim-0.1.3.tgz", - "integrity": "sha1-a2LDeRz3kJ6jXtRuF2WLtBfLORc=", - "dev": true - }, - "os-tmpdir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", - "dev": true + "node_modules/read-pkg-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz", + "integrity": "sha512-YFzFrVvpC6frF1sz8psoHDBGF7fLPc+llq/8NB43oagqWkx8ar5zYtsTORtOjw9W2RHLpWP+zTWwBvf1bCmcSw==", + "dev": true, + "license": "MIT", + "dependencies": { + "find-up": "^2.0.0", + "read-pkg": "^3.0.0" + }, + "engines": { + "node": ">=4" + } }, - "p-each-series": { + "node_modules/read-pkg-up/node_modules/find-up": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/p-each-series/-/p-each-series-2.1.0.tgz", - "integrity": "sha512-ZuRs1miPT4HrjFa+9fRfOFXxGJfORgelKV9f9nNOWw2gl6gVsRaVDOQP0+MI0G0wGKns1Yacsu0GjOFbTK0JFQ==", - "dev": true + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha512-NWzkk0jSJtTt08+FBFMvXoeZnOJD+jTtsRmBYbAIzJdX6l7dLgR7CTubCM5/eDdPUBvLCeVasP1brfVR/9/EZQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "locate-path": "^2.0.0" + }, + "engines": { + "node": ">=4" + } }, - "p-finally": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", - "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", - "dev": true + "node_modules/read-pkg-up/node_modules/locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha512-NCI2kiDkyR7VeEKm27Kda/iQHyKJe1Bu0FlTbYp3CqJu+9IFe9bLyAjMxf5ZDDbEg+iMPzB5zYyUTSm8wVTKmA==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=4" + } }, - "p-limit": { + "node_modules/read-pkg-up/node_modules/p-limit": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "p-try": "^1.0.0" + }, + "engines": { + "node": ">=4" } }, - "p-locate": { + "node_modules/read-pkg-up/node_modules/p-locate": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "integrity": "sha512-nQja7m7gSKuewoVRen45CtVfODR3crN3goVQ0DDZ9N3yHxgpkuBhZqsaiotSQRrADUrne346peY7kT3TSACykg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "p-limit": "^1.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/read-pkg-up/node_modules/p-try": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", + "integrity": "sha512-U1etNYuMJoIz3ZXSrrySFjsXQTWOx2/jdi86L+2pRvph/qMKL6sbcCYdH23fqsbm8TH2Gn0OybpT4eSFlCVHww==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" } }, - "p-map": { + "node_modules/read-pkg-up/node_modules/path-exists": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz", - "integrity": "sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", "dev": true, - "requires": { - "aggregate-error": "^3.0.0" + "license": "MIT", + "engines": { + "node": ">=4" } }, - "p-try": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", - "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", - "dev": true + "node_modules/read-pkg/node_modules/path-type": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", + "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", + "dev": true, + "license": "MIT", + "dependencies": { + "pify": "^3.0.0" + }, + "engines": { + "node": ">=4" + } }, - "pako": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", - "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", - "dev": true + "node_modules/read-pkg/node_modules/pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } }, - "parallel-transform": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/parallel-transform/-/parallel-transform-1.2.0.tgz", - "integrity": "sha512-P2vSmIu38uIlvdcU7fDkyrxj33gTUy/ABO5ZUbGowxNCopBq/OoD42bP4UmMrJoPyk4Uqf0mu3mtWBhHCZD8yg==", + "node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", "dev": true, - "requires": { - "cyclist": "^1.0.1", + "license": "MIT", + "dependencies": { "inherits": "^2.0.3", - "readable-stream": "^2.1.5" + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" } }, - "parent-module": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", - "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", "dev": true, - "requires": { - "callsites": "^3.0.0" + "license": "MIT", + "optional": true, + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" } }, - "parse-asn1": { - "version": "5.1.5", - "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.5.tgz", - "integrity": "sha512-jkMYn1dcJqF6d5CpU689bq7w/b5ALS9ROVSpQDPrZsqqesUJii9qutvoT5ltGedNXMO2e16YUWIghG9KxaViTQ==", + "node_modules/readdirp/node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", "dev": true, - "requires": { - "asn1.js": "^4.0.0", - "browserify-aes": "^1.0.0", - "create-hash": "^1.1.0", - "evp_bytestokey": "^1.0.0", - "pbkdf2": "^3.0.3", - "safe-buffer": "^5.1.1" + "license": "MIT", + "optional": true, + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" } }, - "parse-git-config": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/parse-git-config/-/parse-git-config-1.1.1.tgz", - "integrity": "sha1-06mYQxcTL1c5hxK7pDjhKVkN34w=", - "dev": true, - "requires": { - "extend-shallow": "^2.0.1", - "fs-exists-sync": "^0.1.0", - "git-config-path": "^1.0.1", - "ini": "^1.3.4" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } + "node_modules/redent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz", + "integrity": "sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==", + "dev": true, + "license": "MIT", + "dependencies": { + "indent-string": "^4.0.0", + "strip-indent": "^3.0.0" + }, + "engines": { + "node": ">=8" } }, - "parse-github-repo-url": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/parse-github-repo-url/-/parse-github-repo-url-1.4.1.tgz", - "integrity": "sha1-nn2LslKmy2ukJZUGC3v23z28H1A=", - "dev": true - }, - "parse-github-url": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/parse-github-url/-/parse-github-url-1.0.2.tgz", - "integrity": "sha512-kgBf6avCbO3Cn6+RnzRGLkUsv4ZVqv/VfAYkRsyBcgkshNvVBkRn1FEZcW0Jb+npXQWm2vHPnnOqFteZxRRGNw==", - "dev": true - }, - "parse-json": { + "node_modules/redent/node_modules/indent-string": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", "dev": true, - "requires": { - "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1" + "license": "MIT", + "engines": { + "node": ">=8" } }, - "parse-passwd": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz", - "integrity": "sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY=", - "dev": true - }, - "parse5": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-5.1.0.tgz", - "integrity": "sha512-fxNG2sQjHvlVAYmzBZS9YlDp6PTSSDwa98vkD4QgVDDCAo84z5X1t5XyJQ62ImdLXx5NdIIfihey6xpum9/gRQ==", - "dev": true - }, - "pascalcase": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", - "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=", - "dev": true - }, - "path-browserify": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.1.tgz", - "integrity": "sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ==", - "dev": true + "node_modules/reflect.getprototypeof": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.10.tgz", + "integrity": "sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==", + "dev": true, + "license": "MIT", + "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.0.0", + "get-intrinsic": "^1.2.7", + "get-proto": "^1.0.1", + "which-builtin-type": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "path-dirname": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", - "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=", - "dev": true + "node_modules/regenerate": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", + "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", + "dev": true, + "license": "MIT" }, - "path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", - "dev": true + "node_modules/regenerate-unicode-properties": { + "version": "10.2.0", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.2.0.tgz", + "integrity": "sha512-DqHn3DwbmmPVzeKj9woBadqmXxLvQoQIwu7nopMc72ztvxVmVk2SBhSnx67zuye5TP+lJsb/TBQsjLKhnDf3MA==", + "dev": true, + "license": "MIT", + "dependencies": { + "regenerate": "^1.4.2" + }, + "engines": { + "node": ">=4" + } }, - "path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", - "dev": true + "node_modules/regexp.prototype.flags": { + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.4.tgz", + "integrity": "sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==", + "dev": true, + "license": "MIT", + "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" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "path-key": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", - "dev": true + "node_modules/regexpu-core": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-6.2.0.tgz", + "integrity": "sha512-H66BPQMrv+V16t8xtmq+UC0CBpiTBA60V8ibS1QVReIp8T1z8hwFxqcGzm9K6lgsN7sB5edVH8a+ze6Fqm4weA==", + "dev": true, + "license": "MIT", + "dependencies": { + "regenerate": "^1.4.2", + "regenerate-unicode-properties": "^10.2.0", + "regjsgen": "^0.8.0", + "regjsparser": "^0.12.0", + "unicode-match-property-ecmascript": "^2.0.0", + "unicode-match-property-value-ecmascript": "^2.1.0" + }, + "engines": { + "node": ">=4" + } }, - "path-parse": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", - "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==", - "dev": true + "node_modules/regjsgen": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.8.0.tgz", + "integrity": "sha512-RvwtGe3d7LvWiDQXeQw8p5asZUmfU1G/l6WbUXeHta7Y2PEIvBTwH6E2EfmYUK8pxcxEdEmaomqyp0vZZ7C+3Q==", + "dev": true, + "license": "MIT" }, - "path-type": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", - "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", + "node_modules/regjsparser": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.12.0.tgz", + "integrity": "sha512-cnE+y8bz4NhMjISKbgeVJtqNbtf5QpjZP+Bslo+UqkIt9QPnX9q095eiRRASJG1/tz6dlNr6Z5NsBiWYokp6EQ==", "dev": true, - "requires": { - "pify": "^3.0.0" - }, + "license": "BSD-2-Clause", "dependencies": { - "pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", - "dev": true - } + "jsesc": "~3.0.2" + }, + "bin": { + "regjsparser": "bin/parser" } }, - "pbkdf2": { - "version": "3.0.17", - "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.17.tgz", - "integrity": "sha512-U/il5MsrZp7mGg3mSQfn742na2T+1/vHDCG5/iTI3X9MKUuYUZVLQhyRsg06mCgDBTd57TxzgZt7P+fYfjRLtA==", + "node_modules/regjsparser/node_modules/jsesc": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.0.2.tgz", + "integrity": "sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==", "dev": true, - "requires": { - "create-hash": "^1.1.2", - "create-hmac": "^1.1.4", - "ripemd160": "^2.0.1", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" + "license": "MIT", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=6" } }, - "performance-now": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", - "dev": true - }, - "picomatch": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz", - "integrity": "sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==", - "dev": true + "node_modules/repeat-string": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", + "integrity": "sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10" + } }, - "pidtree": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/pidtree/-/pidtree-0.3.1.tgz", - "integrity": "sha512-qQbW94hLHEqCg7nhby4yRC7G2+jYHY4Rguc2bjw7Uug4GIJuu1tvf2uHaZv5Q8zdt+WKJ6qK1FOI6amaWUo5FA==", - "dev": true + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } }, - "pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "dev": true + "node_modules/require-from-string": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } }, - "pinkie": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", - "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", - "dev": true + "node_modules/resolve": { + "version": "1.22.10", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.10.tgz", + "integrity": "sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-core-module": "^2.16.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "pinkie-promise": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", - "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", + "node_modules/resolve-cwd": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", + "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", "dev": true, - "requires": { - "pinkie": "^2.0.0" + "license": "MIT", + "dependencies": { + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" } }, - "pirates": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.1.tgz", - "integrity": "sha512-WuNqLTbMI3tmfef2TKxlQmAiLHKtFhlsCZnPIpuv2Ow0RDVO8lfy1Opf4NUzlMXLjPl+Men7AuVdX6TA+s+uGA==", + "node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", "dev": true, - "requires": { - "node-modules-regexp": "^1.0.0" + "license": "MIT", + "engines": { + "node": ">=8" } }, - "pkg-dir": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", - "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", + "node_modules/restore-cursor": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-5.1.0.tgz", + "integrity": "sha512-oMA2dcrw6u0YfxJQXm342bFKX/E4sG9rbTzO9ptUcR/e8A33cHuvStiYOwH7fszkZlZ1z/ta9AAoPk2F4qIOHA==", "dev": true, - "requires": { - "find-up": "^2.1.0" + "license": "MIT", + "dependencies": { + "onetime": "^7.0.0", + "signal-exit": "^4.1.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "pkg-up": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/pkg-up/-/pkg-up-2.0.0.tgz", - "integrity": "sha1-yBmscoBZpGHKscOImivjxJoATX8=", + "node_modules/restore-cursor/node_modules/onetime": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-7.0.0.tgz", + "integrity": "sha512-VXJjc87FScF88uafS3JllDgvAm+c/Slfz06lorj2uAY34rlUu0Nt+v8wreiImcrgAjjIHp1rXpTDlLOGw29WwQ==", "dev": true, - "requires": { - "find-up": "^2.1.0" + "license": "MIT", + "dependencies": { + "mimic-function": "^5.0.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "please-upgrade-node": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/please-upgrade-node/-/please-upgrade-node-3.2.0.tgz", - "integrity": "sha512-gQR3WpIgNIKwBMVLkpMUeR3e1/E1y42bqDQZfql+kDeXd8COYfM8PQA4X6y7a8u9Ua9FHmsrrmirW2vHs45hWg==", + "node_modules/restore-cursor/node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", "dev": true, - "requires": { - "semver-compare": "^1.0.0" + "license": "ISC", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "pn": { + "node_modules/reusify": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/pn/-/pn-1.1.0.tgz", - "integrity": "sha512-2qHaIQr2VLRFoxe2nASzsV6ef4yOOH+Fi9FBOVH6cqeSgUnoyySPZkxzLuzd+RYOQTRpROA0ztTMqxROKSb/nA==", - "dev": true - }, - "posix-character-classes": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", - "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=", - "dev": true - }, - "postcss": { - "version": "7.0.27", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.27.tgz", - "integrity": "sha512-WuQETPMcW9Uf1/22HWUWP9lgsIC+KEHg2kozMflKjbeUtw9ujvFX6QmIfozaErDkmLWS9WEnEdEe6Uo9/BNTdQ==", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.1.0.tgz", + "integrity": "sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==", + "dev": true, + "license": "MIT", + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" } }, - "postcss-attribute-case-insensitive": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-attribute-case-insensitive/-/postcss-attribute-case-insensitive-4.0.2.tgz", - "integrity": "sha512-clkFxk/9pcdb4Vkn0hAHq3YnxBQ2p0CGD1dy24jN+reBck+EWxMbxSUqN4Yj7t0w8csl87K6p0gxBe1utkJsYA==", + "node_modules/rfdc": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.4.1.tgz", + "integrity": "sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==", "dev": true, - "requires": { - "postcss": "^7.0.2", - "postcss-selector-parser": "^6.0.2" - } + "license": "MIT" }, - "postcss-color-functional-notation": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/postcss-color-functional-notation/-/postcss-color-functional-notation-2.0.1.tgz", - "integrity": "sha512-ZBARCypjEDofW4P6IdPVTLhDNXPRn8T2s1zHbZidW6rPaaZvcnCS2soYFIQJrMZSxiePJ2XIYTlcb2ztr/eT2g==", + "node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", "dev": true, - "requires": { - "postcss": "^7.0.2", - "postcss-values-parser": "^2.0.0" + "license": "ISC", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "postcss-color-gray": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/postcss-color-gray/-/postcss-color-gray-5.0.0.tgz", - "integrity": "sha512-q6BuRnAGKM/ZRpfDascZlIZPjvwsRye7UDNalqVz3s7GDxMtqPY6+Q871liNxsonUw8oC61OG+PSaysYpl1bnw==", + "node_modules/rrweb-cssom": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/rrweb-cssom/-/rrweb-cssom-0.8.0.tgz", + "integrity": "sha512-guoltQEx+9aMf2gDZ0s62EcV8lsXR+0w8915TC3ITdn2YueuNjdAYh/levpU9nFaoChh9RUS5ZdQMrKfVEN9tw==", "dev": true, - "requires": { - "@csstools/convert-colors": "^1.4.0", - "postcss": "^7.0.5", - "postcss-values-parser": "^2.0.0" - } + "license": "MIT" }, - "postcss-color-hex-alpha": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/postcss-color-hex-alpha/-/postcss-color-hex-alpha-5.0.3.tgz", - "integrity": "sha512-PF4GDel8q3kkreVXKLAGNpHKilXsZ6xuu+mOQMHWHLPNyjiUBOr75sp5ZKJfmv1MCus5/DWUGcK9hm6qHEnXYw==", + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", "dev": true, - "requires": { - "postcss": "^7.0.14", - "postcss-values-parser": "^2.0.1" + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", + "dependencies": { + "queue-microtask": "^1.2.2" } }, - "postcss-color-mod-function": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/postcss-color-mod-function/-/postcss-color-mod-function-3.0.3.tgz", - "integrity": "sha512-YP4VG+xufxaVtzV6ZmhEtc+/aTXH3d0JLpnYfxqTvwZPbJhWqp8bSY3nfNzNRFLgB4XSaBA82OE4VjOOKpCdVQ==", + "node_modules/safe-array-concat": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.3.tgz", + "integrity": "sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q==", "dev": true, - "requires": { - "@csstools/convert-colors": "^1.4.0", - "postcss": "^7.0.2", - "postcss-values-parser": "^2.0.0" + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.2", + "get-intrinsic": "^1.2.6", + "has-symbols": "^1.1.0", + "isarray": "^2.0.5" + }, + "engines": { + "node": ">=0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "postcss-color-rebeccapurple": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/postcss-color-rebeccapurple/-/postcss-color-rebeccapurple-4.0.1.tgz", - "integrity": "sha512-aAe3OhkS6qJXBbqzvZth2Au4V3KieR5sRQ4ptb2b2O8wgvB3SJBsdG+jsn2BZbbwekDG8nTfcCNKcSfe/lEy8g==", + "node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "node_modules/safe-push-apply": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/safe-push-apply/-/safe-push-apply-1.0.0.tgz", + "integrity": "sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA==", "dev": true, - "requires": { - "postcss": "^7.0.2", - "postcss-values-parser": "^2.0.0" + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "isarray": "^2.0.5" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "postcss-custom-media": { - "version": "7.0.8", - "resolved": "https://registry.npmjs.org/postcss-custom-media/-/postcss-custom-media-7.0.8.tgz", - "integrity": "sha512-c9s5iX0Ge15o00HKbuRuTqNndsJUbaXdiNsksnVH8H4gdc+zbLzr/UasOwNG6CTDpLFekVY4672eWdiiWu2GUg==", + "node_modules/safe-regex-test": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.1.0.tgz", + "integrity": "sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==", "dev": true, - "requires": { - "postcss": "^7.0.14" + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "is-regex": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "postcss-custom-properties": { - "version": "8.0.11", - "resolved": "https://registry.npmjs.org/postcss-custom-properties/-/postcss-custom-properties-8.0.11.tgz", - "integrity": "sha512-nm+o0eLdYqdnJ5abAJeXp4CEU1c1k+eB2yMCvhgzsds/e0umabFrN6HoTy/8Q4K5ilxERdl/JD1LO5ANoYBeMA==", + "node_modules/safe-stable-stringify": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.5.0.tgz", + "integrity": "sha512-b3rppTKm9T+PsVCBEOUR46GWI7fdOs00VKZ1+9c1EWDaDMvjQc6tUwuFyIprgGgTcWoVHSKrU8H31ZHA2e0RHA==", "dev": true, - "requires": { - "postcss": "^7.0.17", - "postcss-values-parser": "^2.0.1" + "license": "MIT", + "engines": { + "node": ">=10" } }, - "postcss-custom-selectors": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/postcss-custom-selectors/-/postcss-custom-selectors-5.1.2.tgz", - "integrity": "sha512-DSGDhqinCqXqlS4R7KGxL1OSycd1lydugJ1ky4iRXPHdBRiozyMHrdu0H3o7qNOCiZwySZTUI5MV0T8QhCLu+w==", + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", "dev": true, - "requires": { - "postcss": "^7.0.2", - "postcss-selector-parser": "^5.0.0-rc.3" - }, + "license": "MIT" + }, + "node_modules/sass": { + "version": "1.89.2", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.89.2.tgz", + "integrity": "sha512-xCmtksBKd/jdJ9Bt9p7nPKiuqrlBMBuuGkQlkhZjjQk3Ty48lv93k5Dq6OPkKt4XwxDJ7tvlfrTa1MPA9bf+QA==", + "dev": true, + "license": "MIT", "dependencies": { - "cssesc": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-2.0.0.tgz", - "integrity": "sha512-MsCAG1z9lPdoO/IUMLSBWBSVxVtJ1395VGIQ+Fc2gNdkQ1hNDnQdw3YhA71WJCBW1vdwA0cAnk/DnW6bqoEUYg==", - "dev": true - }, - "postcss-selector-parser": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-5.0.0.tgz", - "integrity": "sha512-w+zLE5Jhg6Liz8+rQOWEAwtwkyqpfnmsinXjXg6cY7YIONZZtgvE0v2O0uhQBs0peNomOJwWRKt6JBfTdTd3OQ==", - "dev": true, - "requires": { - "cssesc": "^2.0.0", - "indexes-of": "^1.0.1", - "uniq": "^1.0.1" - } - } + "chokidar": "^4.0.0", + "immutable": "^5.0.2", + "source-map-js": ">=0.6.2 <2.0.0" + }, + "bin": { + "sass": "sass.js" + }, + "engines": { + "node": ">=14.0.0" + }, + "optionalDependencies": { + "@parcel/watcher": "^2.4.1" } }, - "postcss-dir-pseudo-class": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/postcss-dir-pseudo-class/-/postcss-dir-pseudo-class-5.0.0.tgz", - "integrity": "sha512-3pm4oq8HYWMZePJY+5ANriPs3P07q+LW6FAdTlkFH2XqDdP4HeeJYMOzn0HYLhRSjBO3fhiqSwwU9xEULSrPgw==", + "node_modules/sass-loader": { + "version": "14.2.1", + "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-14.2.1.tgz", + "integrity": "sha512-G0VcnMYU18a4N7VoNDegg2OuMjYtxnqzQWARVWCIVSZwJeiL9kg8QMsuIZOplsJgTzZLF6jGxI3AClj8I9nRdQ==", "dev": true, - "requires": { - "postcss": "^7.0.2", - "postcss-selector-parser": "^5.0.0-rc.3" - }, + "license": "MIT", "dependencies": { - "cssesc": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-2.0.0.tgz", - "integrity": "sha512-MsCAG1z9lPdoO/IUMLSBWBSVxVtJ1395VGIQ+Fc2gNdkQ1hNDnQdw3YhA71WJCBW1vdwA0cAnk/DnW6bqoEUYg==", - "dev": true + "neo-async": "^2.6.2" + }, + "engines": { + "node": ">= 18.12.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "@rspack/core": "0.x || 1.x", + "node-sass": "^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0 || ^9.0.0", + "sass": "^1.3.0", + "sass-embedded": "*", + "webpack": "^5.0.0" + }, + "peerDependenciesMeta": { + "@rspack/core": { + "optional": true + }, + "node-sass": { + "optional": true + }, + "sass": { + "optional": true + }, + "sass-embedded": { + "optional": true }, - "postcss-selector-parser": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-5.0.0.tgz", - "integrity": "sha512-w+zLE5Jhg6Liz8+rQOWEAwtwkyqpfnmsinXjXg6cY7YIONZZtgvE0v2O0uhQBs0peNomOJwWRKt6JBfTdTd3OQ==", - "dev": true, - "requires": { - "cssesc": "^2.0.0", - "indexes-of": "^1.0.1", - "uniq": "^1.0.1" - } + "webpack": { + "optional": true } } }, - "postcss-double-position-gradients": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/postcss-double-position-gradients/-/postcss-double-position-gradients-1.0.0.tgz", - "integrity": "sha512-G+nV8EnQq25fOI8CH/B6krEohGWnF5+3A6H/+JEpOncu5dCnkS1QQ6+ct3Jkaepw1NGVqqOZH6lqrm244mCftA==", + "node_modules/sass/node_modules/chokidar": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.3.tgz", + "integrity": "sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==", "dev": true, - "requires": { - "postcss": "^7.0.5", - "postcss-values-parser": "^2.0.0" + "license": "MIT", + "dependencies": { + "readdirp": "^4.0.1" + }, + "engines": { + "node": ">= 14.16.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" } }, - "postcss-env-function": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/postcss-env-function/-/postcss-env-function-2.0.2.tgz", - "integrity": "sha512-rwac4BuZlITeUbiBq60h/xbLzXY43qOsIErngWa4l7Mt+RaSkT7QBjXVGTcBHupykkblHMDrBFh30zchYPaOUw==", + "node_modules/sass/node_modules/readdirp": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.1.2.tgz", + "integrity": "sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==", "dev": true, - "requires": { - "postcss": "^7.0.2", - "postcss-values-parser": "^2.0.0" + "license": "MIT", + "engines": { + "node": ">= 14.18.0" + }, + "funding": { + "type": "individual", + "url": "https://paulmillr.com/funding/" } }, - "postcss-focus-visible": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-focus-visible/-/postcss-focus-visible-4.0.0.tgz", - "integrity": "sha512-Z5CkWBw0+idJHSV6+Bgf2peDOFf/x4o+vX/pwcNYrWpXFrSfTkQ3JQ1ojrq9yS+upnAlNRHeg8uEwFTgorjI8g==", + "node_modules/sax": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.4.1.tgz", + "integrity": "sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg==", "dev": true, - "requires": { - "postcss": "^7.0.2" - } + "license": "ISC", + "optional": true }, - "postcss-focus-within": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-focus-within/-/postcss-focus-within-3.0.0.tgz", - "integrity": "sha512-W0APui8jQeBKbCGZudW37EeMCjDeVxKgiYfIIEo8Bdh5SpB9sxds/Iq8SEuzS0Q4YFOlG7EPFulbbxujpkrV2w==", + "node_modules/saxes": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/saxes/-/saxes-6.0.0.tgz", + "integrity": "sha512-xAg7SOnEhrm5zI3puOOKyy1OMcMlIJZYNJY7xLBwSze0UjhPLnWfj2GF2EpT0jmzaJKIWKHLsaSSajf35bcYnA==", "dev": true, - "requires": { - "postcss": "^7.0.2" + "license": "ISC", + "dependencies": { + "xmlchars": "^2.2.0" + }, + "engines": { + "node": ">=v12.22.7" } }, - "postcss-font-variant": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-font-variant/-/postcss-font-variant-4.0.0.tgz", - "integrity": "sha512-M8BFYKOvCrI2aITzDad7kWuXXTm0YhGdP9Q8HanmN4EF1Hmcgs1KK5rSHylt/lUJe8yLxiSwWAHdScoEiIxztg==", + "node_modules/schema-utils": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", + "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", "dev": true, - "requires": { - "postcss": "^7.0.2" + "license": "MIT", + "dependencies": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/semver": { + "version": "7.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", + "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" } }, - "postcss-gap-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/postcss-gap-properties/-/postcss-gap-properties-2.0.0.tgz", - "integrity": "sha512-QZSqDaMgXCHuHTEzMsS2KfVDOq7ZFiknSpkrPJY6jmxbugUPTuSzs/vuE5I3zv0WAS+3vhrlqhijiprnuQfzmg==", + "node_modules/serialize-javascript": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz", + "integrity": "sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==", "dev": true, - "requires": { - "postcss": "^7.0.2" + "license": "BSD-3-Clause", + "dependencies": { + "randombytes": "^2.1.0" } }, - "postcss-image-set-function": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/postcss-image-set-function/-/postcss-image-set-function-3.0.1.tgz", - "integrity": "sha512-oPTcFFip5LZy8Y/whto91L9xdRHCWEMs3e1MdJxhgt4jy2WYXfhkng59fH5qLXSCPN8k4n94p1Czrfe5IOkKUw==", + "node_modules/set-function-length": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", + "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", "dev": true, - "requires": { - "postcss": "^7.0.2", - "postcss-values-parser": "^2.0.0" + "license": "MIT", + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" } }, - "postcss-initial": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/postcss-initial/-/postcss-initial-3.0.2.tgz", - "integrity": "sha512-ugA2wKonC0xeNHgirR4D3VWHs2JcU08WAi1KFLVcnb7IN89phID6Qtg2RIctWbnvp1TM2BOmDtX8GGLCKdR8YA==", + "node_modules/set-function-name": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz", + "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==", "dev": true, - "requires": { - "lodash.template": "^4.5.0", - "postcss": "^7.0.2" + "license": "MIT", + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "functions-have-names": "^1.2.3", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" } }, - "postcss-lab-function": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/postcss-lab-function/-/postcss-lab-function-2.0.1.tgz", - "integrity": "sha512-whLy1IeZKY+3fYdqQFuDBf8Auw+qFuVnChWjmxm/UhHWqNHZx+B99EwxTvGYmUBqe3Fjxs4L1BoZTJmPu6usVg==", + "node_modules/set-proto": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/set-proto/-/set-proto-1.0.0.tgz", + "integrity": "sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==", "dev": true, - "requires": { - "@csstools/convert-colors": "^1.4.0", - "postcss": "^7.0.2", - "postcss-values-parser": "^2.0.0" + "license": "MIT", + "dependencies": { + "dunder-proto": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" } }, - "postcss-load-config": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-2.1.0.tgz", - "integrity": "sha512-4pV3JJVPLd5+RueiVVB+gFOAa7GWc25XQcMp86Zexzke69mKf6Nx9LRcQywdz7yZI9n1udOxmLuAwTBypypF8Q==", + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", "dev": true, - "requires": { - "cosmiconfig": "^5.0.0", - "import-cwd": "^2.0.0" + "license": "MIT", + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" } }, - "postcss-loader": { + "node_modules/shebang-regex": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-3.0.0.tgz", - "integrity": "sha512-cLWoDEY5OwHcAjDnkyRQzAXfs2jrKjXpO/HQFcc5b5u/r7aa471wdmChmwfnv7x2u840iat/wi0lQ5nbRgSkUA==", - "dev": true, - "requires": { - "loader-utils": "^1.1.0", - "postcss": "^7.0.0", - "postcss-load-config": "^2.0.0", - "schema-utils": "^1.0.0" - }, - "dependencies": { - "schema-utils": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", - "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", - "dev": true, - "requires": { - "ajv": "^6.1.0", - "ajv-errors": "^1.0.0", - "ajv-keywords": "^3.1.0" - } - } + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" } }, - "postcss-logical": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-logical/-/postcss-logical-3.0.0.tgz", - "integrity": "sha512-1SUKdJc2vuMOmeItqGuNaC+N8MzBWFWEkAnRnLpFYj1tGGa7NqyVBujfRtgNa2gXR+6RkGUiB2O5Vmh7E2RmiA==", + "node_modules/shell-quote": { + "version": "1.8.3", + "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.3.tgz", + "integrity": "sha512-ObmnIF4hXNg1BqhnHmgbDETF8dLPCggZWBjkQfhZpbszZnYur5DUljTcCHii5LC3J5E0yeO/1LIMyH+UvHQgyw==", "dev": true, - "requires": { - "postcss": "^7.0.2" + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "postcss-media-minmax": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-media-minmax/-/postcss-media-minmax-4.0.0.tgz", - "integrity": "sha512-fo9moya6qyxsjbFAYl97qKO9gyre3qvbMnkOZeZwlsW6XYFsvs2DMGDlchVLfAd8LHPZDxivu/+qW2SMQeTHBw==", + "node_modules/side-channel": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz", + "integrity": "sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3", + "side-channel-list": "^1.0.0", + "side-channel-map": "^1.0.1", + "side-channel-weakmap": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-list": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.0.tgz", + "integrity": "sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==", "dev": true, - "requires": { - "postcss": "^7.0.2" + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "postcss-modules-extract-imports": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-2.0.0.tgz", - "integrity": "sha512-LaYLDNS4SG8Q5WAWqIJgdHPJrDDr/Lv775rMBFUbgjTz6j34lUznACHcdRWroPvXANP2Vj7yNK57vp9eFqzLWQ==", - "requires": { - "postcss": "^7.0.5" + "node_modules/side-channel-map": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz", + "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "postcss-modules-local-by-default": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-3.0.2.tgz", - "integrity": "sha512-jM/V8eqM4oJ/22j0gx4jrp63GSvDH6v86OqyTHHUvk4/k1vceipZsaymiZ5PvocqZOl5SFHiFJqjs3la0wnfIQ==", - "requires": { - "icss-utils": "^4.1.1", - "postcss": "^7.0.16", - "postcss-selector-parser": "^6.0.2", - "postcss-value-parser": "^4.0.0" + "node_modules/side-channel-weakmap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz", + "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3", + "side-channel-map": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "postcss-modules-scope": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-2.2.0.tgz", - "integrity": "sha512-YyEgsTMRpNd+HmyC7H/mh3y+MeFWevy7V1evVhJWewmMbjDHIbZbOXICC2y+m1xI1UVfIT1HMW/O04Hxyu9oXQ==", - "requires": { - "postcss": "^7.0.6", - "postcss-selector-parser": "^6.0.0" - } + "node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "dev": true, + "license": "ISC" }, - "postcss-modules-values": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-3.0.0.tgz", - "integrity": "sha512-1//E5jCBrZ9DmRX+zCtmQtRSV6PV42Ix7Bzj9GbwJceduuf7IqP8MgeTXuRDHOWj2m0VzZD5+roFWDuU8RQjcg==", - "requires": { - "icss-utils": "^4.0.0", - "postcss": "^7.0.6" + "node_modules/simple-swizzle": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz", + "integrity": "sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-arrayish": "^0.3.1" } }, - "postcss-nesting": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/postcss-nesting/-/postcss-nesting-7.0.1.tgz", - "integrity": "sha512-FrorPb0H3nuVq0Sff7W2rnc3SmIcruVC6YwpcS+k687VxyxO33iE1amna7wHuRVzM8vfiYofXSBHNAZ3QhLvYg==", + "node_modules/simple-swizzle/node_modules/is-arrayish": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz", + "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==", "dev": true, - "requires": { - "postcss": "^7.0.2" - } + "license": "MIT" }, - "postcss-overflow-shorthand": { + "node_modules/slash": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/postcss-overflow-shorthand/-/postcss-overflow-shorthand-2.0.0.tgz", - "integrity": "sha512-aK0fHc9CBNx8jbzMYhshZcEv8LtYnBIRYQD5i7w/K/wS9c2+0NSR6B3OVMu5y0hBHYLcMGjfU+dmWYNKH0I85g==", + "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", + "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==", "dev": true, - "requires": { - "postcss": "^7.0.2" + "license": "MIT", + "engines": { + "node": ">=6" } }, - "postcss-page-break": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/postcss-page-break/-/postcss-page-break-2.0.0.tgz", - "integrity": "sha512-tkpTSrLpfLfD9HvgOlJuigLuk39wVTbbd8RKcy8/ugV2bNBUW3xU+AIqyxhDrQr1VUj1RmyJrBn1YWrqUm9zAQ==", + "node_modules/slice-ansi": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-5.0.0.tgz", + "integrity": "sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==", "dev": true, - "requires": { - "postcss": "^7.0.2" + "license": "MIT", + "dependencies": { + "ansi-styles": "^6.0.0", + "is-fullwidth-code-point": "^4.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/slice-ansi?sponsor=1" } }, - "postcss-place": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/postcss-place/-/postcss-place-4.0.1.tgz", - "integrity": "sha512-Zb6byCSLkgRKLODj/5mQugyuj9bvAAw9LqJJjgwz5cYryGeXfFZfSXoP1UfveccFmeq0b/2xxwcTEVScnqGxBg==", - "dev": true, - "requires": { - "postcss": "^7.0.2", - "postcss-values-parser": "^2.0.0" - } - }, - "postcss-preset-env": { - "version": "6.7.0", - "resolved": "https://registry.npmjs.org/postcss-preset-env/-/postcss-preset-env-6.7.0.tgz", - "integrity": "sha512-eU4/K5xzSFwUFJ8hTdTQzo2RBLbDVt83QZrAvI07TULOkmyQlnYlpwep+2yIK+K+0KlZO4BvFcleOCCcUtwchg==", - "dev": true, - "requires": { - "autoprefixer": "^9.6.1", - "browserslist": "^4.6.4", - "caniuse-lite": "^1.0.30000981", - "css-blank-pseudo": "^0.1.4", - "css-has-pseudo": "^0.10.0", - "css-prefers-color-scheme": "^3.1.1", - "cssdb": "^4.4.0", - "postcss": "^7.0.17", - "postcss-attribute-case-insensitive": "^4.0.1", - "postcss-color-functional-notation": "^2.0.1", - "postcss-color-gray": "^5.0.0", - "postcss-color-hex-alpha": "^5.0.3", - "postcss-color-mod-function": "^3.0.3", - "postcss-color-rebeccapurple": "^4.0.1", - "postcss-custom-media": "^7.0.8", - "postcss-custom-properties": "^8.0.11", - "postcss-custom-selectors": "^5.1.2", - "postcss-dir-pseudo-class": "^5.0.0", - "postcss-double-position-gradients": "^1.0.0", - "postcss-env-function": "^2.0.2", - "postcss-focus-visible": "^4.0.0", - "postcss-focus-within": "^3.0.0", - "postcss-font-variant": "^4.0.0", - "postcss-gap-properties": "^2.0.0", - "postcss-image-set-function": "^3.0.1", - "postcss-initial": "^3.0.0", - "postcss-lab-function": "^2.0.1", - "postcss-logical": "^3.0.0", - "postcss-media-minmax": "^4.0.0", - "postcss-nesting": "^7.0.0", - "postcss-overflow-shorthand": "^2.0.0", - "postcss-page-break": "^2.0.0", - "postcss-place": "^4.0.1", - "postcss-pseudo-class-any-link": "^6.0.0", - "postcss-replace-overflow-wrap": "^3.0.0", - "postcss-selector-matches": "^4.0.0", - "postcss-selector-not": "^4.0.0" - } - }, - "postcss-pseudo-class-any-link": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/postcss-pseudo-class-any-link/-/postcss-pseudo-class-any-link-6.0.0.tgz", - "integrity": "sha512-lgXW9sYJdLqtmw23otOzrtbDXofUdfYzNm4PIpNE322/swES3VU9XlXHeJS46zT2onFO7V1QFdD4Q9LiZj8mew==", + "node_modules/slice-ansi/node_modules/ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", "dev": true, - "requires": { - "postcss": "^7.0.2", - "postcss-selector-parser": "^5.0.0-rc.3" + "license": "MIT", + "engines": { + "node": ">=12" }, - "dependencies": { - "cssesc": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-2.0.0.tgz", - "integrity": "sha512-MsCAG1z9lPdoO/IUMLSBWBSVxVtJ1395VGIQ+Fc2gNdkQ1hNDnQdw3YhA71WJCBW1vdwA0cAnk/DnW6bqoEUYg==", - "dev": true - }, - "postcss-selector-parser": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-5.0.0.tgz", - "integrity": "sha512-w+zLE5Jhg6Liz8+rQOWEAwtwkyqpfnmsinXjXg6cY7YIONZZtgvE0v2O0uhQBs0peNomOJwWRKt6JBfTdTd3OQ==", - "dev": true, - "requires": { - "cssesc": "^2.0.0", - "indexes-of": "^1.0.1", - "uniq": "^1.0.1" - } - } + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "postcss-replace-overflow-wrap": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-replace-overflow-wrap/-/postcss-replace-overflow-wrap-3.0.0.tgz", - "integrity": "sha512-2T5hcEHArDT6X9+9dVSPQdo7QHzG4XKclFT8rU5TzJPDN7RIRTbO9c4drUISOVemLj03aezStHCR2AIcr8XLpw==", + "node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true, - "requires": { - "postcss": "^7.0.2" + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" } }, - "postcss-selector-matches": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-selector-matches/-/postcss-selector-matches-4.0.0.tgz", - "integrity": "sha512-LgsHwQR/EsRYSqlwdGzeaPKVT0Ml7LAT6E75T8W8xLJY62CE4S/l03BWIt3jT8Taq22kXP08s2SfTSzaraoPww==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "postcss": "^7.0.2" + "node_modules/source-map-js": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", + "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" } }, - "postcss-selector-not": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-selector-not/-/postcss-selector-not-4.0.0.tgz", - "integrity": "sha512-W+bkBZRhqJaYN8XAnbbZPLWMvZD1wKTu0UxtFKdhtGjWYmxhkUneoeOhRJKdAE5V7ZTlnbHfCR+6bNwK9e1dTQ==", + "node_modules/source-map-support": { + "version": "0.5.13", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz", + "integrity": "sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==", "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "postcss": "^7.0.2" + "license": "MIT", + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" } }, - "postcss-selector-parser": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.2.tgz", - "integrity": "sha512-36P2QR59jDTOAiIkqEprfJDsoNrvwFei3eCqKd1Y0tUsBimsq39BLp7RD+JWny3WgB1zGhJX8XVePwm9k4wdBg==", - "requires": { - "cssesc": "^3.0.0", - "indexes-of": "^1.0.1", - "uniq": "^1.0.1" + "node_modules/spdx-correct": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.2.0.tgz", + "integrity": "sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" } }, - "postcss-value-parser": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.0.3.tgz", - "integrity": "sha512-N7h4pG+Nnu5BEIzyeaaIYWs0LI5XC40OrRh5L60z0QjFsqGWcHcbkBvpe1WYpcIS9yQ8sOi/vIPt1ejQCrMVrg==" + "node_modules/spdx-exceptions": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.5.0.tgz", + "integrity": "sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==", + "dev": true, + "license": "CC-BY-3.0" }, - "postcss-values-parser": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/postcss-values-parser/-/postcss-values-parser-2.0.1.tgz", - "integrity": "sha512-2tLuBsA6P4rYTNKCXYG/71C7j1pU6pK503suYOmn4xYrQIzW+opD+7FAFNuGSdZC/3Qfy334QbeMu7MEb8gOxg==", + "node_modules/spdx-expression-parse": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", "dev": true, - "requires": { - "flatten": "^1.0.2", - "indexes-of": "^1.0.1", - "uniq": "^1.0.1" + "license": "MIT", + "dependencies": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" } }, - "prelude-ls": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", - "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=", - "dev": true + "node_modules/spdx-license-ids": { + "version": "3.0.21", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.21.tgz", + "integrity": "sha512-Bvg/8F5XephndSK3JffaRqdT+gyhfqIPwDHpX80tJrF8QQRYMo8sNMeaZ2Dp5+jhwKnUmIOyFFQfHRkjJm5nXg==", + "dev": true, + "license": "CC0-1.0" }, - "prettier": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.0.5.tgz", - "integrity": "sha512-7PtVymN48hGcO4fGjybyBSIWDsLU4H4XlvOHfq91pz9kkGlonzwTfYkaIEwiRg/dAJF9YlbsduBAgtYLi+8cFg==", - "dev": true - }, - "pretty-format": { - "version": "25.4.0", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-25.4.0.tgz", - "integrity": "sha512-PI/2dpGjXK5HyXexLPZU/jw5T9Q6S1YVXxxVxco+LIqzUFHXIbKZKdUVt7GcX7QUCr31+3fzhi4gN4/wUYPVxQ==", - "dev": true, - "requires": { - "@jest/types": "^25.4.0", - "ansi-regex": "^5.0.0", - "ansi-styles": "^4.0.0", - "react-is": "^16.12.0" - }, + "node_modules/split": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/split/-/split-1.0.1.tgz", + "integrity": "sha512-mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg==", + "dev": true, + "license": "MIT", "dependencies": { - "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", - "dev": true - }, - "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "requires": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - } + "through": "2" + }, + "engines": { + "node": "*" } }, - "prettyjson": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/prettyjson/-/prettyjson-1.2.1.tgz", - "integrity": "sha1-/P+rQdGcq0365eV15kJGYZsS0ok=", + "node_modules/split2": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/split2/-/split2-4.2.0.tgz", + "integrity": "sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg==", "dev": true, - "requires": { - "colors": "^1.1.2", - "minimist": "^1.2.0" + "license": "ISC", + "engines": { + "node": ">= 10.x" } }, - "private": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz", - "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==", - "dev": true - }, - "process": { - "version": "0.11.10", - "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", - "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=", - "dev": true - }, - "process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", - "dev": true - }, - "progress": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", - "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", - "dev": true + "node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", + "dev": true, + "license": "BSD-3-Clause" }, - "promise-inflight": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", - "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=", - "dev": true + "node_modules/stack-trace": { + "version": "0.0.10", + "resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz", + "integrity": "sha512-KGzahc7puUKkzyMt+IqAep+TVNbKP+k2Lmwhub39m1AsTSkaDutx56aDCo+HLDzf/D26BIHTJWNiTG1KAJiQCg==", + "dev": true, + "license": "MIT", + "engines": { + "node": "*" + } }, - "prompts": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.3.2.tgz", - "integrity": "sha512-Q06uKs2CkNYVID0VqwfAl9mipo99zkBv/n2JtWY89Yxa3ZabWSrs0e2KTudKVa3peLUvYXMefDqIleLPVUBZMA==", + "node_modules/stack-utils": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", + "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", "dev": true, - "requires": { - "kleur": "^3.0.3", - "sisteransi": "^1.0.4" - }, + "license": "MIT", "dependencies": { - "kleur": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", - "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", - "dev": true - } + "escape-string-regexp": "^2.0.0" + }, + "engines": { + "node": ">=10" } }, - "prop-ini": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/prop-ini/-/prop-ini-0.0.2.tgz", - "integrity": "sha1-ZzOny1JCrKsr5C5gdYPYEksXKls=", + "node_modules/stack-utils/node_modules/escape-string-regexp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", + "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", "dev": true, - "requires": { - "extend": "^3.0.0" + "license": "MIT", + "engines": { + "node": ">=8" } }, - "prr": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", - "integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=", - "dev": true - }, - "pseudomap": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", - "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", - "dev": true - }, - "psl": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", - "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==", - "dev": true - }, - "public-encrypt": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", - "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", + "node_modules/standard-version": { + "version": "9.5.0", + "resolved": "https://registry.npmjs.org/standard-version/-/standard-version-9.5.0.tgz", + "integrity": "sha512-3zWJ/mmZQsOaO+fOlsa0+QK90pwhNd042qEcw6hKFNoLFs7peGyvPffpEBbK/DSGPbyOvli0mUIFv5A4qTjh2Q==", "dev": true, - "requires": { - "bn.js": "^4.1.0", - "browserify-rsa": "^4.0.0", - "create-hash": "^1.1.0", - "parse-asn1": "^5.0.0", - "randombytes": "^2.0.1", - "safe-buffer": "^5.1.2" + "license": "ISC", + "dependencies": { + "chalk": "^2.4.2", + "conventional-changelog": "3.1.25", + "conventional-changelog-config-spec": "2.1.0", + "conventional-changelog-conventionalcommits": "4.6.3", + "conventional-recommended-bump": "6.1.0", + "detect-indent": "^6.0.0", + "detect-newline": "^3.1.0", + "dotgitignore": "^2.1.0", + "figures": "^3.1.0", + "find-up": "^5.0.0", + "git-semver-tags": "^4.0.0", + "semver": "^7.1.1", + "stringify-package": "^1.0.1", + "yargs": "^16.0.0" + }, + "bin": { + "standard-version": "bin/cli.js" + }, + "engines": { + "node": ">=10" } }, - "pump": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", - "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "node_modules/standard-version/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", "dev": true, - "requires": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" + "license": "MIT", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" } }, - "pumpify": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/pumpify/-/pumpify-1.5.1.tgz", - "integrity": "sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==", + "node_modules/standard-version/node_modules/cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", "dev": true, - "requires": { - "duplexify": "^3.6.0", - "inherits": "^2.0.3", - "pump": "^2.0.0" - }, - "dependencies": { - "pump": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz", - "integrity": "sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==", - "dev": true, - "requires": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - } + "license": "ISC", + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" } }, - "punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==" - }, - "q": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/q/-/q-1.5.1.tgz", - "integrity": "sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc=", - "dev": true - }, - "qs": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", - "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", - "dev": true - }, - "querystring": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", - "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=", - "dev": true - }, - "querystring-es3": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", - "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=", - "dev": true + "node_modules/standard-version/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } }, - "quick-lru": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-1.1.0.tgz", - "integrity": "sha1-Q2CxfGETatOAeDl/8RQW4Ybc+7g=", - "dev": true + "node_modules/standard-version/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" }, - "randombytes": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", - "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "node_modules/standard-version/node_modules/conventional-changelog-conventionalcommits": { + "version": "4.6.3", + "resolved": "https://registry.npmjs.org/conventional-changelog-conventionalcommits/-/conventional-changelog-conventionalcommits-4.6.3.tgz", + "integrity": "sha512-LTTQV4fwOM4oLPad317V/QNQ1FY4Hju5qeBIM1uTHbrnCE+Eg4CdRZ3gO2pUeR+tzWdp80M2j3qFFEDWVqOV4g==", "dev": true, - "requires": { - "safe-buffer": "^5.1.0" + "license": "ISC", + "dependencies": { + "compare-func": "^2.0.0", + "lodash": "^4.17.15", + "q": "^1.5.1" + }, + "engines": { + "node": ">=10" } }, - "randomfill": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", - "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", + "node_modules/standard-version/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", "dev": true, - "requires": { - "randombytes": "^2.0.5", - "safe-buffer": "^5.1.0" - } + "license": "MIT" }, - "rc": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", - "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", + "node_modules/standard-version/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", "dev": true, - "requires": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" + "license": "MIT", + "engines": { + "node": ">=0.8.0" } }, - "react-is": { - "version": "16.13.1", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", - "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", - "dev": true - }, - "read-pkg": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", - "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", + "node_modules/standard-version/node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", "dev": true, - "requires": { - "load-json-file": "^4.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^3.0.0" + "license": "MIT", + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "read-pkg-up": { + "node_modules/standard-version/node_modules/has-flag": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz", - "integrity": "sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc=", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", "dev": true, - "requires": { - "find-up": "^2.0.0", - "read-pkg": "^3.0.0" + "license": "MIT", + "engines": { + "node": ">=4" } }, - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "node_modules/standard-version/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" + "license": "MIT", + "engines": { + "node": ">=8" } }, - "readdirp": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", - "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", + "node_modules/standard-version/node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", "dev": true, - "requires": { - "graceful-fs": "^4.1.11", - "micromatch": "^3.1.10", - "readable-stream": "^2.0.2" + "license": "MIT", + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "readme-badger": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/readme-badger/-/readme-badger-0.3.0.tgz", - "integrity": "sha512-+sMOLSs1imZUISZ2Rhz7qqVd77QtpcAPbGeIraFdgJmijb04YtdlPjGNBvDChTNtLbeQ6JNGQy3pOgslWfaP3g==", + "node_modules/standard-version/node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", "dev": true, - "requires": { - "balanced-match": "^1.0.0" + "license": "MIT", + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "realpath-native": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/realpath-native/-/realpath-native-2.0.0.tgz", - "integrity": "sha512-v1SEYUOXXdbBZK8ZuNgO4TBjamPsiSgcFr0aP+tEKpQZK8vooEUqV6nm6Cv502mX4NF2EfsnVqtNAHG+/6Ur1Q==", - "dev": true - }, - "redent": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/redent/-/redent-2.0.0.tgz", - "integrity": "sha1-wbIAe0LVfrE4kHmzyDM2OdXhzKo=", + "node_modules/standard-version/node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", "dev": true, - "requires": { - "indent-string": "^3.0.0", - "strip-indent": "^2.0.0" + "license": "MIT", + "engines": { + "node": ">=8" } }, - "regenerate": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.0.tgz", - "integrity": "sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg==", - "dev": true - }, - "regenerate-unicode-properties": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-8.2.0.tgz", - "integrity": "sha512-F9DjY1vKLo/tPePDycuH3dn9H1OTPIkVD9Kz4LODu+F2C75mgjAJ7x/gwy6ZcSNRAAkhNlJSOHRe8k3p+K9WhA==", + "node_modules/standard-version/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "dev": true, - "requires": { - "regenerate": "^1.4.0" + "license": "MIT", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" } }, - "regenerator-runtime": { - "version": "0.13.5", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.5.tgz", - "integrity": "sha512-ZS5w8CpKFinUzOwW3c83oPeVXoNsrLsaCoLtJvAClH135j/R77RuymhiSErhm2lKcwSCIpmvIWSbDkIfAqKQlA==", - "dev": true - }, - "regenerator-transform": { - "version": "0.14.4", - "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.14.4.tgz", - "integrity": "sha512-EaJaKPBI9GvKpvUz2mz4fhx7WPgvwRLY9v3hlNHWmAuJHI13T4nwKnNvm5RWJzEdnI5g5UwtOww+S8IdoUC2bw==", + "node_modules/standard-version/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", "dev": true, - "requires": { - "@babel/runtime": "^7.8.4", - "private": "^0.1.8" + "license": "MIT", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" } }, - "regex-not": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", - "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", + "node_modules/standard-version/node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", "dev": true, - "requires": { - "extend-shallow": "^3.0.2", - "safe-regex": "^1.1.0" + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } }, - "regexpp": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-2.0.1.tgz", - "integrity": "sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw==", - "dev": true - }, - "regexpu-core": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.7.0.tgz", - "integrity": "sha512-TQ4KXRnIn6tz6tjnrXEkD/sshygKH/j5KzK86X8MkeHyZ8qst/LZ89j3X4/8HEIfHANTFIP/AbXakeRhWIl5YQ==", + "node_modules/standard-version/node_modules/wrap-ansi/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, - "requires": { - "regenerate": "^1.4.0", - "regenerate-unicode-properties": "^8.2.0", - "regjsgen": "^0.5.1", - "regjsparser": "^0.6.4", - "unicode-match-property-ecmascript": "^1.0.4", - "unicode-match-property-value-ecmascript": "^1.2.0" + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "regjsgen": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.5.1.tgz", - "integrity": "sha512-5qxzGZjDs9w4tzT3TPhCJqWdCc3RLYwy9J2NB0nm5Lz+S273lvWcpjaTGHsT1dc6Hhfq41uSEOw8wBmxrKOuyg==", - "dev": true - }, - "regjsparser": { - "version": "0.6.4", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.6.4.tgz", - "integrity": "sha512-64O87/dPDgfk8/RQqC4gkZoGyyWFIEUTTh80CU6CWuK5vkCGyekIx+oKcEIYtP/RAxSQltCZHCNu/mdd7fqlJw==", + "node_modules/standard-version/node_modules/yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", "dev": true, - "requires": { - "jsesc": "~0.5.0" - }, + "license": "MIT", "dependencies": { - "jsesc": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", - "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", - "dev": true - } + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + }, + "engines": { + "node": ">=10" } }, - "remote-origin-url": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/remote-origin-url/-/remote-origin-url-1.0.0.tgz", - "integrity": "sha512-xHDM6IBqivpiQ1e4WOuFpM/T6rbzA/WBsu+3WLtgPOhHyjA0nYlijV3NprlTb4FcXlQ5+Q+z174sQ1NnUF5FwA==", + "node_modules/standard-version/node_modules/yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", "dev": true, - "requires": { - "parse-git-config": "^1.1.1" + "license": "ISC", + "engines": { + "node": ">=10" } }, - "remove-trailing-separator": { + "node_modules/stop-iteration-iterator": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", - "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=", - "dev": true - }, - "repeat-element": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz", - "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==", - "dev": true - }, - "repeat-string": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", - "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", - "dev": true + "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.1.0.tgz", + "integrity": "sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "internal-slot": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + } }, - "repeating": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", - "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", - "dev": true, - "requires": { - "is-finite": "^1.0.0" - } - }, - "request": { - "version": "2.88.2", - "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", - "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", - "dev": true, - "requires": { - "aws-sign2": "~0.7.0", - "aws4": "^1.8.0", - "caseless": "~0.12.0", - "combined-stream": "~1.0.6", - "extend": "~3.0.2", - "forever-agent": "~0.6.1", - "form-data": "~2.3.2", - "har-validator": "~5.1.3", - "http-signature": "~1.2.0", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.19", - "oauth-sign": "~0.9.0", - "performance-now": "^2.1.0", - "qs": "~6.5.2", - "safe-buffer": "^5.1.2", - "tough-cookie": "~2.5.0", - "tunnel-agent": "^0.6.0", - "uuid": "^3.3.2" - }, - "dependencies": { - "tough-cookie": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", - "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", - "dev": true, - "requires": { - "psl": "^1.1.28", - "punycode": "^2.1.1" - } - } + "node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dev": true, + "license": "MIT", + "dependencies": { + "safe-buffer": "~5.2.0" } }, - "request-promise-core": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/request-promise-core/-/request-promise-core-1.1.3.tgz", - "integrity": "sha512-QIs2+ArIGQVp5ZYbWD5ZLCY29D5CfWizP8eWnm8FoGD1TX61veauETVQbrV60662V0oFBkrDOuaBI8XgtuyYAQ==", + "node_modules/string-argv": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/string-argv/-/string-argv-0.3.2.tgz", + "integrity": "sha512-aqD2Q0144Z+/RqG52NeHEkZauTAUWJO8c6yTftGJKO3Tja5tUgIfmIl6kExvhtxSDP7fXB6DvzkfMpCd/F3G+Q==", "dev": true, - "requires": { - "lodash": "^4.17.15" + "license": "MIT", + "engines": { + "node": ">=0.6.19" } }, - "request-promise-native": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/request-promise-native/-/request-promise-native-1.0.8.tgz", - "integrity": "sha512-dapwLGqkHtwL5AEbfenuzjTYg35Jd6KPytsC2/TLkVMz8rm+tNt72MGUWT1RP/aYawMpN6HqbNGBQaRcBtjQMQ==", - "dev": true, - "requires": { - "request-promise-core": "1.1.3", - "stealthy-require": "^1.1.1", - "tough-cookie": "^2.3.3" - }, - "dependencies": { - "tough-cookie": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", - "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", - "dev": true, - "requires": { - "psl": "^1.1.28", - "punycode": "^2.1.1" - } - } + "node_modules/string-length": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz", + "integrity": "sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "char-regex": "^1.0.2", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" } }, - "require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", - "dev": true + "node_modules/string-width": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-7.2.0.tgz", + "integrity": "sha512-tsaTIkKW9b4N+AEj+SVA+WhJzV7/zMhcSu78mLKWSk7cXMOSHsBKFWUs0fWwq8QyK3MgJBQRX6Gbi4kYbdvGkQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "emoji-regex": "^10.3.0", + "get-east-asian-width": "^1.0.0", + "strip-ansi": "^7.1.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "require-main-filename": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", - "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", - "dev": true + "node_modules/string-width-cjs": { + "name": "string-width", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "license": "MIT", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } }, - "resolve": { - "version": "1.15.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.15.1.tgz", - "integrity": "sha512-84oo6ZTtoTUpjgNEr5SJyzQhzL72gaRodsSfyxC/AXRvwu0Yse9H8eF9IpGo7b8YetZhlI6v7ZQ6bKBFV/6S7w==", + "node_modules/string-width-cjs/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", "dev": true, - "requires": { - "path-parse": "^1.0.6" - } + "license": "MIT" }, - "resolve-cwd": { + "node_modules/string-width-cjs/node_modules/is-fullwidth-code-point": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", - "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "dev": true, - "requires": { - "resolve-from": "^5.0.0" + "license": "MIT", + "engines": { + "node": ">=8" } }, - "resolve-from": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", - "dev": true - }, - "resolve-global": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/resolve-global/-/resolve-global-1.0.0.tgz", - "integrity": "sha512-zFa12V4OLtT5XUX/Q4VLvTfBf+Ok0SPc1FNGM/z9ctUdiU618qwKpWnd0CHs3+RqROfyEg/DhuHbMWYqcgljEw==", + "node_modules/string-width/node_modules/ansi-regex": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.1.0.tgz", + "integrity": "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==", "dev": true, - "requires": { - "global-dirs": "^0.1.1" + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" } }, - "resolve-url": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", - "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=", - "dev": true - }, - "restore-cursor": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-1.0.1.tgz", - "integrity": "sha1-NGYfRohjJ/7SmRR5FSJS35LapUE=", + "node_modules/string-width/node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", "dev": true, - "requires": { - "exit-hook": "^1.0.0", - "onetime": "^1.0.0" - }, + "license": "MIT", "dependencies": { - "onetime": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz", - "integrity": "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=", - "dev": true - } + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" } }, - "ret": { - "version": "0.1.15", - "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", - "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==", - "dev": true - }, - "reusify": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", - "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", - "dev": true - }, - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "node_modules/string.prototype.padend": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/string.prototype.padend/-/string.prototype.padend-3.1.6.tgz", + "integrity": "sha512-XZpspuSB7vJWhvJc9DLSlrXl1mcA2BdoY5jjnS135ydXqLoqhs96JjDtCkjJEQHvfqZIp9hBuBMgI589peyx9Q==", "dev": true, - "requires": { - "glob": "^7.1.3" + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "ripemd160": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", - "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", + "node_modules/string.prototype.trim": { + "version": "1.2.10", + "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.10.tgz", + "integrity": "sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA==", "dev": true, - "requires": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1" + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.2", + "define-data-property": "^1.1.4", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.5", + "es-object-atoms": "^1.0.0", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "rsvp": { - "version": "4.8.5", - "resolved": "https://registry.npmjs.org/rsvp/-/rsvp-4.8.5.tgz", - "integrity": "sha512-nfMOlASu9OnRJo1mbEk2cz0D56a1MBNrJ7orjRZQG10XDyuvwksKbuXNp6qa+kbn839HwjwhBzhFmdsaEAfauA==", - "dev": true - }, - "run-async": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.0.tgz", - "integrity": "sha512-xJTbh/d7Lm7SBhc1tNvTpeCHaEzoyxPrqNlvSdMfBTYwaY++UJFyXUOxAtsRUXjlqOfj8luNaR9vjCh4KeV+pg==", + "node_modules/string.prototype.trimend": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.9.tgz", + "integrity": "sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ==", "dev": true, - "requires": { - "is-promise": "^2.1.0" + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.2", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "run-parallel": { - "version": "1.1.9", - "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.1.9.tgz", - "integrity": "sha512-DEqnSRTDw/Tc3FXf49zedI638Z9onwUotBMiUFKmrO2sdFKIbXamXGQ3Axd4qgphxKB4kw/qP1w5kTxnfU1B9Q==", - "dev": true - }, - "run-queue": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/run-queue/-/run-queue-1.0.3.tgz", - "integrity": "sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec=", + "node_modules/string.prototype.trimstart": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz", + "integrity": "sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==", "dev": true, - "requires": { - "aproba": "^1.1.1" + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "rx": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/rx/-/rx-4.1.0.tgz", - "integrity": "sha1-pfE/957zt0D+MKqAP7CfmIBdR4I=", - "dev": true + "node_modules/stringify-package": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/stringify-package/-/stringify-package-1.0.1.tgz", + "integrity": "sha512-sa4DUQsYciMP1xhKWGuFM04fB0LG/9DlluZoSVywUMRNvzid6XucHK0/90xGxRoHrAaROrcHK1aPKaijCtSrhg==", + "deprecated": "This module is not used anymore, and has been replaced by @npmcli/package-json", + "dev": true, + "license": "ISC" }, - "rxjs": { - "version": "6.5.5", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.5.tgz", - "integrity": "sha512-WfQI+1gohdf0Dai/Bbmk5L5ItH5tYqm3ki2c5GdWhKjalzjg93N3avFjVStyZZz+A2Em+ZxKH5bNghw9UeylGQ==", + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "dev": true, - "requires": { - "tslib": "^1.9.0" + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" } }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - }, - "safe-regex": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", - "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", + "node_modules/strip-ansi-cjs": { + "name": "strip-ansi", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "dev": true, - "requires": { - "ret": "~0.1.10" + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" } }, - "safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "dev": true - }, - "sane": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/sane/-/sane-4.1.0.tgz", - "integrity": "sha512-hhbzAgTIX8O7SHfp2c8/kREfEn4qO/9q8C9beyY6+tvZ87EpoZ3i1RIEvp27YBswnNbY9mWd6paKVmKbAgLfZA==", + "node_modules/strip-bom": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", + "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", "dev": true, - "requires": { - "@cnakazawa/watch": "^1.0.3", - "anymatch": "^2.0.0", - "capture-exit": "^2.0.0", - "exec-sh": "^0.3.2", - "execa": "^1.0.0", - "fb-watchman": "^2.0.0", - "micromatch": "^3.1.4", - "minimist": "^1.1.1", - "walker": "~1.0.5" + "license": "MIT", + "engines": { + "node": ">=8" } }, - "sass": { - "version": "1.26.3", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.26.3.tgz", - "integrity": "sha512-5NMHI1+YFYw4sN3yfKjpLuV9B5l7MqQ6FlkTcC4FT+oHbBRUZoSjHrrt/mE0nFXJyY2kQtU9ou9HxvFVjLFuuw==", + "node_modules/strip-final-newline": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", "dev": true, - "requires": { - "chokidar": ">=2.0.0 <4.0.0" + "license": "MIT", + "engines": { + "node": ">=6" } }, - "sass-loader": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-8.0.2.tgz", - "integrity": "sha512-7o4dbSK8/Ol2KflEmSco4jTjQoV988bM82P9CZdmo9hR3RLnvNc0ufMNdMrB0caq38JQ/FgF4/7RcbcfKzxoFQ==", + "node_modules/strip-indent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz", + "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==", "dev": true, - "requires": { - "clone-deep": "^4.0.1", - "loader-utils": "^1.2.3", - "neo-async": "^2.6.1", - "schema-utils": "^2.6.1", - "semver": "^6.3.0" + "license": "MIT", + "dependencies": { + "min-indent": "^1.0.0" + }, + "engines": { + "node": ">=8" } }, - "saxes": { - "version": "3.1.11", - "resolved": "https://registry.npmjs.org/saxes/-/saxes-3.1.11.tgz", - "integrity": "sha512-Ydydq3zC+WYDJK1+gRxRapLIED9PWeSuuS41wqyoRmzvhhh9nc+QQrVMKJYzJFULazeGhzSV0QleN2wD3boh2g==", + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", "dev": true, - "requires": { - "xmlchars": "^2.1.1" + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "schema-utils": { - "version": "2.6.6", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.6.6.tgz", - "integrity": "sha512-wHutF/WPSbIi9x6ctjGGk2Hvl0VOz5l3EKEuKbjPlB30mKZUzb9A5k9yEXRX3pwyqVLPvpfZZEllaFq/M718hA==", - "requires": { - "ajv": "^6.12.0", - "ajv-keywords": "^3.4.1" + "node_modules/style-loader": { + "version": "3.3.4", + "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-3.3.4.tgz", + "integrity": "sha512-0WqXzrsMTyb8yjZJHDqwmnwRJvhALK9LfRtRc6B4UTWe8AijYLZYZ9thuJTZc2VfQWINADW/j+LiJnfy2RoC1w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.0.0" } }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" - }, - "semver-compare": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/semver-compare/-/semver-compare-1.0.0.tgz", - "integrity": "sha1-De4hahyUGrN+nvsXiPavxf9VN/w=", - "dev": true - }, - "semver-regex": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/semver-regex/-/semver-regex-2.0.0.tgz", - "integrity": "sha512-mUdIBBvdn0PLOeP3TEkMH7HHeUP3GjsXCwKarjv/kGmUFOYg1VqEemKhoQpWMu6X2I8kHeuVdGibLGkVK+/5Qw==", - "dev": true - }, - "serialize-javascript": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-2.1.2.tgz", - "integrity": "sha512-rs9OggEUF0V4jUSecXazOYsLfu7OGK2qIn3c7IPBiffz32XniEp/TX9Xmc9LQfK2nQ2QKHvZ2oygKUGU0lG4jQ==", - "dev": true - }, - "set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", - "dev": true + "node_modules/stylus": { + "version": "0.63.0", + "resolved": "https://registry.npmjs.org/stylus/-/stylus-0.63.0.tgz", + "integrity": "sha512-OMlgrTCPzE/ibtRMoeLVhOY0RcNuNWh0rhAVqeKnk/QwcuUKQbnqhZ1kg2vzD8VU/6h3FoPTq4RJPHgLBvX6Bw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@adobe/css-tools": "~4.3.3", + "debug": "^4.3.2", + "glob": "^7.1.6", + "sax": "~1.3.0", + "source-map": "^0.7.3" + }, + "bin": { + "stylus": "bin/stylus" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://opencollective.com/stylus" + } }, - "set-value": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz", - "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==", - "dev": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-extendable": "^0.1.1", - "is-plain-object": "^2.0.3", - "split-string": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } + "node_modules/stylus-loader": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/stylus-loader/-/stylus-loader-8.1.1.tgz", + "integrity": "sha512-Ohe29p3gwJiu1kxq16P80g1qq0FxGtwQevKctLE4su8KUq+Ea06Q6lp7SpcJjaKNrWIuEZQGvESUPt8JpukKVw==", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-glob": "^3.3.2", + "normalize-path": "^3.0.0" + }, + "engines": { + "node": ">= 18.12.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "@rspack/core": "0.x || 1.x", + "stylus": ">=0.52.4", + "webpack": "^5.0.0" + }, + "peerDependenciesMeta": { + "@rspack/core": { + "optional": true + }, + "webpack": { + "optional": true } } }, - "setimmediate": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", - "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=", - "dev": true - }, - "sha.js": { - "version": "2.4.11", - "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", - "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", + "node_modules/stylus/node_modules/sax": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.3.0.tgz", + "integrity": "sha512-0s+oAmw9zLl1V1cS9BtZN7JAd0cW5e0QH4W3LWEK6a4LaLEA2OTpGYWDY+6XasBLtz6wkm3u1xRw95mRuJ59WA==", "dev": true, - "requires": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } + "license": "ISC" }, - "shallow-clone": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz", - "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==", + "node_modules/stylus/node_modules/source-map": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", "dev": true, - "requires": { - "kind-of": "^6.0.2" + "license": "BSD-3-Clause", + "engines": { + "node": ">= 8" } }, - "shebang-command": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", - "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", "dev": true, - "requires": { - "shebang-regex": "^1.0.0" + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" } }, - "shebang-regex": { + "node_modules/supports-preserve-symlinks-flag": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", - "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", - "dev": true - }, - "shell-quote": { - "version": "1.7.2", - "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.7.2.tgz", - "integrity": "sha512-mRz/m/JVscCrkMyPqHc/bczi3OQHkLTqXHEFu0zDhK/qfv3UcOA4SVmRCLmos4bhjr9ekVQubj/R7waKapmiQg==", - "dev": true - }, - "shellwords": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/shellwords/-/shellwords-0.1.1.tgz", - "integrity": "sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww==", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", "dev": true, - "optional": true - }, - "sigmund": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/sigmund/-/sigmund-1.0.1.tgz", - "integrity": "sha1-P/IfGYytIXX587eBhT/ZTQ0ZtZA=", - "dev": true - }, - "signal-exit": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", - "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==", - "dev": true + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "sisteransi": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", - "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", - "dev": true + "node_modules/symbol-tree": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", + "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==", + "dev": true, + "license": "MIT" }, - "slash": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", - "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==", - "dev": true + "node_modules/synckit": { + "version": "0.11.8", + "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.11.8.tgz", + "integrity": "sha512-+XZ+r1XGIJGeQk3VvXhT6xx/VpbHsRzsTkGgF6E5RX9TTXD0118l87puaEBZ566FhqblC6U0d4XnubznJDm30A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@pkgr/core": "^0.2.4" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/synckit" + } }, - "slice-ansi": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz", - "integrity": "sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==", + "node_modules/tapable": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.2.tgz", + "integrity": "sha512-Re10+NauLTMCudc7T5WLFLAwDhQ0JWdrMK+9B2M8zR5hRExKmsRDCBA7/aV/pNJFltmBFO5BAMlQFi/vq3nKOg==", "dev": true, - "requires": { - "ansi-styles": "^3.2.0", - "astral-regex": "^1.0.0", - "is-fullwidth-code-point": "^2.0.0" + "license": "MIT", + "engines": { + "node": ">=6" } }, - "smpltmpl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/smpltmpl/-/smpltmpl-1.0.2.tgz", - "integrity": "sha512-Hq23NNgeZigOzIiX1dkb6W3gFn2/XQj43KhPxu65IMieG/gIwf/lQb1IudjYv0c/5LwJeS/mPayYzyo+8WJMxQ==", - "dev": true, - "requires": { - "babel-code-frame": "^6.26.0" - } - }, - "snapdragon": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", - "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", - "dev": true, - "requires": { - "base": "^0.11.1", - "debug": "^2.2.0", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "map-cache": "^0.2.2", - "source-map": "^0.5.6", - "source-map-resolve": "^0.5.0", - "use": "^3.1.0" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true - } + "node_modules/terser": { + "version": "5.42.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.42.0.tgz", + "integrity": "sha512-UYCvU9YQW2f/Vwl+P0GfhxJxbUGLwd+5QrrGgLajzWAtC/23AX0vcise32kkP7Eu0Wu9VlzzHAXkLObgjQfFlQ==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "@jridgewell/source-map": "^0.3.3", + "acorn": "^8.14.0", + "commander": "^2.20.0", + "source-map-support": "~0.5.20" + }, + "bin": { + "terser": "bin/terser" + }, + "engines": { + "node": ">=10" } }, - "snapdragon-node": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", - "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", - "dev": true, - "requires": { - "define-property": "^1.0.0", - "isobject": "^3.0.0", - "snapdragon-util": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "dev": true, - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } + "node_modules/terser-webpack-plugin": { + "version": "5.3.14", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.14.tgz", + "integrity": "sha512-vkZjpUjb6OMS7dhV+tILUW6BhpDR7P2L/aQSAv+Uwk+m8KATX9EccViHTJR2qDtACKPIYndLGCyl3FMo+r2LMw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.25", + "jest-worker": "^27.4.5", + "schema-utils": "^4.3.0", + "serialize-javascript": "^6.0.2", + "terser": "^5.31.1" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.1.0" + }, + "peerDependenciesMeta": { + "@swc/core": { + "optional": true }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } + "esbuild": { + "optional": true }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } + "uglify-js": { + "optional": true } } }, - "snapdragon-util": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", - "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", + "node_modules/terser-webpack-plugin/node_modules/ajv": { + "version": "8.17.1", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.17.1.tgz", + "integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==", "dev": true, - "requires": { - "kind-of": "^3.2.0" - }, + "license": "MIT", "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } + "fast-deep-equal": "^3.1.3", + "fast-uri": "^3.0.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" } }, - "source-list-map": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz", - "integrity": "sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==", - "dev": true - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" - }, - "source-map-resolve": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz", - "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==", + "node_modules/terser-webpack-plugin/node_modules/ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", "dev": true, - "requires": { - "atob": "^2.1.2", - "decode-uri-component": "^0.2.0", - "resolve-url": "^0.2.1", - "source-map-url": "^0.4.0", - "urix": "^0.1.0" + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.3" + }, + "peerDependencies": { + "ajv": "^8.8.2" } }, - "source-map-support": { - "version": "0.5.18", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.18.tgz", - "integrity": "sha512-9luZr/BZ2QeU6tO2uG8N2aZpVSli4TSAOAqFOyTO51AJcD9P99c0K1h6dD6r6qo5dyT44BR5exweOaLLeldTkQ==", + "node_modules/terser-webpack-plugin/node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" + "license": "MIT", + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": ">= 10.13.0" } }, - "source-map-url": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz", - "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=", - "dev": true - }, - "spawn-sync": { - "version": "1.0.15", - "resolved": "https://registry.npmjs.org/spawn-sync/-/spawn-sync-1.0.15.tgz", - "integrity": "sha1-sAeZVX63+wyDdsKdROih6mfldHY=", + "node_modules/terser-webpack-plugin/node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", "dev": true, - "requires": { - "concat-stream": "^1.4.7", - "os-shim": "^0.1.2" - } + "license": "MIT" }, - "spdx-correct": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.0.tgz", - "integrity": "sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q==", + "node_modules/terser-webpack-plugin/node_modules/schema-utils": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.3.2.tgz", + "integrity": "sha512-Gn/JaSk/Mt9gYubxTtSn/QCV4em9mpAPiR1rqy/Ocu19u/G9J5WWdNoUT4SiV6mFC3y6cxyFcFwdzPM3FgxGAQ==", "dev": true, - "requires": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" + "license": "MIT", + "dependencies": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.9.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.1.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" } }, - "spdx-exceptions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz", - "integrity": "sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA==", - "dev": true - }, - "spdx-expression-parse": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz", - "integrity": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==", + "node_modules/terser/node_modules/acorn": { + "version": "8.15.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.15.0.tgz", + "integrity": "sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==", "dev": true, - "requires": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" + "license": "MIT", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" } }, - "spdx-license-ids": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz", - "integrity": "sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q==", - "dev": true - }, - "split": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/split/-/split-1.0.1.tgz", - "integrity": "sha512-mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg==", + "node_modules/terser/node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", "dev": true, - "requires": { - "through": "2" - } - }, - "split-lines": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/split-lines/-/split-lines-2.0.0.tgz", - "integrity": "sha512-gaIdhbqxkB5/VflPXsJwZvEzh/kdwiRPF9iqpkxX4us+lzB8INedFwjCyo6vwuz5x2Ddlnav2zh270CEjCG8mA==", - "dev": true + "license": "MIT" }, - "split-string": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", - "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", + "node_modules/terser/node_modules/source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", "dev": true, - "requires": { - "extend-shallow": "^3.0.0" - } - }, - "split2": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/split2/-/split2-2.2.0.tgz", - "integrity": "sha512-RAb22TG39LhI31MbreBgIuKiIKhVsawfTgEGqKHTK87aG+ul/PB8Sqoi3I7kVdRWiCfrKxK3uo4/YUkpNvhPbw==", - "dev": true, - "requires": { - "through2": "^2.0.2" - }, - "dependencies": { - "through2": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", - "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", - "dev": true, - "requires": { - "readable-stream": "~2.3.6", - "xtend": "~4.0.1" - } - } + "license": "MIT", + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" } }, - "sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", - "dev": true - }, - "sshpk": { - "version": "1.16.1", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz", - "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==", - "dev": true, - "requires": { - "asn1": "~0.2.3", - "assert-plus": "^1.0.0", - "bcrypt-pbkdf": "^1.0.0", - "dashdash": "^1.12.0", - "ecc-jsbn": "~0.1.1", - "getpass": "^0.1.1", - "jsbn": "~0.1.0", - "safer-buffer": "^2.0.2", - "tweetnacl": "~0.14.0" - } - }, - "ssri": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.1.tgz", - "integrity": "sha512-3Wge10hNcT1Kur4PDFwEieXSCMCJs/7WvSACcrMYrNp+b8kDL1/0wJch5Ni2WrtwEa2IO8OsVfeKIciKCDx/QA==", + "node_modules/test-exclude": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", + "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", "dev": true, - "requires": { - "figgy-pudding": "^3.5.1" + "license": "ISC", + "dependencies": { + "@istanbuljs/schema": "^0.1.2", + "glob": "^7.1.4", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=8" } }, - "stack-trace": { - "version": "0.0.10", - "resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz", - "integrity": "sha1-VHxws0fo0ytOEI6hoqFZ5f3eGcA=", - "dev": true - }, - "stack-utils": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-1.0.2.tgz", - "integrity": "sha512-MTX+MeG5U994cazkjd/9KNAapsHnibjMLnfXodlkXw76JEea0UiNzrqidzo1emMwk7w5Qhc9jd4Bn9TBb1MFwA==", - "dev": true - }, - "standard-version": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/standard-version/-/standard-version-7.1.0.tgz", - "integrity": "sha512-bHY2E/1tYGeVl+0XSXFivb+54h2fA4pWJocXAd6FGbtSFUvGsnfmMbIXYDxrYErpq7oEqoKreV8xTAp78WoATA==", + "node_modules/text-extensions": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/text-extensions/-/text-extensions-2.4.0.tgz", + "integrity": "sha512-te/NtwBwfiNRLf9Ijqx3T0nlqZiQ2XrrtBvu+cLL8ZRrGkO0NHTug8MYFKyoSrv/sHTaSKfilUkizV6XhxMJ3g==", "dev": true, - "requires": { - "chalk": "2.4.2", - "conventional-changelog": "3.1.15", - "conventional-changelog-config-spec": "2.1.0", - "conventional-changelog-conventionalcommits": "4.2.3", - "conventional-recommended-bump": "6.0.5", - "detect-indent": "6.0.0", - "detect-newline": "3.1.0", - "dotgitignore": "2.1.0", - "figures": "3.1.0", - "find-up": "4.1.0", - "fs-access": "1.0.1", - "git-semver-tags": "3.0.1", - "semver": "6.3.0", - "stringify-package": "1.0.1", - "yargs": "15.0.2" - }, - "dependencies": { - "conventional-changelog-conventionalcommits": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/conventional-changelog-conventionalcommits/-/conventional-changelog-conventionalcommits-4.2.3.tgz", - "integrity": "sha512-atGa+R4vvEhb8N/8v3IoW59gCBJeeFiX6uIbPu876ENAmkMwsenyn0R21kdDHJFLQdy6zW4J6b4xN8KI3b9oww==", - "dev": true, - "requires": { - "compare-func": "^1.3.1", - "lodash": "^4.17.15", - "q": "^1.5.1" - } - }, - "detect-indent": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-6.0.0.tgz", - "integrity": "sha512-oSyFlqaTHCItVRGK5RmrmjB+CmaMOW7IaNA/kdxqhoa6d17j/5ce9O9eWXmV/KEdRwqpQA+Vqe8a8Bsybu4YnA==", - "dev": true - }, - "figures": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-3.1.0.tgz", - "integrity": "sha512-ravh8VRXqHuMvZt/d8GblBeqDMkdJMBdv/2KntFH+ra5MXkO7nxNKpzQ3n6QD/2da1kH0aWmNISdvhM7gl2gVg==", - "dev": true, - "requires": { - "escape-string-regexp": "^1.0.5" - } - }, - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "requires": { - "p-locate": "^4.1.0" - } - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "requires": { - "p-limit": "^2.2.0" - } - }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - }, - "string-width": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", - "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" - } - }, - "yargs": { - "version": "15.0.2", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.0.2.tgz", - "integrity": "sha512-GH/X/hYt+x5hOat4LMnCqMd8r5Cv78heOMIJn1hr7QPPBqfeC6p89Y78+WB9yGDvfpCvgasfmWLzNzEioOUD9Q==", - "dev": true, - "requires": { - "cliui": "^6.0.0", - "decamelize": "^1.2.0", - "find-up": "^4.1.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^4.2.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^16.1.0" - } - }, - "yargs-parser": { - "version": "16.1.0", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-16.1.0.tgz", - "integrity": "sha512-H/V41UNZQPkUMIT5h5hiwg4QKIY1RPvoBV4XcjUbRM8Bk2oKqqyZ0DIEbTFZB0XjbtSPG8SAa/0DxCQmiRgzKg==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } - } + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "static-extend": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", - "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", - "dev": true, - "requires": { - "define-property": "^0.2.5", - "object-copy": "^0.1.0" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - } - } + "node_modules/text-hex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/text-hex/-/text-hex-1.0.0.tgz", + "integrity": "sha512-uuVGNWzgJ4yhRaNSiubPY7OjISw4sw4E5Uv0wbjp+OzcbmVU/rsT8ujgcXJhn9ypzsgr5vlzpPqP+MBBKcGvbg==", + "dev": true, + "license": "MIT" }, - "stealthy-require": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/stealthy-require/-/stealthy-require-1.1.1.tgz", - "integrity": "sha1-NbCYdbT/SfJqd35QmzCQoyJr8ks=", - "dev": true + "node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", + "dev": true, + "license": "MIT" }, - "stream-browserify": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.2.tgz", - "integrity": "sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg==", + "node_modules/thingies": { + "version": "1.21.0", + "resolved": "https://registry.npmjs.org/thingies/-/thingies-1.21.0.tgz", + "integrity": "sha512-hsqsJsFMsV+aD4s3CWKk85ep/3I9XzYV/IXaSouJMYIoDlgyi11cBhsqYe9/geRfB0YIikBQg6raRaM+nIMP9g==", "dev": true, - "requires": { - "inherits": "~2.0.1", - "readable-stream": "^2.0.2" + "license": "Unlicense", + "engines": { + "node": ">=10.18" + }, + "peerDependencies": { + "tslib": "^2" } }, - "stream-each": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/stream-each/-/stream-each-1.2.3.tgz", - "integrity": "sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw==", + "node_modules/through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", "dev": true, - "requires": { - "end-of-stream": "^1.1.0", - "stream-shift": "^1.0.0" - } + "license": "MIT" }, - "stream-http": { - "version": "2.8.3", - "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-2.8.3.tgz", - "integrity": "sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw==", + "node_modules/through2": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/through2/-/through2-4.0.2.tgz", + "integrity": "sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw==", "dev": true, - "requires": { - "builtin-status-codes": "^3.0.0", - "inherits": "^2.0.1", - "readable-stream": "^2.3.6", - "to-arraybuffer": "^1.0.0", - "xtend": "^4.0.0" + "license": "MIT", + "dependencies": { + "readable-stream": "3" } }, - "stream-shift": { + "node_modules/tinyexec": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz", - "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==", - "dev": true - }, - "string-argv": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/string-argv/-/string-argv-0.3.1.tgz", - "integrity": "sha512-a1uQGz7IyVy9YwhqjZIZu1c8JO8dNIe20xBmSS6qu9kv++k3JGzCVmprbNN5Kn+BgzD5E7YYwg1CcjuJMRNsvg==", - "dev": true + "resolved": "https://registry.npmjs.org/tinyexec/-/tinyexec-1.0.1.tgz", + "integrity": "sha512-5uC6DDlmeqiOwCPmK9jMSdOuZTh8bU39Ys6yidB+UTt5hfZUPGAypSgFRiEp+jbi9qH40BLDvy85jIU88wKSqw==", + "dev": true, + "license": "MIT" }, - "string-length": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-length/-/string-length-3.1.0.tgz", - "integrity": "sha512-Ttp5YvkGm5v9Ijagtaz1BnN+k9ObpvS0eIBblPMp2YWL8FBmi9qblQ9fexc2k/CXFgrTIteU3jAw3payCnwSTA==", + "node_modules/tinyglobby": { + "version": "0.2.14", + "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.14.tgz", + "integrity": "sha512-tX5e7OM1HnYr2+a2C/4V0htOcSQcoSTH9KgJnVvNm5zm/cyEWKJ7j7YutsH9CxMdtOkkLFy2AHrMci9IM8IPZQ==", "dev": true, - "requires": { - "astral-regex": "^1.0.0", - "strip-ansi": "^5.2.0" - }, + "license": "MIT", "dependencies": { - "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", - "dev": true - }, - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dev": true, - "requires": { - "ansi-regex": "^4.1.0" - } - } + "fdir": "^6.4.4", + "picomatch": "^4.0.2" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/SuperchupuDev" } }, - "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "node_modules/tldts": { + "version": "6.1.86", + "resolved": "https://registry.npmjs.org/tldts/-/tldts-6.1.86.tgz", + "integrity": "sha512-WMi/OQ2axVTf/ykqCQgXiIct+mSQDFdH2fkwhPwgEwvJ1kSzZRiinb0zF2Xb8u4+OqPChmyI6MEu4EezNJz+FQ==", "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - }, + "license": "MIT", "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } + "tldts-core": "^6.1.86" + }, + "bin": { + "tldts": "bin/cli.js" } }, - "string.prototype.padend": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string.prototype.padend/-/string.prototype.padend-3.1.0.tgz", - "integrity": "sha512-3aIv8Ffdp8EZj8iLwREGpQaUZiPyrWrpzMBHvkiSW/bK/EGve9np07Vwy7IJ5waydpGXzQZu/F8Oze2/IWkBaA==", + "node_modules/tldts-core": { + "version": "6.1.86", + "resolved": "https://registry.npmjs.org/tldts-core/-/tldts-core-6.1.86.tgz", + "integrity": "sha512-Je6p7pkk+KMzMv2XXKmAE3McmolOQFdxkKw0R8EYNr7sELW46JqnNeTX8ybPiQgvg1ymCoF8LXs5fzFaZvJPTA==", "dev": true, - "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.0-next.1" - } + "license": "MIT" }, - "string.prototype.trimend": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.0.tgz", - "integrity": "sha512-EEJnGqa/xNfIg05SxiPSqRS7S9qwDhYts1TSLR1BQfYUfPe1stofgGKvwERK9+9yf+PpfBMlpBaCHucXGPQfUA==", + "node_modules/tmpl": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", + "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==", + "dev": true, + "license": "BSD-3-Clause" + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", "dev": true, - "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.5" + "license": "MIT", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" } }, - "string.prototype.trimleft": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/string.prototype.trimleft/-/string.prototype.trimleft-2.1.2.tgz", - "integrity": "sha512-gCA0tza1JBvqr3bfAIFJGqfdRTyPae82+KTnm3coDXkZN9wnuW3HjGgN386D7hfv5CHQYCI022/rJPVlqXyHSw==", + "node_modules/tough-cookie": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-5.1.2.tgz", + "integrity": "sha512-FVDYdxtnj0G6Qm/DhNPSb8Ju59ULcup3tuJxkFb5K8Bv2pUXILbf0xZWU8PX8Ov19OXljbUyveOFwRMwkXzO+A==", "dev": true, - "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.5", - "string.prototype.trimstart": "^1.0.0" + "license": "BSD-3-Clause", + "dependencies": { + "tldts": "^6.1.32" + }, + "engines": { + "node": ">=16" } }, - "string.prototype.trimright": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/string.prototype.trimright/-/string.prototype.trimright-2.1.2.tgz", - "integrity": "sha512-ZNRQ7sY3KroTaYjRS6EbNiiHrOkjihL9aQE/8gfQ4DtAC/aEBRHFJa44OmoWxGGqXuJlfKkZW4WcXErGr+9ZFg==", + "node_modules/tr46": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-5.1.1.tgz", + "integrity": "sha512-hdF5ZgjTqgAntKkklYw0R03MG2x/bSzTtkxmIRw/sTNV8YXsCJ1tfLAX23lhxhHJlEf3CRCOCGGWw3vI3GaSPw==", "dev": true, - "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.5", - "string.prototype.trimend": "^1.0.0" + "license": "MIT", + "dependencies": { + "punycode": "^2.3.1" + }, + "engines": { + "node": ">=18" } }, - "string.prototype.trimstart": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.0.tgz", - "integrity": "sha512-iCP8g01NFYiiBOnwG1Xc3WZLyoo+RuBymwIlWncShXDDJYWN6DbnM3odslBJdgCdRlq94B5s63NWAZlcn2CS4w==", + "node_modules/tree-dump": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/tree-dump/-/tree-dump-1.0.3.tgz", + "integrity": "sha512-il+Cv80yVHFBwokQSfd4bldvr1Md951DpgAGfmhydt04L+YzHgubm2tQ7zueWDcGENKHq0ZvGFR/hjvNXilHEg==", "dev": true, - "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.5" + "license": "Apache-2.0", + "engines": { + "node": ">=10.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/streamich" + }, + "peerDependencies": { + "tslib": "2" } }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "node_modules/trim-newlines": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.1.tgz", + "integrity": "sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==", "dev": true, - "requires": { - "safe-buffer": "~5.1.0" + "license": "MIT", + "engines": { + "node": ">=8" } }, - "stringify-object": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/stringify-object/-/stringify-object-3.3.0.tgz", - "integrity": "sha512-rHqiFh1elqCQ9WPLIC8I0Q/g/wj5J1eMkyoiD6eoQApWHP0FtlK7rqnhmabL5VUY9JQCcqwwvlOaSuutekgyrw==", + "node_modules/triple-beam": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/triple-beam/-/triple-beam-1.4.1.tgz", + "integrity": "sha512-aZbgViZrg1QNcG+LULa7nhZpJTZSLm/mXnHXnbAbjmN5aSa0y7V+wvv6+4WaBtpISJzThKy+PIPxc1Nq1EJ9mg==", "dev": true, - "requires": { - "get-own-enumerable-property-symbols": "^3.0.0", - "is-obj": "^1.0.1", - "is-regexp": "^1.0.0" + "license": "MIT", + "engines": { + "node": ">= 14.0.0" } }, - "stringify-package": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/stringify-package/-/stringify-package-1.0.1.tgz", - "integrity": "sha512-sa4DUQsYciMP1xhKWGuFM04fB0LG/9DlluZoSVywUMRNvzid6XucHK0/90xGxRoHrAaROrcHK1aPKaijCtSrhg==", - "dev": true + "node_modules/tsconfig-paths": { + "version": "3.15.0", + "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.15.0.tgz", + "integrity": "sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/json5": "^0.0.29", + "json5": "^1.0.2", + "minimist": "^1.2.6", + "strip-bom": "^3.0.0" + } }, - "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "node_modules/tsconfig-paths/node_modules/json5": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", + "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", "dev": true, - "requires": { - "ansi-regex": "^5.0.0" - }, + "license": "MIT", "dependencies": { - "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", - "dev": true - } + "minimist": "^1.2.0" + }, + "bin": { + "json5": "lib/cli.js" } }, - "strip-bom": { + "node_modules/tsconfig-paths/node_modules/strip-bom": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", - "dev": true - }, - "strip-eof": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", - "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", - "dev": true - }, - "strip-final-newline": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", - "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", - "dev": true + "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } }, - "strip-indent": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-2.0.0.tgz", - "integrity": "sha1-XvjbKV0B5u1sv3qrlpmNeCJSe2g=", - "dev": true + "node_modules/tslib": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", + "dev": true, + "license": "0BSD" }, - "strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", - "dev": true + "node_modules/type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dev": true, + "license": "MIT", + "dependencies": { + "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" + } }, - "supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "requires": { - "has-flag": "^3.0.0" + "node_modules/type-detect": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", + "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" } }, - "supports-hyperlinks": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.1.0.tgz", - "integrity": "sha512-zoE5/e+dnEijk6ASB6/qrK+oYdm2do1hjoLWrqUC/8WEIW1gbxFcKuBof7sW8ArN6e+AYvsE8HBGiVRWL/F5CA==", + "node_modules/type-fest": { + "version": "0.21.3", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", + "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", "dev": true, - "requires": { - "has-flag": "^4.0.0", - "supports-color": "^7.0.0" + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=10" }, - "dependencies": { - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "symbol-observable": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.2.0.tgz", - "integrity": "sha512-e900nM8RRtGhlV36KGEU9k65K3mPb1WV70OdjfxlG2EAuM1noi/E/BaW/uMhL7bPEssK8QV57vN3esixjUvcXQ==", - "dev": true - }, - "symbol-tree": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", - "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==", - "dev": true - }, - "table": { - "version": "5.4.6", - "resolved": "https://registry.npmjs.org/table/-/table-5.4.6.tgz", - "integrity": "sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug==", + "node_modules/typed-array-buffer": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.3.tgz", + "integrity": "sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==", "dev": true, - "requires": { - "ajv": "^6.10.2", - "lodash": "^4.17.14", - "slice-ansi": "^2.1.0", - "string-width": "^3.0.0" - }, + "license": "MIT", "dependencies": { - "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", - "dev": true - }, - "emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", - "dev": true - }, - "string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", - "dev": true, - "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - } - }, - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dev": true, - "requires": { - "ansi-regex": "^4.1.0" - } - } + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "is-typed-array": "^1.1.14" + }, + "engines": { + "node": ">= 0.4" } }, - "tabtab": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/tabtab/-/tabtab-2.2.2.tgz", - "integrity": "sha1-egR/FDsBC0y9MfhX6ClhUSy/ThQ=", + "node_modules/typed-array-byte-length": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.3.tgz", + "integrity": "sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg==", "dev": true, - "requires": { - "debug": "^2.2.0", - "inquirer": "^1.0.2", - "lodash.difference": "^4.5.0", - "lodash.uniq": "^4.5.0", - "minimist": "^1.2.0", - "mkdirp": "^0.5.1", - "npmlog": "^2.0.3", - "object-assign": "^4.1.0" + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "for-each": "^0.3.3", + "gopd": "^1.2.0", + "has-proto": "^1.2.0", + "is-typed-array": "^1.1.14" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "tapable": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz", - "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==", - "dev": true - }, - "terminal-link": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/terminal-link/-/terminal-link-2.1.1.tgz", - "integrity": "sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ==", - "dev": true, - "requires": { - "ansi-escapes": "^4.2.1", - "supports-hyperlinks": "^2.0.0" - }, - "dependencies": { - "ansi-escapes": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.1.tgz", - "integrity": "sha512-JWF7ocqNrp8u9oqpgV+wH5ftbt+cfvv+PTjOvKLT3AdYly/LmORARfEVT1iyjwN+4MqE5UmVKoAdIBqeoCHgLA==", - "dev": true, - "requires": { - "type-fest": "^0.11.0" - } - }, - "type-fest": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.11.0.tgz", - "integrity": "sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ==", - "dev": true - } + "node_modules/typed-array-byte-offset": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.4.tgz", + "integrity": "sha512-bTlAFB/FBYMcuX81gbL4OcpH5PmlFHqlCCpAl8AlEzMz5k53oNDvN8p1PNOWLEmI2x4orp3raOFB51tv9X+MFQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.8", + "for-each": "^0.3.3", + "gopd": "^1.2.0", + "has-proto": "^1.2.0", + "is-typed-array": "^1.1.15", + "reflect.getprototypeof": "^1.0.9" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "terser": { - "version": "4.6.11", - "resolved": "https://registry.npmjs.org/terser/-/terser-4.6.11.tgz", - "integrity": "sha512-76Ynm7OXUG5xhOpblhytE7X58oeNSmC8xnNhjWVo8CksHit0U0kO4hfNbPrrYwowLWFgM2n9L176VNx2QaHmtA==", + "node_modules/typed-array-length": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.7.tgz", + "integrity": "sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg==", "dev": true, - "requires": { - "commander": "^2.20.0", - "source-map": "~0.6.1", - "source-map-support": "~0.5.12" - }, + "license": "MIT", "dependencies": { - "commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true - } + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "is-typed-array": "^1.1.13", + "possible-typed-array-names": "^1.0.0", + "reflect.getprototypeof": "^1.0.6" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "terser-webpack-plugin": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-1.4.3.tgz", - "integrity": "sha512-QMxecFz/gHQwteWwSo5nTc6UaICqN1bMedC5sMtUc7y3Ha3Q8y6ZO0iCR8pq4RJC8Hjf0FEPEHZqcMB/+DFCrA==", - "dev": true, - "requires": { - "cacache": "^12.0.2", - "find-cache-dir": "^2.1.0", - "is-wsl": "^1.1.0", - "schema-utils": "^1.0.0", - "serialize-javascript": "^2.1.2", - "source-map": "^0.6.1", - "terser": "^4.1.2", - "webpack-sources": "^1.4.0", - "worker-farm": "^1.7.0" + "node_modules/typedarray": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", + "integrity": "sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/typescript": { + "version": "5.8.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.8.3.tgz", + "integrity": "sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==", + "dev": true, + "license": "Apache-2.0", + "peer": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" }, - "dependencies": { - "is-wsl": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", - "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", - "dev": true - }, - "schema-utils": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", - "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", - "dev": true, - "requires": { - "ajv": "^6.1.0", - "ajv-errors": "^1.0.0", - "ajv-keywords": "^3.1.0" - } - } + "engines": { + "node": ">=14.17" } }, - "test-exclude": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", - "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", + "node_modules/uglify-js": { + "version": "3.19.3", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.19.3.tgz", + "integrity": "sha512-v3Xu+yuwBXisp6QYTcH4UbH+xYJXqnq2m/LtQVWKWzYc1iehYnLixoQDN9FH6/j9/oybfd6W9Ghwkl8+UMKTKQ==", "dev": true, - "requires": { - "@istanbuljs/schema": "^0.1.2", - "glob": "^7.1.4", - "minimatch": "^3.0.4" + "license": "BSD-2-Clause", + "optional": true, + "bin": { + "uglifyjs": "bin/uglifyjs" + }, + "engines": { + "node": ">=0.8.0" } }, - "text-extensions": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/text-extensions/-/text-extensions-1.9.0.tgz", - "integrity": "sha512-wiBrwC1EhBelW12Zy26JeOUkQ5mRu+5o8rpsJk5+2t+Y5vE7e842qtZDQ2g1NpX/29HdyFeJ4nSIhI47ENSxlQ==", - "dev": true - }, - "text-table": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", - "dev": true - }, - "throat": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/throat/-/throat-5.0.0.tgz", - "integrity": "sha512-fcwX4mndzpLQKBS1DVYhGAcYaYt7vsHNIvQV+WXMvnow5cgjPphq5CaayLaGsjRdSCKZFNGt7/GYAuXaNOiYCA==", - "dev": true + "node_modules/unbox-primitive": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.1.0.tgz", + "integrity": "sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "has-bigints": "^1.0.2", + "has-symbols": "^1.1.0", + "which-boxed-primitive": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "through": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", - "dev": true + "node_modules/undici-types": { + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.8.0.tgz", + "integrity": "sha512-9UJ2xGDvQ43tYyVMpuHlsgApydB8ZKfVYTsLDhXkFL/6gfkp+U8xTGdh8pMJv1SpZna0zxG1DwsKZsreLbXBxw==", + "dev": true, + "license": "MIT" }, - "through2": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/through2/-/through2-3.0.1.tgz", - "integrity": "sha512-M96dvTalPT3YbYLaKaCuwu+j06D/8Jfib0o/PxbVt6Amhv3dUAtW6rTV1jPgJSBG83I/e04Y6xkVdVhSRhi0ww==", + "node_modules/unicode-canonical-property-names-ecmascript": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.1.tgz", + "integrity": "sha512-dA8WbNeb2a6oQzAQ55YlT5vQAWGV9WXOsi3SskE3bcCdM0P4SDd+24zS/OCacdRq5BkdsRj9q3Pg6YyQoxIGqg==", "dev": true, - "requires": { - "readable-stream": "2 || 3" + "license": "MIT", + "engines": { + "node": ">=4" } }, - "timers-browserify": { - "version": "2.0.11", - "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.11.tgz", - "integrity": "sha512-60aV6sgJ5YEbzUdn9c8kYGIqOubPoUdqQCul3SBAsRCZ40s6Y5cMcrW4dt3/k/EsbLVJNl9n6Vz3fTc+k2GeKQ==", + "node_modules/unicode-match-property-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", + "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", "dev": true, - "requires": { - "setimmediate": "^1.0.4" + "license": "MIT", + "dependencies": { + "unicode-canonical-property-names-ecmascript": "^2.0.0", + "unicode-property-aliases-ecmascript": "^2.0.0" + }, + "engines": { + "node": ">=4" } }, - "tmp": { - "version": "0.0.29", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.29.tgz", - "integrity": "sha1-8lEl/w3Z2jzLDC3Tce4SiLuRKMA=", + "node_modules/unicode-match-property-value-ecmascript": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.2.0.tgz", + "integrity": "sha512-4IehN3V/+kkr5YeSSDDQG8QLqO26XpL2XP3GQtqwlT/QYSECAwFztxVHjlbh0+gjJ3XmNLS0zDsbgs9jWKExLg==", "dev": true, - "requires": { - "os-tmpdir": "~1.0.1" + "license": "MIT", + "engines": { + "node": ">=4" } }, - "tmpl": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.4.tgz", - "integrity": "sha1-I2QN17QtAEM5ERQIIOXPRA5SHdE=", - "dev": true + "node_modules/unicode-property-aliases-ecmascript": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz", + "integrity": "sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } }, - "to-arraybuffer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz", - "integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=", - "dev": true + "node_modules/unicorn-magic": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/unicorn-magic/-/unicorn-magic-0.1.0.tgz", + "integrity": "sha512-lRfVq8fE8gz6QMBuDM6a+LO3IAzTi05H6gCVaUpir2E1Rwpo4ZUog45KpNXKC/Mn3Yb9UDuHumeFTo9iV/D9FQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", - "dev": true - }, - "to-object-path": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", - "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } + "node_modules/unrs-resolver": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/unrs-resolver/-/unrs-resolver-1.9.0.tgz", + "integrity": "sha512-wqaRu4UnzBD2ABTC1kLfBjAqIDZ5YUTr/MLGa7By47JV1bJDSW7jq/ZSLigB7enLe7ubNaJhtnBXgrc/50cEhg==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "dependencies": { + "napi-postinstall": "^0.2.2" + }, + "funding": { + "url": "https://opencollective.com/unrs-resolver" + }, + "optionalDependencies": { + "@unrs/resolver-binding-android-arm-eabi": "1.9.0", + "@unrs/resolver-binding-android-arm64": "1.9.0", + "@unrs/resolver-binding-darwin-arm64": "1.9.0", + "@unrs/resolver-binding-darwin-x64": "1.9.0", + "@unrs/resolver-binding-freebsd-x64": "1.9.0", + "@unrs/resolver-binding-linux-arm-gnueabihf": "1.9.0", + "@unrs/resolver-binding-linux-arm-musleabihf": "1.9.0", + "@unrs/resolver-binding-linux-arm64-gnu": "1.9.0", + "@unrs/resolver-binding-linux-arm64-musl": "1.9.0", + "@unrs/resolver-binding-linux-ppc64-gnu": "1.9.0", + "@unrs/resolver-binding-linux-riscv64-gnu": "1.9.0", + "@unrs/resolver-binding-linux-riscv64-musl": "1.9.0", + "@unrs/resolver-binding-linux-s390x-gnu": "1.9.0", + "@unrs/resolver-binding-linux-x64-gnu": "1.9.0", + "@unrs/resolver-binding-linux-x64-musl": "1.9.0", + "@unrs/resolver-binding-wasm32-wasi": "1.9.0", + "@unrs/resolver-binding-win32-arm64-msvc": "1.9.0", + "@unrs/resolver-binding-win32-ia32-msvc": "1.9.0", + "@unrs/resolver-binding-win32-x64-msvc": "1.9.0" + } + }, + "node_modules/update-browserslist-db": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.3.tgz", + "integrity": "sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" } + ], + "license": "MIT", + "dependencies": { + "escalade": "^3.2.0", + "picocolors": "^1.1.1" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" } }, - "to-regex": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", - "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", "dev": true, - "requires": { - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "regex-not": "^1.0.2", - "safe-regex": "^1.1.0" + "license": "BSD-2-Clause", + "dependencies": { + "punycode": "^2.1.0" } }, - "to-regex-range": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", - "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", + "node_modules/url-loader": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/url-loader/-/url-loader-4.1.1.tgz", + "integrity": "sha512-3BTV812+AVHHOJQO8O5MkWgZ5aosP7GnROJwvzLS9hWDj00lZ6Z0wNak423Lp9PBZN05N+Jk/N5Si8jRAlGyWA==", "dev": true, - "requires": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" + "license": "MIT", + "dependencies": { + "loader-utils": "^2.0.0", + "mime-types": "^2.1.27", + "schema-utils": "^3.0.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "file-loader": "*", + "webpack": "^4.0.0 || ^5.0.0" + }, + "peerDependenciesMeta": { + "file-loader": { + "optional": true + } } }, - "tough-cookie": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-3.0.1.tgz", - "integrity": "sha512-yQyJ0u4pZsv9D4clxO69OEjLWYw+jbgspjTue4lTQZLfV0c5l1VmK2y1JK8E9ahdpltPOaAThPcp5nKPUgSnsg==", + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "license": "MIT" + }, + "node_modules/v8-to-istanbul": { + "version": "9.3.0", + "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.3.0.tgz", + "integrity": "sha512-kiGUalWN+rgBJ/1OHZsBtU4rXZOfj/7rKQxULKlIzwzQSvMJUUNgPwJEEh7gU6xEVxC0ahoOBvN2YI8GH6FNgA==", "dev": true, - "requires": { - "ip-regex": "^2.1.0", - "psl": "^1.1.28", - "punycode": "^2.1.1" + "license": "ISC", + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.12", + "@types/istanbul-lib-coverage": "^2.0.1", + "convert-source-map": "^2.0.0" + }, + "engines": { + "node": ">=10.12.0" } }, - "tr46": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-1.0.1.tgz", - "integrity": "sha1-qLE/1r/SSJUZZ0zN5VujaTtwbQk=", + "node_modules/validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", "dev": true, - "requires": { - "punycode": "^2.1.0" + "license": "Apache-2.0", + "dependencies": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" } }, - "trim-newlines": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-2.0.0.tgz", - "integrity": "sha1-tAPQuRvlDDMd/EuC7s6yLD3hbSA=", - "dev": true - }, - "trim-off-newlines": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/trim-off-newlines/-/trim-off-newlines-1.0.1.tgz", - "integrity": "sha1-n5up2e+odkw4dpi8v+sshI8RrbM=", - "dev": true - }, - "tslib": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.11.1.tgz", - "integrity": "sha512-aZW88SY8kQbU7gpV19lN24LtXh/yD4ZZg6qieAJDDg+YBsJcSmLGK9QpnUjAKVG/xefmvJGd1WUmfpT/g6AJGA==", - "dev": true + "node_modules/vscode-languageserver-textdocument": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/vscode-languageserver-textdocument/-/vscode-languageserver-textdocument-1.0.12.tgz", + "integrity": "sha512-cxWNPesCnQCcMPeenjKKsOCKQZ/L6Tv19DTRIGuLWe32lyzWhihGVJ/rcckZXJxfdKCFvRLS3fpBIsV/ZGX4zA==", + "dev": true, + "license": "MIT" }, - "tty-browserify": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz", - "integrity": "sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY=", - "dev": true + "node_modules/vscode-uri": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/vscode-uri/-/vscode-uri-3.1.0.tgz", + "integrity": "sha512-/BpdSx+yCQGnCvecbyXdxHDkuk55/G3xwnC0GqY4gmQ3j+A+g8kzzgB4Nk/SINjqn6+waqw3EgbVF2QKExkRxQ==", + "dev": true, + "license": "MIT" }, - "tunnel-agent": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "node_modules/w3c-xmlserializer": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-5.0.0.tgz", + "integrity": "sha512-o8qghlI8NZHU1lLPrpi2+Uq7abh4GGPpYANlalzWxyWteJOCsr/P+oPBA49TOLu5FTZO4d3F9MnWJfiMo4BkmA==", "dev": true, - "requires": { - "safe-buffer": "^5.0.1" + "license": "MIT", + "dependencies": { + "xml-name-validator": "^5.0.0" + }, + "engines": { + "node": ">=18" } }, - "tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", - "dev": true - }, - "type-check": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", - "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", + "node_modules/walker": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", + "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==", "dev": true, - "requires": { - "prelude-ls": "~1.1.2" + "license": "Apache-2.0", + "dependencies": { + "makeerror": "1.0.12" } }, - "type-detect": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", - "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", - "dev": true + "node_modules/watchpack": { + "version": "2.4.4", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.4.tgz", + "integrity": "sha512-c5EGNOiyxxV5qmTtAB7rbiXxi1ooX1pQKMLX/MIabJjRA0SJBQOjKF+KSVfHkr9U1cADPon0mRiVe/riyaiDUA==", + "dev": true, + "license": "MIT", + "dependencies": { + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.1.2" + }, + "engines": { + "node": ">=10.13.0" + } }, - "type-fest": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", - "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", - "dev": true + "node_modules/webidl-conversions": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", + "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=12" + } }, - "typedarray": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", - "dev": true + "node_modules/webpack": { + "version": "5.99.9", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.99.9.tgz", + "integrity": "sha512-brOPwM3JnmOa+7kd3NsmOUOwbDAj8FT9xDsG3IW0MgbN9yZV7Oi/s/+MNQ/EcSMqw7qfoRyXPoeEWT8zLVdVGg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/eslint-scope": "^3.7.7", + "@types/estree": "^1.0.6", + "@types/json-schema": "^7.0.15", + "@webassemblyjs/ast": "^1.14.1", + "@webassemblyjs/wasm-edit": "^1.14.1", + "@webassemblyjs/wasm-parser": "^1.14.1", + "acorn": "^8.14.0", + "browserslist": "^4.24.0", + "chrome-trace-event": "^1.0.2", + "enhanced-resolve": "^5.17.1", + "es-module-lexer": "^1.2.1", + "eslint-scope": "5.1.1", + "events": "^3.2.0", + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.2.11", + "json-parse-even-better-errors": "^2.3.1", + "loader-runner": "^4.2.0", + "mime-types": "^2.1.27", + "neo-async": "^2.6.2", + "schema-utils": "^4.3.2", + "tapable": "^2.1.1", + "terser-webpack-plugin": "^5.3.11", + "watchpack": "^2.4.1", + "webpack-sources": "^3.2.3" + }, + "bin": { + "webpack": "bin/webpack.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependenciesMeta": { + "webpack-cli": { + "optional": true + } + } }, - "typedarray-to-buffer": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", - "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", + "node_modules/webpack-sources": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.3.2.tgz", + "integrity": "sha512-ykKKus8lqlgXX/1WjudpIEjqsafjOTcOJqxnAbMLAu/KCsDCJ6GBtvscewvTkrn24HsnvFwrSCbenFrhtcCsAA==", "dev": true, - "requires": { - "is-typedarray": "^1.0.0" + "license": "MIT", + "engines": { + "node": ">=10.13.0" } }, - "uglify-js": { - "version": "3.8.1", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.8.1.tgz", - "integrity": "sha512-W7KxyzeaQmZvUFbGj4+YFshhVrMBGSg2IbcYAjGWGvx8DHvJMclbTDMpffdxFUGPBHjIytk7KJUR/KUXstUGDw==", + "node_modules/webpack/node_modules/acorn": { + "version": "8.15.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.15.0.tgz", + "integrity": "sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==", "dev": true, - "optional": true, - "requires": { - "commander": "~2.20.3", - "source-map": "~0.6.1" + "license": "MIT", + "bin": { + "acorn": "bin/acorn" }, - "dependencies": { - "commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true, - "optional": true - } + "engines": { + "node": ">=0.4.0" } }, - "unicode-canonical-property-names-ecmascript": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz", - "integrity": "sha512-jDrNnXWHd4oHiTZnx/ZG7gtUTVp+gCcTTKr8L0HjlwphROEW3+Him+IpvC+xcJEFegapiMZyZe02CyuOnRmbnQ==", - "dev": true - }, - "unicode-match-property-ecmascript": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-1.0.4.tgz", - "integrity": "sha512-L4Qoh15vTfntsn4P1zqnHulG0LdXgjSO035fEpdtp6YxXhMT51Q6vgM5lYdG/5X3MjS+k/Y9Xw4SFCY9IkR0rg==", + "node_modules/webpack/node_modules/ajv": { + "version": "8.17.1", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.17.1.tgz", + "integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==", "dev": true, - "requires": { - "unicode-canonical-property-names-ecmascript": "^1.0.4", - "unicode-property-aliases-ecmascript": "^1.0.4" + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.3", + "fast-uri": "^3.0.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" } }, - "unicode-match-property-value-ecmascript": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.2.0.tgz", - "integrity": "sha512-wjuQHGQVofmSJv1uVISKLE5zO2rNGzM/KCYZch/QQvez7C1hUhBIuZ701fYXExuufJFMPhv2SyL8CyoIfMLbIQ==", - "dev": true - }, - "unicode-property-aliases-ecmascript": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.1.0.tgz", - "integrity": "sha512-PqSoPh/pWetQ2phoj5RLiaqIk4kCNwoV3CI+LfGmWLKI3rE3kl1h59XpX2BjgDrmbxD9ARtQobPGU1SguCYuQg==", - "dev": true - }, - "union-value": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz", - "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==", + "node_modules/webpack/node_modules/ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", "dev": true, - "requires": { - "arr-union": "^3.1.0", - "get-value": "^2.0.6", - "is-extendable": "^0.1.1", - "set-value": "^2.0.1" + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.3" + }, + "peerDependencies": { + "ajv": "^8.8.2" } }, - "uniq": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz", - "integrity": "sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8=" - }, - "unique-filename": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", - "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", + "node_modules/webpack/node_modules/eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", "dev": true, - "requires": { - "unique-slug": "^2.0.0" + "license": "BSD-2-Clause", + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + }, + "engines": { + "node": ">=8.0.0" } }, - "unique-slug": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz", - "integrity": "sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==", + "node_modules/webpack/node_modules/estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", "dev": true, - "requires": { - "imurmurhash": "^0.1.4" + "license": "BSD-2-Clause", + "engines": { + "node": ">=4.0" } }, - "universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "dev": true - }, - "unset-value": { + "node_modules/webpack/node_modules/json-schema-traverse": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", - "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", - "dev": true, - "requires": { - "has-value": "^0.3.1", - "isobject": "^3.0.0" - }, - "dependencies": { - "has-value": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", - "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", - "dev": true, - "requires": { - "get-value": "^2.0.3", - "has-values": "^0.1.4", - "isobject": "^2.0.0" - }, - "dependencies": { - "isobject": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", - "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", - "dev": true, - "requires": { - "isarray": "1.0.0" - } - } - } - }, - "has-values": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", - "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=", - "dev": true - } - } - }, - "upath": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/upath/-/upath-1.2.0.tgz", - "integrity": "sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==", - "dev": true + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "dev": true, + "license": "MIT" }, - "uri-js": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", - "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", - "requires": { - "punycode": "^2.1.0" + "node_modules/webpack/node_modules/schema-utils": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.3.2.tgz", + "integrity": "sha512-Gn/JaSk/Mt9gYubxTtSn/QCV4em9mpAPiR1rqy/Ocu19u/G9J5WWdNoUT4SiV6mFC3y6cxyFcFwdzPM3FgxGAQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.9.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.1.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" } }, - "urix": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", - "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=", - "dev": true - }, - "url": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", - "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=", + "node_modules/whatwg-encoding": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-3.1.1.tgz", + "integrity": "sha512-6qN4hJdMwfYBtE3YBTTHhoeuUrDBPZmbQaxWAqSALV/MeEnR5z1xd8UKud2RAkFoPkmB+hli1TZSnyi84xz1vQ==", "dev": true, - "requires": { - "punycode": "1.3.2", - "querystring": "0.2.0" - }, + "license": "MIT", "dependencies": { - "punycode": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", - "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=", - "dev": true - } + "iconv-lite": "0.6.3" + }, + "engines": { + "node": ">=18" } }, - "url-loader": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/url-loader/-/url-loader-4.1.0.tgz", - "integrity": "sha512-IzgAAIC8wRrg6NYkFIJY09vtktQcsvU8V6HhtQj9PTefbYImzLB1hufqo4m+RyM5N3mLx5BqJKccgxJS+W3kqw==", + "node_modules/whatwg-mimetype": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-4.0.0.tgz", + "integrity": "sha512-QaKxh0eNIi2mE9p2vEdzfagOKHCcj1pJ56EEHGQOVxp8r9/iszLUUV7v89x9O1p/T+NlTM5W7jW6+cz4Fq1YVg==", "dev": true, - "requires": { - "loader-utils": "^2.0.0", - "mime-types": "^2.1.26", - "schema-utils": "^2.6.5" - }, - "dependencies": { - "json5": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.1.3.tgz", - "integrity": "sha512-KXPvOm8K9IJKFM0bmdn8QXh7udDh1g/giieX0NLCaMnb4hEiVFqnop2ImTXCc5e0/oHz3LTqmHGtExn5hfMkOA==", - "dev": true, - "requires": { - "minimist": "^1.2.5" - } - }, - "loader-utils": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.0.tgz", - "integrity": "sha512-rP4F0h2RaWSvPEkD7BLDFQnvSf+nK+wr3ESUjNTyAGobqrijmW92zc+SO6d4p4B1wh7+B/Jg1mkQe5NYUEHtHQ==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^2.1.2" - } - } + "license": "MIT", + "engines": { + "node": ">=18" } }, - "use": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", - "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==", - "dev": true + "node_modules/whatwg-url": { + "version": "14.2.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-14.2.0.tgz", + "integrity": "sha512-De72GdQZzNTUBBChsXueQUnPKDkg/5A5zp7pFDuQAj5UFoENpiACU0wlCvzpAGnTkj++ihpKwKyYewn/XNUbKw==", + "dev": true, + "license": "MIT", + "dependencies": { + "tr46": "^5.1.0", + "webidl-conversions": "^7.0.0" + }, + "engines": { + "node": ">=18" + } }, - "user-meta": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/user-meta/-/user-meta-1.0.0.tgz", - "integrity": "sha512-Q/opMgFhVbBkdlTs44UKzV7L5Uj2zrJ4MVPXTTzJmrU1bHb2cX6wJzBIqEf1gROTzZIH8u39WmHsa5EvfnMPrw==", + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", "dev": true, - "requires": { - "rc": "^1.2.1" + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" } }, - "util": { - "version": "0.11.1", - "resolved": "https://registry.npmjs.org/util/-/util-0.11.1.tgz", - "integrity": "sha512-HShAsny+zS2TZfaXxD9tYj4HQGlBezXZMZuM/S5PKLLoZkShZiGk9o5CzukI1LVHZvjdvZ2Sj1aW/Ndn2NB/HQ==", + "node_modules/which-boxed-primitive": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.1.1.tgz", + "integrity": "sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==", "dev": true, - "requires": { - "inherits": "2.0.3" + "license": "MIT", + "dependencies": { + "is-bigint": "^1.1.0", + "is-boolean-object": "^1.2.1", + "is-number-object": "^1.1.1", + "is-string": "^1.1.1", + "is-symbol": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-builtin-type": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/which-builtin-type/-/which-builtin-type-1.2.1.tgz", + "integrity": "sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==", + "dev": true, + "license": "MIT", "dependencies": { - "inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", - "dev": true - } + "call-bound": "^1.0.2", + "function.prototype.name": "^1.1.6", + "has-tostringtag": "^1.0.2", + "is-async-function": "^2.0.0", + "is-date-object": "^1.1.0", + "is-finalizationregistry": "^1.1.0", + "is-generator-function": "^1.0.10", + "is-regex": "^1.2.1", + "is-weakref": "^1.0.2", + "isarray": "^2.0.5", + "which-boxed-primitive": "^1.1.0", + "which-collection": "^1.0.2", + "which-typed-array": "^1.1.16" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "util-deprecate": { + "node_modules/which-collection": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", - "dev": true - }, - "uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", - "dev": true - }, - "v8-compile-cache": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.1.0.tgz", - "integrity": "sha512-usZBT3PW+LOjM25wbqIlZwPeJV+3OSz3M1k1Ws8snlW39dZyYL9lOGC5FgPVHfk0jKmjiDV8Z0mIbVQPiwFs7g==", - "dev": true - }, - "v8-to-istanbul": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-4.1.3.tgz", - "integrity": "sha512-sAjOC+Kki6aJVbUOXJbcR0MnbfjvBzwKZazEJymA2IX49uoOdEdk+4fBq5cXgYgiyKtAyrrJNtBZdOeDIF+Fng==", + "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.2.tgz", + "integrity": "sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==", "dev": true, - "requires": { - "@types/istanbul-lib-coverage": "^2.0.1", - "convert-source-map": "^1.6.0", - "source-map": "^0.7.3" - }, + "license": "MIT", "dependencies": { - "source-map": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", - "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", - "dev": true - } + "is-map": "^2.0.3", + "is-set": "^2.0.3", + "is-weakmap": "^2.0.2", + "is-weakset": "^2.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "node_modules/which-typed-array": { + "version": "1.1.19", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.19.tgz", + "integrity": "sha512-rEvr90Bck4WZt9HHFC4DJMsjvu7x+r6bImz0/BrbWb7A2djJ8hnZMrWnHo9F8ssv0OMErasDhftrfROTyqSDrw==", "dev": true, - "requires": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" + "license": "MIT", + "dependencies": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", + "for-each": "^0.3.5", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "verror": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", + "node_modules/winston": { + "version": "3.13.0", + "resolved": "https://registry.npmjs.org/winston/-/winston-3.13.0.tgz", + "integrity": "sha512-rwidmA1w3SE4j0E5MuIufFhyJPBDG7Nu71RkZor1p2+qHvJSZ9GYDA81AyleQcZbh/+V6HjeBdfnTZJm9rSeQQ==", "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" + "license": "MIT", + "dependencies": { + "@colors/colors": "^1.6.0", + "@dabh/diagnostics": "^2.0.2", + "async": "^3.2.3", + "is-stream": "^2.0.0", + "logform": "^2.4.0", + "one-time": "^1.0.0", + "readable-stream": "^3.4.0", + "safe-stable-stringify": "^2.3.1", + "stack-trace": "0.0.x", + "triple-beam": "^1.3.0", + "winston-transport": "^4.7.0" + }, + "engines": { + "node": ">= 12.0.0" } }, - "vm-browserify": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz", - "integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==", - "dev": true - }, - "w3c-hr-time": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz", - "integrity": "sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==", + "node_modules/winston-transport": { + "version": "4.9.0", + "resolved": "https://registry.npmjs.org/winston-transport/-/winston-transport-4.9.0.tgz", + "integrity": "sha512-8drMJ4rkgaPo1Me4zD/3WLfI/zPdA9o2IipKODunnGDcuqbHwjsbB79ylv04LCGGzU0xQ6vTznOMpQGaLhhm6A==", "dev": true, - "requires": { - "browser-process-hrtime": "^1.0.0" + "license": "MIT", + "dependencies": { + "logform": "^2.7.0", + "readable-stream": "^3.6.2", + "triple-beam": "^1.3.0" + }, + "engines": { + "node": ">= 12.0.0" } }, - "w3c-xmlserializer": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-1.1.2.tgz", - "integrity": "sha512-p10l/ayESzrBMYWRID6xbuCKh2Fp77+sA0doRuGn4tTIMrrZVeqfpKjXHY+oDh3K4nLdPgNwMTVP6Vp4pvqbNg==", + "node_modules/word-wrap": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", + "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", "dev": true, - "requires": { - "domexception": "^1.0.1", - "webidl-conversions": "^4.0.2", - "xml-name-validator": "^3.0.0" + "license": "MIT", + "engines": { + "node": ">=0.10.0" } }, - "walker": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.7.tgz", - "integrity": "sha1-L3+bj9ENZ3JisYqITijRlhjgKPs=", + "node_modules/wordwrap": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", + "integrity": "sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==", "dev": true, - "requires": { - "makeerror": "1.0.x" - } + "license": "MIT" }, - "watchpack": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.6.1.tgz", - "integrity": "sha512-+IF9hfUFOrYOOaKyfaI7h7dquUIOgyEMoQMLA7OP5FxegKA2+XdXThAZ9TU2kucfhDH7rfMHs1oPYziVGWRnZA==", + "node_modules/wrap-ansi": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-9.0.0.tgz", + "integrity": "sha512-G8ura3S+3Z2G+mkgNRq8dqaFZAuxfsxpBB8OCTGRTCtp+l/v9nbFNmCUP1BZMts3G1142MsZfn6eeUKrr4PD1Q==", "dev": true, - "requires": { - "chokidar": "^2.1.8", - "graceful-fs": "^4.1.2", - "neo-async": "^2.5.0" + "license": "MIT", + "dependencies": { + "ansi-styles": "^6.2.1", + "string-width": "^7.0.0", + "strip-ansi": "^7.1.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } }, - "webidl-conversions": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz", - "integrity": "sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==", - "dev": true - }, - "webpack": { - "version": "4.43.0", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.43.0.tgz", - "integrity": "sha512-GW1LjnPipFW2Y78OOab8NJlCflB7EFskMih2AHdvjbpKMeDJqEgSx24cXXXiPS65+WSwVyxtDsJH6jGX2czy+g==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.9.0", - "@webassemblyjs/helper-module-context": "1.9.0", - "@webassemblyjs/wasm-edit": "1.9.0", - "@webassemblyjs/wasm-parser": "1.9.0", - "acorn": "^6.4.1", - "ajv": "^6.10.2", - "ajv-keywords": "^3.4.1", - "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^4.1.0", - "eslint-scope": "^4.0.3", - "json-parse-better-errors": "^1.0.2", - "loader-runner": "^2.4.0", - "loader-utils": "^1.2.3", - "memory-fs": "^0.4.1", - "micromatch": "^3.1.10", - "mkdirp": "^0.5.3", - "neo-async": "^2.6.1", - "node-libs-browser": "^2.2.1", - "schema-utils": "^1.0.0", - "tapable": "^1.1.3", - "terser-webpack-plugin": "^1.4.3", - "watchpack": "^1.6.1", - "webpack-sources": "^1.4.1" - }, - "dependencies": { - "acorn": { - "version": "6.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.1.tgz", - "integrity": "sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA==", - "dev": true - }, - "eslint-scope": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.3.tgz", - "integrity": "sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg==", - "dev": true, - "requires": { - "esrecurse": "^4.1.0", - "estraverse": "^4.1.1" - } - }, - "schema-utils": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", - "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", - "dev": true, - "requires": { - "ajv": "^6.1.0", - "ajv-errors": "^1.0.0", - "ajv-keywords": "^3.1.0" - } - } + "node_modules/wrap-ansi-cjs": { + "name": "wrap-ansi", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } }, - "webpack-merge": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-4.2.2.tgz", - "integrity": "sha512-TUE1UGoTX2Cd42j3krGYqObZbOD+xF7u28WB7tfUordytSjbWTIjK/8V0amkBfTYN4/pB/GIDlJZZ657BGG19g==", + "node_modules/wrap-ansi-cjs/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, - "requires": { - "lodash": "^4.17.15" + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "webpack-sources": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.4.3.tgz", - "integrity": "sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ==", + "node_modules/wrap-ansi-cjs/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, - "requires": { - "source-list-map": "^2.0.0", - "source-map": "~0.6.1" + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" } }, - "whatwg-encoding": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz", - "integrity": "sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==", + "node_modules/wrap-ansi-cjs/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true, - "requires": { - "iconv-lite": "0.4.24" - } + "license": "MIT" }, - "whatwg-mimetype": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz", - "integrity": "sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==", - "dev": true + "node_modules/wrap-ansi-cjs/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true, + "license": "MIT" }, - "whatwg-url": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.1.0.tgz", - "integrity": "sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==", + "node_modules/wrap-ansi-cjs/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "dev": true, - "requires": { - "lodash.sortby": "^4.7.0", - "tr46": "^1.0.1", - "webidl-conversions": "^4.0.2" + "license": "MIT", + "engines": { + "node": ">=8" } }, - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "node_modules/wrap-ansi-cjs/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "dev": true, - "requires": { - "isexe": "^2.0.0" + "license": "MIT", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" } }, - "which-module": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", - "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", - "dev": true + "node_modules/wrap-ansi/node_modules/ansi-regex": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.1.0.tgz", + "integrity": "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } }, - "which-pm-runs": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/which-pm-runs/-/which-pm-runs-1.0.0.tgz", - "integrity": "sha1-Zws6+8VS4LVd9rd4DKdGFfI60cs=", - "dev": true + "node_modules/wrap-ansi/node_modules/ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } }, - "winston": { - "version": "2.4.4", - "resolved": "https://registry.npmjs.org/winston/-/winston-2.4.4.tgz", - "integrity": "sha512-NBo2Pepn4hK4V01UfcWcDlmiVTs7VTB1h7bgnB0rgP146bYhMxX0ypCz3lBOfNxCO4Zuek7yeT+y/zM1OfMw4Q==", - "dev": true, - "requires": { - "async": "~1.0.0", - "colors": "1.0.x", - "cycle": "1.0.x", - "eyes": "0.1.x", - "isstream": "0.1.x", - "stack-trace": "0.0.x" - }, - "dependencies": { - "colors": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/colors/-/colors-1.0.3.tgz", - "integrity": "sha1-BDP0TYCWgP3rYO0mDxsMJi6CpAs=", - "dev": true - } + "node_modules/wrap-ansi/node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" } }, - "word-wrap": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", - "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", - "dev": true + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "dev": true, + "license": "ISC" }, - "wordwrap": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", - "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=", - "dev": true + "node_modules/write-file-atomic": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-5.0.1.tgz", + "integrity": "sha512-+QU2zd6OTD8XWIJCbffaiQeH9U73qIqafo1x6V1snCWYGJf6cVE0cDR4D8xRzcEnfI21IFrUPzPGtcPf8AC+Rw==", + "dev": true, + "license": "ISC", + "dependencies": { + "imurmurhash": "^0.1.4", + "signal-exit": "^4.0.1" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } }, - "worker-farm": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/worker-farm/-/worker-farm-1.7.0.tgz", - "integrity": "sha512-rvw3QTZc8lAxyVrqcSGVm5yP/IJ2UcB3U0graE3LCFoZ0Yn2x4EoVSqJKdB/T5M+FLcRPjz4TDacRf3OCfNUzw==", + "node_modules/write-file-atomic/node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", "dev": true, - "requires": { - "errno": "~0.1.7" + "license": "ISC", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "wrap-ansi": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", - "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "node_modules/ws": { + "version": "8.18.2", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.2.tgz", + "integrity": "sha512-DMricUmwGZUVr++AEAe2uiVM7UoO9MAVZMDu05UQOaUII0lp+zOzLLU4Xqh/JvTqklB1T4uELaaPBKyjE1r4fQ==", "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" + "license": "MIT", + "engines": { + "node": ">=10.0.0" }, - "dependencies": { - "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "requires": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true }, - "string-width": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", - "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" - } + "utf-8-validate": { + "optional": true } } }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", - "dev": true - }, - "write": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/write/-/write-1.0.3.tgz", - "integrity": "sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig==", + "node_modules/xdg-basedir": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-5.1.0.tgz", + "integrity": "sha512-GCPAHLvrIH13+c0SuacwvRYj2SxJXQ4kaVTT5xgL3kPrz56XxkF21IGhjSE1+W0aw7gpBWRGXLCPnPby6lSpmQ==", "dev": true, - "requires": { - "mkdirp": "^0.5.1" + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "write-file-atomic": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", - "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", + "node_modules/xml-name-validator": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-5.0.0.tgz", + "integrity": "sha512-EvGK8EJ3DhaHfbRlETOWAS5pO9MZITeauHKJyb8wyajUfQUenkIg2MvLDTZ4T/TgIcm3HU0TFBgWWboAZ30UHg==", "dev": true, - "requires": { - "imurmurhash": "^0.1.4", - "is-typedarray": "^1.0.0", - "signal-exit": "^3.0.2", - "typedarray-to-buffer": "^3.1.5" + "license": "Apache-2.0", + "engines": { + "node": ">=18" } }, - "ws": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.2.3.tgz", - "integrity": "sha512-HTDl9G9hbkNDk98naoR/cHDws7+EyYMOdL1BmjsZXRUjf7d+MficC4B7HLUPlSiho0vg+CWKrGIt/VJBd1xunQ==", - "dev": true - }, - "xml-name-validator": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz", - "integrity": "sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==", - "dev": true - }, - "xmlchars": { + "node_modules/xmlchars": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz", "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==", - "dev": true + "dev": true, + "license": "MIT" }, - "xtend": { + "node_modules/xtend": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.4" + } }, - "y18n": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz", - "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==", - "dev": true + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=10" + } }, - "yallist": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", - "dev": true + "node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true, + "license": "ISC" }, - "yaml": { - "version": "1.8.3", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.8.3.tgz", - "integrity": "sha512-X/v7VDnK+sxbQ2Imq4Jt2PRUsRsP7UcpSl3Llg6+NRRqWLIvxkMFYtH1FmvwNGYRKKPa+EPA4qDBlI9WVG1UKw==", + "node_modules/yaml": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.8.0.tgz", + "integrity": "sha512-4lLa/EcQCB0cJkyts+FpIRx5G/llPxfP6VQU5KByHEhLxY3IJCH0f0Hy1MHI8sClTvsIb8qwRJ6R/ZdlDJ/leQ==", "dev": true, - "requires": { - "@babel/runtime": "^7.8.7" + "license": "ISC", + "bin": { + "yaml": "bin.mjs" + }, + "engines": { + "node": ">= 14.6" } }, - "yargs": { - "version": "15.3.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.3.1.tgz", - "integrity": "sha512-92O1HWEjw27sBfgmXiixJWT5hRBp2eobqXicLtPBIDBhYB+1HpwZlXmbW2luivBJHBzki+7VyCLRtAkScbTBQA==", + "node_modules/yargs": { + "version": "17.7.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", + "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", "dev": true, - "requires": { - "cliui": "^6.0.0", - "decamelize": "^1.2.0", - "find-up": "^4.1.0", - "get-caller-file": "^2.0.1", + "license": "MIT", + "dependencies": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^4.2.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^18.1.1" - }, - "dependencies": { - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "requires": { - "p-locate": "^4.1.0" - } - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "requires": { - "p-limit": "^2.2.0" - } - }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - }, - "string-width": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", - "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" - } - }, - "yargs-parser": { - "version": "18.1.3", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", - "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } - } + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + }, + "engines": { + "node": ">=12" } }, - "yargs-parser": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-10.1.0.tgz", - "integrity": "sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ==", + "node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", "dev": true, - "requires": { - "camelcase": "^4.1.0" - }, + "license": "ISC", + "engines": { + "node": ">=12" + } + }, + "node_modules/yargs/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true, + "license": "MIT" + }, + "node_modules/yargs/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/yargs/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "license": "MIT", "dependencies": { - "camelcase": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", - "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", - "dev": true - } + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } } } diff --git a/package.json b/package.json index 5946c54c..506a4d1e 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "css-loader", - "version": "3.5.3", + "version": "7.1.2", "description": "css loader module for webpack", "license": "MIT", "repository": "webpack-contrib/css-loader", @@ -13,7 +13,7 @@ }, "main": "dist/cjs.js", "engines": { - "node": ">= 8.9.0" + "node": ">= 18.12.0" }, "scripts": { "start": "npm run build -- -w", @@ -23,71 +23,84 @@ "build": "cross-env NODE_ENV=production babel src -d dist --copy-files", "postbuild": "npm run validate:runtime", "commitlint": "commitlint --from=master", - "security": "npm audit", - "lint:prettier": "prettier --list-different .", + "security": "npm audit --production", + "lint:prettier": "prettier --cache --list-different .", "lint:js": "eslint --cache .", + "lint:spelling": "cspell --cache --no-must-find-files --quiet \"**/*.*\"", "lint": "npm-run-all -l -p \"lint:**\"", + "fix:js": "npm run lint:js -- --fix", + "fix:prettier": "npm run lint:prettier -- --write", + "fix": "npm-run-all -l fix:js fix:prettier", "test:only": "cross-env NODE_ENV=test jest", "test:watch": "npm run test:only -- --watch", "test:coverage": "npm run test:only -- --collectCoverageFrom=\"src/**/*.js\" --coverage", "pretest": "npm run lint", "test": "npm run test:coverage", - "prepare": "npm run build", - "release": "standard-version", - "defaults": "webpack-defaults" + "prepare": "husky && npm run build", + "release": "standard-version" }, "files": [ "dist" ], "peerDependencies": { - "webpack": "^4.0.0 || ^5.0.0" + "@rspack/core": "0.x || 1.x", + "webpack": "^5.27.0" + }, + "peerDependenciesMeta": { + "@rspack/core": { + "optional": true + }, + "webpack": { + "optional": true + } }, "dependencies": { - "camelcase": "^5.3.1", - "cssesc": "^3.0.0", - "icss-utils": "^4.1.1", - "loader-utils": "^1.2.3", - "normalize-path": "^3.0.0", - "postcss": "^7.0.27", - "postcss-modules-extract-imports": "^2.0.0", - "postcss-modules-local-by-default": "^3.0.2", - "postcss-modules-scope": "^2.2.0", - "postcss-modules-values": "^3.0.0", - "postcss-value-parser": "^4.0.3", - "schema-utils": "^2.6.6", - "semver": "^6.3.0" + "icss-utils": "^5.1.0", + "postcss": "^8.4.40", + "postcss-modules-extract-imports": "^3.1.0", + "postcss-modules-local-by-default": "^4.0.5", + "postcss-modules-scope": "^3.2.0", + "postcss-modules-values": "^4.0.0", + "postcss-value-parser": "^4.2.0", + "semver": "^7.6.3" }, "devDependencies": { - "@babel/cli": "^7.8.4", - "@babel/core": "^7.9.0", - "@babel/preset-env": "^7.9.5", - "@commitlint/cli": "^8.3.5", - "@commitlint/config-conventional": "^8.3.4", - "@webpack-contrib/defaults": "^6.3.0", + "@babel/cli": "^7.24.8", + "@babel/core": "^7.25.2", + "@babel/preset-env": "^7.25.3", + "@commitlint/cli": "^19.3.0", + "@commitlint/config-conventional": "^19.2.2", "@webpack-contrib/eslint-config-webpack": "^3.0.0", - "babel-jest": "^25.4.0", - "cross-env": "^7.0.2", - "del": "^5.1.0", - "del-cli": "^3.0.0", - "es-check": "^5.1.0", - "eslint": "^6.8.0", - "eslint-config-prettier": "^6.11.0", - "eslint-plugin-import": "^2.20.2", - "file-loader": "^6.0.0", - "husky": "^4.2.5", - "jest": "^25.4.0", - "lint-staged": "^10.1.7", - "memfs": "^3.1.2", + "babel-jest": "^30.0.0", + "cross-env": "^7.0.3", + "cspell": "^8.13.1", + "del-cli": "^5.1.0", + "es-check": "^7.2.1", + "eslint": "^8.54.0", + "eslint-config-prettier": "^9.1.0", + "eslint-plugin-import": "^2.29.0", + "file-loader": "^6.2.0", + "husky": "^9.1.4", + "jest": "^30.0.0", + "jest-environment-jsdom": "^30.0.0", + "less": "^4.2.0", + "less-loader": "^12.2.0", + "lint-staged": "^15.2.8", + "memfs": "^4.11.1", + "mini-css-extract-plugin": "^2.9.0", "npm-run-all": "^4.1.5", - "postcss-loader": "^3.0.0", - "postcss-preset-env": "^6.7.0", - "prettier": "^2.0.5", - "sass": "^1.26.3", - "sass-loader": "^8.0.2", - "standard-version": "^7.1.0", + "postcss-loader": "^8.1.1", + "postcss-preset-env": "^9.6.0", + "prettier": "^3.3.3", + "sass": "^1.77.8", + "sass-loader": "^14.2.1", + "standard-version": "^9.5.0", "strip-ansi": "^6.0.0", - "url-loader": "^4.1.0", - "webpack": "^4.43.0" + "style-loader": "^3.3.4", + "stylus": "^0.63.0", + "stylus-loader": "^8.1.0", + "url-loader": "^4.1.1", + "webpack": "^5.93.0" }, "keywords": [ "webpack", diff --git a/src/CssSyntaxError.js b/src/CssSyntaxError.js deleted file mode 100644 index 95f80f87..00000000 --- a/src/CssSyntaxError.js +++ /dev/null @@ -1,28 +0,0 @@ -export default class CssSyntaxError extends Error { - constructor(error) { - super(error); - - const { reason, line, column } = error; - - this.name = 'CssSyntaxError'; - - // Based on https://github.com/postcss/postcss/blob/master/lib/css-syntax-error.es6#L132 - // We don't need `plugin` and `file` properties. - this.message = `${this.name}\n\n`; - - if (typeof line !== 'undefined') { - this.message += `(${line}:${column}) `; - } - - this.message += `${reason}`; - - const code = error.showSourceCode(); - - if (code) { - this.message += `\n\n${code}\n`; - } - - // We don't need stack https://github.com/postcss/postcss/blob/master/docs/guidelines/runner.md#31-dont-show-js-stack-for-csssyntaxerror - this.stack = false; - } -} diff --git a/src/Warning.js b/src/Warning.js deleted file mode 100644 index 93b86399..00000000 --- a/src/Warning.js +++ /dev/null @@ -1,20 +0,0 @@ -export default class Warning extends Error { - constructor(warning) { - super(warning); - const { text, line, column } = warning; - this.name = 'Warning'; - - // Based on https://github.com/postcss/postcss/blob/master/lib/warning.es6#L74 - // We don't need `plugin` properties. - this.message = `${this.name}\n\n`; - - if (typeof line !== 'undefined') { - this.message += `(${line}:${column}) `; - } - - this.message += `${text}`; - - // We don't need stack https://github.com/postcss/postcss/blob/master/docs/guidelines/runner.md#31-dont-show-js-stack-for-csssyntaxerror - this.stack = false; - } -} diff --git a/src/cjs.js b/src/cjs.js index 90fe4df1..feb36178 100644 --- a/src/cjs.js +++ b/src/cjs.js @@ -1,3 +1,5 @@ -const loader = require('./index'); +const loader = require("./index"); module.exports = loader.default; + +module.exports.defaultGetLocalIdent = require("./utils").defaultGetLocalIdent; diff --git a/src/index.js b/src/index.js index 11830615..3c89c371 100644 --- a/src/index.js +++ b/src/index.js @@ -2,17 +2,19 @@ MIT License http://www.opensource.org/licenses/mit-license.php Author Tobias Koppers @sokra */ -import { getOptions, isUrlRequest, stringifyRequest } from 'loader-utils'; -import postcss from 'postcss'; -import postcssPkg from 'postcss/package.json'; -import validateOptions from 'schema-utils'; -import { satisfies } from 'semver'; - -import CssSyntaxError from './CssSyntaxError'; -import Warning from './Warning'; -import schema from './options.json'; -import { icssParser, importParser, urlParser } from './plugins'; + +import postcss from "postcss"; +import postcssPkg from "postcss/package.json"; +import { satisfies } from "semver"; + +import schema from "./options.json"; +import { icssParser, importParser, urlParser } from "./plugins"; import { + normalizeOptions, + shouldUseModulesPlugins, + shouldUseImportPlugin, + shouldUseURLPlugin, + shouldUseIcssPlugin, getPreRequester, getExportCode, getFilter, @@ -20,49 +22,136 @@ import { getModuleCode, getModulesPlugins, normalizeSourceMap, - shouldUseModulesPlugins, -} from './utils'; + sort, + combineRequests, + stringifyRequest, + warningFactory, + syntaxErrorFactory, + supportTemplateLiteral, +} from "./utils"; -export default function loader(content, map, meta) { - const options = getOptions(this) || {}; +export default async function loader(content, map, meta) { + const rawOptions = this.getOptions(schema); + const callback = this.async(); - validateOptions(schema, options, { - name: 'CSS Loader', - baseDataPath: 'options', - }); + if ( + this._compiler && + this._compiler.options && + this._compiler.options.experiments && + this._compiler.options.experiments.css && + this._module && + (this._module.type === "css" || + this._module.type === "css/auto" || + this._module.type === "css/global" || + this._module.type === "css/module") + ) { + this.emitWarning( + new Error( + 'You can\'t use `experiments.css` (`experiments.futureDefaults` enable built-in CSS support by default) and `css-loader` together, please set `experiments.css` to `false` or set `{ type: "javascript/auto" }` for rules with `css-loader` in your webpack config (now css-loader does nothing).', + ), + ); + + callback(null, content, map, meta); + + return; + } + + let options; + + try { + options = normalizeOptions(rawOptions, this); + } catch (error) { + callback(error); + + return; + } - const callback = this.async(); - const sourceMap = options.sourceMap || false; const plugins = []; + const replacements = []; + const exports = []; - if (shouldUseModulesPlugins(options.modules, this.resourcePath)) { + if (shouldUseModulesPlugins(options)) { plugins.push(...getModulesPlugins(options, this)); } - const exportType = options.onlyLocals ? 'locals' : 'full'; - const preRequester = getPreRequester(this); - const urlHandler = (url) => - stringifyRequest(this, preRequester(options.importLoaders) + url); + const importPluginImports = []; + const importPluginApi = []; - plugins.push(icssParser({ urlHandler })); + let isSupportAbsoluteURL = false; - if (options.import !== false && exportType === 'full') { + // TODO enable by default in the next major release + if ( + this._compilation && + this._compilation.options && + this._compilation.options.experiments && + this._compilation.options.experiments.buildHttp + ) { + isSupportAbsoluteURL = true; + } + + if (shouldUseImportPlugin(options)) { plugins.push( importParser({ - filter: getFilter(options.import, this.resourcePath), - urlHandler, - }) + // TODO need to fix on webpack side, webpack tries to resolve `./runtime/api.js paths like `http://site.com/runtime/api.js`, maybe we should try first request like absolute, the second like a relative to context + isSupportAbsoluteURL: false, + isSupportDataURL: false, + isCSSStyleSheet: options.exportType === "css-style-sheet", + loaderContext: this, + imports: importPluginImports, + api: importPluginApi, + filter: options.import.filter, + urlHandler: (url) => + stringifyRequest( + this, + combineRequests(getPreRequester(this)(options.importLoaders), url), + ), + }), ); } - if (options.url !== false && exportType === 'full') { + const urlPluginImports = []; + + if (shouldUseURLPlugin(options)) { + const needToResolveURL = !options.esModule; + plugins.push( urlParser({ - filter: getFilter(options.url, this.resourcePath, (value) => - isUrlRequest(value) - ), + isSupportAbsoluteURL, + isSupportDataURL: options.esModule, + imports: urlPluginImports, + replacements, + context: this.context, + rootContext: this.rootContext, + filter: getFilter(options.url.filter, this.resourcePath), + resolver: needToResolveURL + ? this.getResolve({ mainFiles: [], extensions: [] }) + : // eslint-disable-next-line no-undefined + undefined, urlHandler: (url) => stringifyRequest(this, url), - }) + // Support data urls as input in new URL added in webpack@5.38.0 + }), + ); + } + + const icssPluginImports = []; + const icssPluginApi = []; + + const needToUseIcssPlugin = shouldUseIcssPlugin(options); + + if (needToUseIcssPlugin) { + plugins.push( + icssParser({ + loaderContext: this, + imports: icssPluginImports, + api: icssPluginApi, + replacements, + exports, + urlHandler: (url) => + stringifyRequest( + this, + combineRequests(getPreRequester(this)(options.importLoaders), url), + ), + }), ); } @@ -72,7 +161,7 @@ export default function loader(content, map, meta) { if ( ast && - ast.type === 'postcss' && + ast.type === "postcss" && satisfies(ast.version, `^${postcssPkg.version}`) ) { // eslint-disable-next-line no-param-reassign @@ -80,82 +169,106 @@ export default function loader(content, map, meta) { } } - postcss(plugins) - .process(content, { - from: this.resourcePath, - to: this.resourcePath, + const { resourcePath } = this; + + let result; + + try { + result = await postcss(plugins).process(content, { + hideNothingWarning: true, + from: resourcePath, + to: resourcePath, map: options.sourceMap ? { - // Some loaders (example `"postcss-loader": "1.x.x"`) always generates source map, we should remove it - prev: sourceMap && map ? normalizeSourceMap(map) : null, + prev: map ? normalizeSourceMap(map, resourcePath) : null, inline: false, annotation: false, } : false, - }) - .then((result) => { - for (const warning of result.warnings()) { - this.emitWarning(new Warning(warning)); - } - - const imports = []; - const apiImports = []; - const urlReplacements = []; - const icssReplacements = []; - const exports = []; - - for (const message of result.messages) { - // eslint-disable-next-line default-case - switch (message.type) { - case 'import': - imports.push(message.value); - break; - case 'api-import': - apiImports.push(message.value); - break; - case 'url-replacement': - urlReplacements.push(message.value); - break; - case 'icss-replacement': - icssReplacements.push(message.value); - break; - case 'export': - exports.push(message.value); - break; - } - } - - const { localsConvention } = options; - const esModule = - typeof options.esModule !== 'undefined' ? options.esModule : false; - - const importCode = getImportCode(this, exportType, imports, esModule); - const moduleCode = getModuleCode( - result, - exportType, - sourceMap, - apiImports, - urlReplacements, - icssReplacements, - esModule - ); - const exportCode = getExportCode( - exports, - exportType, - localsConvention, - icssReplacements, - esModule - ); - - return callback(null, `${importCode}${moduleCode}${exportCode}`); - }) - .catch((error) => { - if (error.file) { - this.addDependency(error.file); - } - - callback( - error.name === 'CssSyntaxError' ? new CssSyntaxError(error) : error - ); }); + } catch (error) { + if (error.file) { + this.addDependency(error.file); + } + + callback( + error.name === "CssSyntaxError" ? syntaxErrorFactory(error) : error, + ); + + return; + } + + for (const warning of result.warnings()) { + this.emitWarning(warningFactory(warning)); + } + + const imports = [] + .concat(icssPluginImports.sort(sort)) + .concat(importPluginImports.sort(sort)) + .concat(urlPluginImports.sort(sort)); + const api = [] + .concat(importPluginApi.sort(sort)) + .concat(icssPluginApi.sort(sort)); + + if (options.modules.exportOnlyLocals !== true) { + imports.unshift({ + type: "api_import", + importName: "___CSS_LOADER_API_IMPORT___", + url: stringifyRequest(this, require.resolve("./runtime/api")), + }); + + if (options.sourceMap) { + imports.unshift({ + importName: "___CSS_LOADER_API_SOURCEMAP_IMPORT___", + url: stringifyRequest(this, require.resolve("./runtime/sourceMaps")), + }); + } else { + imports.unshift({ + importName: "___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___", + url: stringifyRequest(this, require.resolve("./runtime/noSourceMaps")), + }); + } + } + + const isTemplateLiteralSupported = supportTemplateLiteral(this); + const importCode = getImportCode(imports, options); + + let moduleCode; + + try { + moduleCode = getModuleCode( + result, + api, + replacements, + options, + isTemplateLiteralSupported, + this, + ); + } catch (error) { + callback(error); + + return; + } + + const exportCode = getExportCode( + exports, + replacements, + needToUseIcssPlugin, + options, + isTemplateLiteralSupported, + ); + + const { getJSON } = options.modules; + + if (typeof getJSON === "function") { + try { + await getJSON({ resourcePath, imports, exports, replacements }); + } catch (error) { + callback(error); + + return; + } + } + + callback(null, `${importCode}${moduleCode}${exportCode}`); } diff --git a/src/options.json b/src/options.json index 6c8409b9..22773c7b 100644 --- a/src/options.json +++ b/src/options.json @@ -1,123 +1,217 @@ { + "title": "CSS Loader options", "additionalProperties": false, "properties": { "url": { - "description": "Enables/Disables 'url'/'image-set' functions handling (https://github.com/webpack-contrib/css-loader#url).", + "description": "Allows to enables/disables `url()`/`image-set()` functions handling.", + "link": "https://github.com/webpack-contrib/css-loader#url", "anyOf": [ { "type": "boolean" }, { - "instanceof": "Function" + "type": "object", + "properties": { + "filter": { + "instanceof": "Function" + } + }, + "additionalProperties": false } ] }, "import": { - "description": "Enables/Disables '@import' at-rules handling (https://github.com/webpack-contrib/css-loader#import).", + "description": "Allows to enables/disables `@import` at-rules handling.", + "link": "https://github.com/webpack-contrib/css-loader#import", "anyOf": [ { "type": "boolean" }, { - "instanceof": "Function" + "type": "object", + "properties": { + "filter": { + "instanceof": "Function" + } + }, + "additionalProperties": false } ] }, "modules": { - "description": "Enables/Disables CSS Modules and their configuration (https://github.com/webpack-contrib/css-loader#modules).", + "description": "Allows to enable/disable CSS Modules or ICSS and setup configuration.", + "link": "https://github.com/webpack-contrib/css-loader#modules", "anyOf": [ { "type": "boolean" }, { - "enum": ["local", "global", "pure"] + "enum": ["local", "global", "pure", "icss"] }, { "type": "object", "additionalProperties": false, "properties": { "auto": { + "description": "Allows auto enable CSS modules based on filename.", + "link": "https://github.com/webpack-contrib/css-loader#auto", "anyOf": [ { "instanceof": "RegExp" }, + { + "instanceof": "Function" + }, { "type": "boolean" } ] }, "mode": { + "description": "Setup `mode` option.", + "link": "https://github.com/webpack-contrib/css-loader#mode", "anyOf": [ { - "enum": ["local", "global", "pure"] + "enum": ["local", "global", "pure", "icss"] }, { "instanceof": "Function" } ] }, - "exportGlobals": { - "type": "boolean" - }, "localIdentName": { - "type": "string" + "description": "Allows to configure the generated local ident name.", + "link": "https://github.com/webpack-contrib/css-loader#localidentname", + "type": "string", + "minLength": 1 + }, + "localIdentContext": { + "description": "Allows to redefine basic loader context for local ident name.", + "link": "https://github.com/webpack-contrib/css-loader#localidentcontext", + "type": "string", + "minLength": 1 + }, + "localIdentHashSalt": { + "description": "Allows to add custom hash to generate more unique classes.", + "link": "https://github.com/webpack-contrib/css-loader#localidenthashsalt", + "type": "string", + "minLength": 1 + }, + "localIdentHashFunction": { + "description": "Allows to specify hash function to generate classes.", + "link": "https://github.com/webpack-contrib/css-loader#localidenthashfunction", + "type": "string", + "minLength": 1 + }, + "localIdentHashDigest": { + "description": "Allows to specify hash digest to generate classes.", + "link": "https://github.com/webpack-contrib/css-loader#localidenthashdigest", + "type": "string", + "minLength": 1 + }, + "localIdentHashDigestLength": { + "description": "Allows to specify hash digest length to generate classes.", + "link": "https://github.com/webpack-contrib/css-loader#localidenthashdigestlength", + "type": "number" + }, + "hashStrategy": { + "description": "Allows to specify should localName be used when computing the hash.", + "link": "https://github.com/webpack-contrib/css-loader#hashstrategy", + "enum": ["resource-path-and-local-name", "minimal-subset"] }, "localIdentRegExp": { + "description": "Allows to specify custom RegExp for local ident name.", + "link": "https://github.com/webpack-contrib/css-loader#localidentregexp", "anyOf": [ { - "type": "string" + "type": "string", + "minLength": 1 }, { "instanceof": "RegExp" } ] }, - "context": { - "type": "string" + "getLocalIdent": { + "description": "Allows to specify a function to generate the classname.", + "link": "https://github.com/webpack-contrib/css-loader#getlocalident", + "instanceof": "Function" }, - "hashPrefix": { - "type": "string" + "namedExport": { + "description": "Enables/disables ES modules named export for locals.", + "link": "https://github.com/webpack-contrib/css-loader#namedexport", + "type": "boolean" }, - "getLocalIdent": { + "exportGlobals": { + "description": "Allows to export names from global class or id, so you can use that as local name.", + "link": "https://github.com/webpack-contrib/css-loader#exportglobals", + "type": "boolean" + }, + "exportLocalsConvention": { + "description": "Style of exported classnames.", + "link": "https://github.com/webpack-contrib/css-loader#localsconvention", "anyOf": [ { - "type": "boolean" + "enum": [ + "asIs", + "as-is", + "camelCase", + "camel-case", + "camelCaseOnly", + "camel-case-only", + "dashes", + "dashesOnly", + "dashes-only" + ] }, { "instanceof": "Function" } ] + }, + "exportOnlyLocals": { + "description": "Export only locals.", + "link": "https://github.com/webpack-contrib/css-loader#exportonlylocals", + "type": "boolean" + }, + "getJSON": { + "description": "Allows outputting of CSS modules mapping through a callback.", + "link": "https://github.com/webpack-contrib/css-loader#getJSON", + "instanceof": "Function" } } } ] }, "sourceMap": { - "description": "Enables/Disables generation of source maps (https://github.com/webpack-contrib/css-loader#sourcemap).", + "description": "Allows to enable/disable source maps.", + "link": "https://github.com/webpack-contrib/css-loader#sourcemap", "type": "boolean" }, "importLoaders": { - "description": "Enables/Disables or setups number of loaders applied before CSS loader (https://github.com/webpack-contrib/css-loader#importloaders).", + "description": "Allows enables/disables or setups number of loaders applied before CSS loader for `@import`/CSS Modules and ICSS imports.", + "link": "https://github.com/webpack-contrib/css-loader#importloaders", "anyOf": [ { "type": "boolean" }, + { + "type": "string" + }, { "type": "integer" } ] }, - "localsConvention": { - "description": "Style of exported classnames (https://github.com/webpack-contrib/css-loader#localsconvention).", - "enum": ["asIs", "camelCase", "camelCaseOnly", "dashes", "dashesOnly"] - }, - "onlyLocals": { - "description": "Export only locals (https://github.com/webpack-contrib/css-loader#onlylocals).", - "type": "boolean" - }, "esModule": { - "description": "Use the ES modules syntax (https://github.com/webpack-contrib/css-loader#esmodule).", + "description": "Use the ES modules syntax.", + "link": "https://github.com/webpack-contrib/css-loader#esmodule", "type": "boolean" + }, + "exportType": { + "description": "Allows exporting styles as array with modules, string or constructable stylesheet (i.e. `CSSStyleSheet`).", + "link": "https://github.com/webpack-contrib/css-loader#exporttype", + "enum": ["array", "string", "css-style-sheet"] } }, "type": "object" diff --git a/src/plugins/index.js b/src/plugins/index.js index 21e47631..22e1bf60 100644 --- a/src/plugins/index.js +++ b/src/plugins/index.js @@ -1,5 +1,5 @@ -import importParser from './postcss-import-parser'; -import icssParser from './postcss-icss-parser'; -import urlParser from './postcss-url-parser'; +import importParser from "./postcss-import-parser"; +import icssParser from "./postcss-icss-parser"; +import urlParser from "./postcss-url-parser"; export { importParser, icssParser, urlParser }; diff --git a/src/plugins/postcss-icss-parser.js b/src/plugins/postcss-icss-parser.js index f8023c34..a40b4412 100644 --- a/src/plugins/postcss-icss-parser.js +++ b/src/plugins/postcss-icss-parser.js @@ -1,83 +1,124 @@ -import postcss from 'postcss'; -import { extractICSS, replaceValueSymbols, replaceSymbols } from 'icss-utils'; -import { urlToRequest } from 'loader-utils'; - -function makeRequestableIcssImports(icssImports) { - return Object.keys(icssImports).reduce((accumulator, url) => { - const tokensMap = icssImports[url]; - const tokens = Object.keys(tokensMap); - - if (tokens.length === 0) { - return accumulator; - } - - const normalizedUrl = urlToRequest(url); - - if (!accumulator[normalizedUrl]) { - // eslint-disable-next-line no-param-reassign - accumulator[normalizedUrl] = tokensMap; - } else { - // eslint-disable-next-line no-param-reassign - accumulator[normalizedUrl] = { - ...accumulator[normalizedUrl], - ...tokensMap, - }; - } - - return accumulator; - }, {}); -} - -export default postcss.plugin( - 'postcss-icss-parser', - (options) => (css, result) => { - const importReplacements = Object.create(null); - const extractedICSS = extractICSS(css); - const icssImports = makeRequestableIcssImports(extractedICSS.icssImports); - - for (const [importIndex, url] of Object.keys(icssImports).entries()) { - const importName = `___CSS_LOADER_ICSS_IMPORT_${importIndex}___`; - - result.messages.push( - { - type: 'import', - value: { +import { extractICSS, replaceValueSymbols, replaceSymbols } from "icss-utils"; + +import { normalizeUrl, resolveRequests, requestify } from "../utils"; + +const plugin = (options = {}) => { + return { + postcssPlugin: "postcss-icss-parser", + async OnceExit(root) { + const importReplacements = Object.create(null); + const { icssImports, icssExports } = extractICSS(root); + const imports = new Map(); + const tasks = []; + + const { loaderContext } = options; + const resolver = loaderContext.getResolve({ + dependencyType: "icss", + conditionNames: ["style"], + extensions: ["..."], + mainFields: ["css", "style", "main", "..."], + mainFiles: ["index", "..."], + preferRelative: true, + }); + + // eslint-disable-next-line guard-for-in + for (const url in icssImports) { + const tokens = icssImports[url]; + + if (Object.keys(tokens).length === 0) { + // eslint-disable-next-line no-continue + continue; + } + + let normalizedUrl = url; + let prefix = ""; + + const queryParts = normalizedUrl.split("!"); + + if (queryParts.length > 1) { + normalizedUrl = queryParts.pop(); + prefix = queryParts.join("!"); + } + + const request = requestify( + normalizeUrl(normalizedUrl, true), + loaderContext.rootContext, + ); + const doResolve = async () => { + const resolvedUrl = await resolveRequests( + resolver, + loaderContext.context, + [...new Set([normalizedUrl, request])], + ); + + if (!resolvedUrl) { + return; + } + + // eslint-disable-next-line consistent-return + return { url: resolvedUrl, prefix, tokens }; + }; + + tasks.push(doResolve()); + } + + const results = await Promise.all(tasks); + + for (let index = 0; index <= results.length - 1; index++) { + const item = results[index]; + + if (!item) { + // eslint-disable-next-line no-continue + continue; + } + + const newUrl = item.prefix ? `${item.prefix}!${item.url}` : item.url; + const importKey = newUrl; + let importName = imports.get(importKey); + + if (!importName) { + importName = `___CSS_LOADER_ICSS_IMPORT_${imports.size}___`; + imports.set(importKey, importName); + + options.imports.push({ + type: "icss_import", importName, - url: options.urlHandler ? options.urlHandler(url) : url, - }, - }, - { - type: 'api-import', - value: { type: 'internal', importName, dedupe: true }, + url: options.urlHandler(newUrl), + icss: true, + index, + }); + + options.api.push({ importName, dedupe: true, index }); } - ); - const tokenMap = icssImports[url]; - const tokens = Object.keys(tokenMap); + for (const [replacementIndex, token] of Object.keys( + item.tokens, + ).entries()) { + const replacementName = `___CSS_LOADER_ICSS_IMPORT_${index}_REPLACEMENT_${replacementIndex}___`; + const localName = item.tokens[token]; - for (const [replacementIndex, token] of tokens.entries()) { - const replacementName = `___CSS_LOADER_ICSS_IMPORT_${importIndex}_REPLACEMENT_${replacementIndex}___`; - const localName = tokenMap[token]; + importReplacements[token] = replacementName; - importReplacements[token] = replacementName; + options.replacements.push({ replacementName, importName, localName }); + } + } - result.messages.push({ - type: 'icss-replacement', - value: { replacementName, importName, localName }, - }); + if (Object.keys(importReplacements).length > 0) { + replaceSymbols(root, importReplacements); } - } - if (Object.keys(importReplacements).length > 0) { - replaceSymbols(css, importReplacements); - } + for (const name of Object.keys(icssExports)) { + const value = replaceValueSymbols( + icssExports[name], + importReplacements, + ); - const { icssExports } = extractedICSS; + options.exports.push({ name, value }); + } + }, + }; +}; - for (const name of Object.keys(icssExports)) { - const value = replaceValueSymbols(icssExports[name], importReplacements); +plugin.postcss = true; - result.messages.push({ type: 'export', value: { name, value } }); - } - } -); +export default plugin; diff --git a/src/plugins/postcss-import-parser.js b/src/plugins/postcss-import-parser.js index 591ee3a9..142e105f 100644 --- a/src/plugins/postcss-import-parser.js +++ b/src/plugins/postcss-import-parser.js @@ -1,132 +1,362 @@ -import postcss from 'postcss'; -import valueParser from 'postcss-value-parser'; -import { isUrlRequest } from 'loader-utils'; +import valueParser from "postcss-value-parser"; -import { normalizeUrl } from '../utils'; +import { + normalizeUrl, + resolveRequests, + isURLRequestable, + requestify, + WEBPACK_IGNORE_COMMENT_REGEXP, +} from "../utils"; -const pluginName = 'postcss-import-parser'; +function isIgnoredAfterName(atRule) { + if ( + atRule.raws && + atRule.raws.afterName && + atRule.raws.afterName.trim().length > 0 + ) { + const lastCommentIndex = atRule.raws.afterName.lastIndexOf("/*"); + const matched = atRule.raws.afterName + .slice(lastCommentIndex) + .match(WEBPACK_IGNORE_COMMENT_REGEXP); -export default postcss.plugin(pluginName, (options) => (css, result) => { - const importsMap = new Map(); - - css.walkAtRules(/^import$/i, (atRule) => { - // Convert only top-level @import - if (atRule.parent.type !== 'root') { - return; + if (matched && matched[2] === "true") { + return true; } + } + + return false; +} - // Nodes do not exists - `@import url('http://') :root {}` - if (atRule.nodes) { - result.warn( - "It looks like you didn't end your @import statement correctly. Child nodes are attached to it.", - { node: atRule } - ); +function isIgnoredPrevNode(atRule) { + const prevNode = atRule.prev(); - return; + if (prevNode && prevNode.type === "comment") { + const matched = prevNode.text.match(WEBPACK_IGNORE_COMMENT_REGEXP); + + if (matched && matched[2] === "true") { + return true; } + } - const { nodes } = valueParser(atRule.params); + return false; +} - // No nodes - `@import ;` - // Invalid type - `@import foo-bar;` - if ( - nodes.length === 0 || - (nodes[0].type !== 'string' && nodes[0].type !== 'function') - ) { - result.warn(`Unable to find uri in "${atRule.toString()}"`, { - node: atRule, - }); +function parseNode(atRule, key, options) { + // Convert only top-level @import + if (atRule.parent.type !== "root") { + return; + } - return; - } + const isIgnored = isIgnoredAfterName(atRule) || isIgnoredPrevNode(atRule); - let isStringValue; - let url; + // Nodes do not exists - `@import url('http://') :root {}` + if (atRule.nodes) { + const error = new Error( + "It looks like you didn't end your @import statement correctly. Child nodes are attached to it.", + ); - if (nodes[0].type === 'string') { - isStringValue = true; - url = nodes[0].value; - } else if (nodes[0].type === 'function') { - // Invalid function - `@import nourl(test.css);` - if (nodes[0].value.toLowerCase() !== 'url') { - result.warn(`Unable to find uri in "${atRule.toString()}"`, { - node: atRule, - }); + error.node = atRule; - return; - } + throw error; + } + + const rawParams = + atRule.raws && + atRule.raws[key] && + typeof atRule.raws[key].raw !== "undefined" + ? atRule.raws[key].raw + : atRule[key]; + const { nodes: paramsNodes } = valueParser(rawParams); + + // No nodes - `@import ;` + // Invalid type - `@import foo-bar;` + if ( + paramsNodes.length === 0 || + (paramsNodes[0].type !== "string" && paramsNodes[0].type !== "function") + ) { + const error = new Error(`Unable to find uri in "${atRule.toString()}"`); - isStringValue = - nodes[0].nodes.length !== 0 && nodes[0].nodes[0].type === 'string'; - url = isStringValue - ? nodes[0].nodes[0].value - : valueParser.stringify(nodes[0].nodes); + error.node = atRule; + + throw error; + } + + let isStringValue; + let url; + + if (paramsNodes[0].type === "string") { + isStringValue = true; + url = paramsNodes[0].value; + } else { + // Invalid function - `@import nourl(test.css);` + if (paramsNodes[0].value.toLowerCase() !== "url") { + const error = new Error(`Unable to find uri in "${atRule.toString()}"`); + + error.node = atRule; + + throw error; } - // Empty url - `@import "";` or `@import url();` - if (url.trim().length === 0) { - result.warn(`Unable to find uri in "${atRule.toString()}"`, { - node: atRule, - }); + isStringValue = + paramsNodes[0].nodes.length !== 0 && + paramsNodes[0].nodes[0].type === "string"; + url = isStringValue + ? paramsNodes[0].nodes[0].value + : valueParser.stringify(paramsNodes[0].nodes); + } + + url = normalizeUrl(url, isStringValue); + + let requestable = false; + let needResolve = false; - return; + if (!isIgnored) { + ({ requestable, needResolve } = isURLRequestable(url, options)); + } + + let prefix; + + if (requestable && needResolve) { + const queryParts = url.split("!"); + + if (queryParts.length > 1) { + url = queryParts.pop(); + prefix = queryParts.join("!"); } + } + + // Empty url - `@import "";` or `@import url();` + if (url.trim().length === 0) { + const error = new Error(`Unable to find uri in "${atRule.toString()}"`); + + error.node = atRule; + + throw error; + } + + const additionalNodes = paramsNodes.slice(1); - const isRequestable = isUrlRequest(url); + let supports; + let layer; + let media; - if (isRequestable) { - url = normalizeUrl(url, isStringValue); + if (additionalNodes.length > 0) { + let nodes = []; - // Empty url after normalize - `@import '\ - // \ - // \ - // '; - if (url.trim().length === 0) { - result.warn(`Unable to find uri in "${atRule.toString()}"`, { - node: atRule, - }); + for (const node of additionalNodes) { + nodes.push(node); - return; + const isLayerFunction = + node.type === "function" && node.value.toLowerCase() === "layer"; + const isLayerWord = + node.type === "word" && node.value.toLowerCase() === "layer"; + + if (isLayerFunction || isLayerWord) { + if (isLayerFunction) { + nodes.splice(nodes.length - 1, 1, ...node.nodes); + } else { + nodes.splice(nodes.length - 1, 1, { + type: "string", + value: "", + unclosed: false, + }); + } + + layer = valueParser.stringify(nodes).trim().toLowerCase(); + nodes = []; + } else if ( + node.type === "function" && + node.value.toLowerCase() === "supports" + ) { + nodes.splice(nodes.length - 1, 1, ...node.nodes); + + supports = valueParser.stringify(nodes).trim().toLowerCase(); + nodes = []; } } - const media = valueParser.stringify(nodes.slice(1)).trim().toLowerCase(); - - if (options.filter && !options.filter({ url, media })) { - return; + if (nodes.length > 0) { + media = valueParser.stringify(nodes).trim().toLowerCase(); } + } + + // eslint-disable-next-line consistent-return + return { + atRule, + prefix, + url, + layer, + supports, + media, + requestable, + needResolve, + }; +} + +const plugin = (options = {}) => { + return { + postcssPlugin: "postcss-import-parser", + prepare(result) { + const parsedAtRules = []; - atRule.remove(); + return { + AtRule: { + import(atRule) { + if (options.isCSSStyleSheet) { + options.loaderContext.emitError( + new Error( + atRule.error( + "'@import' rules are not allowed here and will not be processed", + ).message, + ), + ); - if (isRequestable) { - const importKey = url; - let importName = importsMap.get(importKey); + return; + } - if (!importName) { - importName = `___CSS_LOADER_AT_RULE_IMPORT_${importsMap.size}___`; - importsMap.set(importKey, importName); + const { isSupportDataURL, isSupportAbsoluteURL } = options; - result.messages.push({ - type: 'import', - value: { - importName, - url: options.urlHandler ? options.urlHandler(url) : url, + let parsedAtRule; + + try { + parsedAtRule = parseNode(atRule, "params", { + isSupportAbsoluteURL, + isSupportDataURL, + }); + } catch (error) { + result.warn(error.message, { node: error.node }); + } + + if (!parsedAtRule) { + return; + } + + parsedAtRules.push(parsedAtRule); }, - }); - } + }, + async OnceExit() { + if (parsedAtRules.length === 0) { + return; + } - result.messages.push({ - type: 'api-import', - value: { type: 'internal', importName, media }, - }); + const { loaderContext } = options; + const resolver = loaderContext.getResolve({ + dependencyType: "css", + conditionNames: ["style"], + mainFields: ["css", "style", "main", "..."], + mainFiles: ["index", "..."], + extensions: [".css", "..."], + preferRelative: true, + }); - return; - } + const resolvedAtRules = await Promise.all( + parsedAtRules.map(async (parsedAtRule) => { + const { + atRule, + requestable, + needResolve, + prefix, + url, + layer, + supports, + media, + } = parsedAtRule; + + if (options.filter) { + const needKeep = await options.filter( + url, + media, + loaderContext.resourcePath, + supports, + layer, + ); + + if (!needKeep) { + return; + } + } + + if (needResolve) { + const request = requestify(url, loaderContext.rootContext); + const resolvedUrl = await resolveRequests( + resolver, + loaderContext.context, + [...new Set([request, url])], + ); + + if (!resolvedUrl) { + return; + } + + if (resolvedUrl === loaderContext.resourcePath) { + atRule.remove(); + + return; + } + + atRule.remove(); + + // eslint-disable-next-line consistent-return + return { + url: resolvedUrl, + layer, + supports, + media, + prefix, + requestable, + }; + } + + atRule.remove(); + + // eslint-disable-next-line consistent-return + return { url, layer, supports, media, prefix, requestable }; + }), + ); + + const urlToNameMap = new Map(); + + for (let index = 0; index <= resolvedAtRules.length - 1; index++) { + const resolvedAtRule = resolvedAtRules[index]; + + if (!resolvedAtRule) { + // eslint-disable-next-line no-continue + continue; + } + + const { url, requestable, layer, supports, media } = resolvedAtRule; + + if (!requestable) { + options.api.push({ url, layer, supports, media, index }); + + // eslint-disable-next-line no-continue + continue; + } + + const { prefix } = resolvedAtRule; + const newUrl = prefix ? `${prefix}!${url}` : url; + let importName = urlToNameMap.get(newUrl); + + if (!importName) { + importName = `___CSS_LOADER_AT_RULE_IMPORT_${urlToNameMap.size}___`; + urlToNameMap.set(newUrl, importName); + + options.imports.push({ + type: "rule_import", + importName, + url: options.urlHandler(newUrl), + index, + }); + } + + options.api.push({ importName, layer, supports, media, index }); + } + }, + }; + }, + }; +}; + +plugin.postcss = true; - result.messages.push({ - pluginName, - type: 'api-import', - value: { type: 'external', url, media }, - }); - }); -}); +export default plugin; diff --git a/src/plugins/postcss-url-parser.js b/src/plugins/postcss-url-parser.js index 54de6d8a..4e24e926 100644 --- a/src/plugins/postcss-url-parser.js +++ b/src/plugins/postcss-url-parser.js @@ -1,158 +1,447 @@ -import postcss from 'postcss'; -import valueParser from 'postcss-value-parser'; +import valueParser from "postcss-value-parser"; -import { normalizeUrl } from '../utils'; - -const pluginName = 'postcss-url-parser'; +import { + resolveRequests, + normalizeUrl, + requestify, + isURLRequestable, + WEBPACK_IGNORE_COMMENT_REGEXP, +} from "../utils"; const isUrlFunc = /url/i; const isImageSetFunc = /^(?:-webkit-)?image-set$/i; -const needParseDecl = /(?:url|(?:-webkit-)?image-set)\(/i; +const needParseDeclaration = /(?:url|(?:-webkit-)?image-set)\(/i; function getNodeFromUrlFunc(node) { return node.nodes && node.nodes[0]; } -function walkUrls(parsed, callback) { - parsed.walk((node) => { - if (node.type !== 'function') { - return; - } +function getWebpackIgnoreCommentValue(index, nodes, inBetween) { + if (index === 0 && typeof inBetween !== "undefined") { + return inBetween; + } - if (isUrlFunc.test(node.value)) { - const { nodes } = node; - const isStringValue = nodes.length !== 0 && nodes[0].type === 'string'; - const url = isStringValue ? nodes[0].value : valueParser.stringify(nodes); + let prevValueNode = nodes[index - 1]; - callback(getNodeFromUrlFunc(node), url, false, isStringValue); + if (!prevValueNode) { + // eslint-disable-next-line consistent-return + return; + } - // Do not traverse inside `url` + if (prevValueNode.type === "space") { + if (!nodes[index - 2]) { // eslint-disable-next-line consistent-return - return false; + return; } - if (isImageSetFunc.test(node.value)) { - for (const nNode of node.nodes) { - const { type, value } = nNode; + prevValueNode = nodes[index - 2]; + } - if (type === 'function' && isUrlFunc.test(value)) { - const { nodes } = nNode; + if (prevValueNode.type !== "comment") { + // eslint-disable-next-line consistent-return + return; + } - const isStringValue = - nodes.length !== 0 && nodes[0].type === 'string'; - const url = isStringValue - ? nodes[0].value - : valueParser.stringify(nodes); + const matched = prevValueNode.value.match(WEBPACK_IGNORE_COMMENT_REGEXP); - callback(getNodeFromUrlFunc(nNode), url, false, isStringValue); - } + return matched && matched[2] === "true"; +} - if (type === 'string') { - callback(nNode, value, true, true); - } - } +function shouldHandleURL(url, declaration, result, options) { + if (url.length === 0) { + result.warn(`Unable to find uri in '${declaration.toString()}'`, { + node: declaration, + }); - // Do not traverse inside `image-set` - // eslint-disable-next-line consistent-return - return false; - } - }); + return { requestable: false, needResolve: false }; + } + + return isURLRequestable(url, options); } -export default postcss.plugin(pluginName, (options) => (css, result) => { - const importsMap = new Map(); - const replacementsMap = new Map(); +function parseDeclaration(declaration, key, result, options) { + if (!needParseDeclaration.test(declaration[key])) { + return; + } + + const parsed = valueParser( + declaration.raws && declaration.raws.value && declaration.raws.value.raw + ? declaration.raws.value.raw + : declaration[key], + ); + + let inBetween; + + if (declaration.raws && declaration.raws.between) { + const lastCommentIndex = declaration.raws.between.lastIndexOf("/*"); + + const matched = declaration.raws.between + .slice(lastCommentIndex) + .match(WEBPACK_IGNORE_COMMENT_REGEXP); + + if (matched) { + inBetween = matched[2] === "true"; + } + } + + let isIgnoreOnDeclaration = false; + + const prevNode = declaration.prev(); + + if (prevNode && prevNode.type === "comment") { + const matched = prevNode.text.match(WEBPACK_IGNORE_COMMENT_REGEXP); + + if (matched) { + isIgnoreOnDeclaration = matched[2] === "true"; + } + } - let hasHelper = false; + let needIgnore; - css.walkDecls((decl) => { - if (!needParseDecl.test(decl.value)) { + const parsedURLs = []; + + parsed.walk((valueNode, index, valueNodes) => { + if (valueNode.type !== "function") { return; } - const parsed = valueParser(decl.value); + if (isUrlFunc.test(valueNode.value)) { + needIgnore = getWebpackIgnoreCommentValue(index, valueNodes, inBetween); - walkUrls(parsed, (node, url, needQuotes, isStringValue) => { - // https://www.w3.org/TR/css-syntax-3/#typedef-url-token - if (url.replace(/^[\s]+|[\s]+$/g, '').length === 0) { - result.warn( - `Unable to find uri in '${decl ? decl.toString() : decl.value}'`, - { node: decl } - ); + if ( + (isIgnoreOnDeclaration && typeof needIgnore === "undefined") || + needIgnore + ) { + if (needIgnore) { + // eslint-disable-next-line no-undefined + needIgnore = undefined; + } return; } - if (options.filter && !options.filter(url)) { - return; - } + const { nodes } = valueNode; + const isStringValue = nodes.length !== 0 && nodes[0].type === "string"; + let url = isStringValue ? nodes[0].value : valueParser.stringify(nodes); - const splittedUrl = url.split(/(\?)?#/); - const [urlWithoutHash, singleQuery, hashValue] = splittedUrl; - const hash = - singleQuery || hashValue - ? `${singleQuery ? '?' : ''}${hashValue ? `#${hashValue}` : ''}` - : ''; - - const normalizedUrl = normalizeUrl(urlWithoutHash, isStringValue); - - const importKey = normalizedUrl; - let importName = importsMap.get(importKey); - - if (!importName) { - importName = `___CSS_LOADER_URL_IMPORT_${importsMap.size}___`; - importsMap.set(importKey, importName); - - if (!hasHelper) { - const urlToHelper = require.resolve('../runtime/getUrl.js'); - - result.messages.push({ - pluginName, - type: 'import', - value: { - importName: '___CSS_LOADER_GET_URL_IMPORT___', - url: options.urlHandler - ? options.urlHandler(urlToHelper) - : urlToHelper, - }, - }); + url = normalizeUrl(url, isStringValue); - hasHelper = true; - } + const { requestable, needResolve } = shouldHandleURL( + url, + declaration, + result, + options, + ); - result.messages.push({ - pluginName, - type: 'import', - value: { - importName, - url: options.urlHandler - ? options.urlHandler(normalizedUrl) - : normalizedUrl, - }, - }); + // Do not traverse inside `url` + if (!requestable) { + // eslint-disable-next-line consistent-return + return false; } - const replacementKey = JSON.stringify({ importKey, hash, needQuotes }); - let replacementName = replacementsMap.get(replacementKey); + const queryParts = url.split("!"); - if (!replacementName) { - replacementName = `___CSS_LOADER_URL_REPLACEMENT_${replacementsMap.size}___`; - replacementsMap.set(replacementKey, replacementName); + let prefix; - result.messages.push({ - pluginName, - type: 'url-replacement', - value: { replacementName, importName, hash, needQuotes }, - }); + if (queryParts.length > 1) { + url = queryParts.pop(); + prefix = queryParts.join("!"); } - // eslint-disable-next-line no-param-reassign - node.type = 'word'; - // eslint-disable-next-line no-param-reassign - node.value = replacementName; - }); + parsedURLs.push({ + declaration, + parsed, + node: getNodeFromUrlFunc(valueNode), + prefix, + url, + needQuotes: false, + needResolve, + }); + + // eslint-disable-next-line consistent-return + return false; + } else if (isImageSetFunc.test(valueNode.value)) { + for (const [innerIndex, nNode] of valueNode.nodes.entries()) { + const { type, value } = nNode; + + if (type === "function" && isUrlFunc.test(value)) { + needIgnore = getWebpackIgnoreCommentValue( + innerIndex, + valueNode.nodes, + ); + + if ( + (isIgnoreOnDeclaration && typeof needIgnore === "undefined") || + needIgnore + ) { + if (needIgnore) { + // eslint-disable-next-line no-undefined + needIgnore = undefined; + } + + // eslint-disable-next-line no-continue + continue; + } + + const { nodes } = nNode; + const isStringValue = + nodes.length !== 0 && nodes[0].type === "string"; + let url = isStringValue + ? nodes[0].value + : valueParser.stringify(nodes); + + url = normalizeUrl(url, isStringValue); + + const { requestable, needResolve } = shouldHandleURL( + url, + declaration, + result, + options, + ); + + // Do not traverse inside `url` + if (!requestable) { + // eslint-disable-next-line consistent-return + return false; + } + + const queryParts = url.split("!"); + + let prefix; + + if (queryParts.length > 1) { + url = queryParts.pop(); + prefix = queryParts.join("!"); + } + + parsedURLs.push({ + declaration, + parsed, + node: getNodeFromUrlFunc(nNode), + prefix, + url, + needQuotes: false, + needResolve, + }); + } else if (type === "string") { + needIgnore = getWebpackIgnoreCommentValue( + innerIndex, + valueNode.nodes, + ); + + if ( + (isIgnoreOnDeclaration && typeof needIgnore === "undefined") || + needIgnore + ) { + if (needIgnore) { + // eslint-disable-next-line no-undefined + needIgnore = undefined; + } + + // eslint-disable-next-line no-continue + continue; + } + + let url = normalizeUrl(value, true); + + const { requestable, needResolve } = shouldHandleURL( + url, + declaration, + result, + options, + ); + + // Do not traverse inside `url` + if (!requestable) { + // eslint-disable-next-line consistent-return + return false; + } + + const queryParts = url.split("!"); + + let prefix; + + if (queryParts.length > 1) { + url = queryParts.pop(); + prefix = queryParts.join("!"); + } + + parsedURLs.push({ + declaration, + parsed, + node: nNode, + prefix, + url, + needQuotes: true, + needResolve, + }); + } + } - // eslint-disable-next-line no-param-reassign - decl.value = parsed.toString(); + // Do not traverse inside `image-set` + // eslint-disable-next-line consistent-return + return false; + } }); -}); + + // eslint-disable-next-line consistent-return + return parsedURLs; +} + +const plugin = (options = {}) => { + return { + postcssPlugin: "postcss-url-parser", + prepare(result) { + const parsedDeclarations = []; + + return { + Declaration(declaration) { + const { isSupportDataURL, isSupportAbsoluteURL } = options; + const parsedURL = parseDeclaration(declaration, "value", result, { + isSupportDataURL, + isSupportAbsoluteURL, + }); + + if (!parsedURL) { + return; + } + + parsedDeclarations.push(...parsedURL); + }, + async OnceExit() { + if (parsedDeclarations.length === 0) { + return; + } + + const resolvedDeclarations = await Promise.all( + parsedDeclarations.map(async (parsedDeclaration) => { + const { url, needResolve } = parsedDeclaration; + + if (options.filter) { + const needKeep = await options.filter(url); + + if (!needKeep) { + // eslint-disable-next-line consistent-return + return; + } + } + + if (!needResolve) { + // eslint-disable-next-line consistent-return + return parsedDeclaration; + } + + const splittedUrl = url.split(/(\?)?#/); + const [pathname, query, hashOrQuery] = splittedUrl; + + let hash = query ? "?" : ""; + hash += hashOrQuery ? `#${hashOrQuery}` : ""; + + const { resolver, rootContext } = options; + const request = requestify( + pathname, + rootContext, + Boolean(resolver), + ); + + if (!resolver) { + // eslint-disable-next-line consistent-return + return { ...parsedDeclaration, url: request, hash }; + } + + const resolvedURL = await resolveRequests( + resolver, + options.context, + [...new Set([request, url])], + ); + + if (!resolvedURL) { + // eslint-disable-next-line consistent-return + return; + } + + // eslint-disable-next-line consistent-return + return { ...parsedDeclaration, url: resolvedURL, hash }; + }), + ); + + const urlToNameMap = new Map(); + const urlToReplacementMap = new Map(); + + let hasUrlImportHelper = false; + + for ( + let index = 0; + index <= resolvedDeclarations.length - 1; + index++ + ) { + const item = resolvedDeclarations[index]; + + if (!item) { + // eslint-disable-next-line no-continue + continue; + } + + if (!hasUrlImportHelper) { + options.imports.push({ + type: "get_url_import", + importName: "___CSS_LOADER_GET_URL_IMPORT___", + url: options.urlHandler( + require.resolve("../runtime/getUrl.js"), + ), + index: -1, + }); + + hasUrlImportHelper = true; + } + + const { url, prefix } = item; + const newUrl = prefix ? `${prefix}!${url}` : url; + let importName = urlToNameMap.get(newUrl); + + if (!importName) { + importName = `___CSS_LOADER_URL_IMPORT_${urlToNameMap.size}___`; + urlToNameMap.set(newUrl, importName); + + options.imports.push({ + type: "url", + importName, + url: options.resolver + ? options.urlHandler(newUrl) + : JSON.stringify(newUrl), + index, + }); + } + + const { hash, needQuotes } = item; + const replacementKey = JSON.stringify({ newUrl, hash, needQuotes }); + let replacementName = urlToReplacementMap.get(replacementKey); + + if (!replacementName) { + replacementName = `___CSS_LOADER_URL_REPLACEMENT_${urlToReplacementMap.size}___`; + urlToReplacementMap.set(replacementKey, replacementName); + + options.replacements.push({ + replacementName, + importName, + hash, + needQuotes, + }); + } + + // eslint-disable-next-line no-param-reassign + item.node.type = "word"; + // eslint-disable-next-line no-param-reassign + item.node.value = replacementName; + // eslint-disable-next-line no-param-reassign + item.declaration.value = item.parsed.toString(); + } + }, + }; + }, + }; +}; + +plugin.postcss = true; + +export default plugin; diff --git a/src/runtime/api.js b/src/runtime/api.js index 463fdfb0..21d4def7 100644 --- a/src/runtime/api.js +++ b/src/runtime/api.js @@ -2,38 +2,57 @@ MIT License http://www.opensource.org/licenses/mit-license.php Author Tobias Koppers @sokra */ -// css base code, injected by the css-loader -// eslint-disable-next-line func-names -module.exports = function (useSourceMap) { +module.exports = (cssWithMappingToString) => { const list = []; // return the list of modules as css string list.toString = function toString() { return this.map((item) => { - const content = cssWithMappingToString(item, useSourceMap); + let content = ""; + + const needLayer = typeof item[5] !== "undefined"; + + if (item[4]) { + content += `@supports (${item[4]}) {`; + } + + if (item[2]) { + content += `@media ${item[2]} {`; + } + + if (needLayer) { + content += `@layer${item[5].length > 0 ? ` ${item[5]}` : ""} {`; + } + + content += cssWithMappingToString(item); + + if (needLayer) { + content += "}"; + } if (item[2]) { - return `@media ${item[2]} {${content}}`; + content += "}"; + } + + if (item[4]) { + content += "}"; } return content; - }).join(''); + }).join(""); }; // import a list of modules into the list - // eslint-disable-next-line func-names - list.i = function (modules, mediaQuery, dedupe) { - if (typeof modules === 'string') { - // eslint-disable-next-line no-param-reassign - modules = [[null, modules, '']]; + list.i = function i(modules, media, dedupe, supports, layer) { + if (typeof modules === "string") { + modules = [[null, modules, undefined]]; } const alreadyImportedModules = {}; if (dedupe) { - for (let i = 0; i < this.length; i++) { - // eslint-disable-next-line prefer-destructuring - const id = this[i][0]; + for (let k = 0; k < this.length; k++) { + const id = this[k][0]; if (id != null) { alreadyImportedModules[id] = true; @@ -41,19 +60,39 @@ module.exports = function (useSourceMap) { } } - for (let i = 0; i < modules.length; i++) { - const item = [].concat(modules[i]); + for (let k = 0; k < modules.length; k++) { + const item = [].concat(modules[k]); if (dedupe && alreadyImportedModules[item[0]]) { - // eslint-disable-next-line no-continue continue; } - if (mediaQuery) { + if (typeof layer !== "undefined") { + if (typeof item[5] === "undefined") { + item[5] = layer; + } else { + item[1] = `@layer${item[5].length > 0 ? ` ${item[5]}` : ""} {${ + item[1] + }}`; + item[5] = layer; + } + } + + if (media) { if (!item[2]) { - item[2] = mediaQuery; + item[2] = media; + } else { + item[1] = `@media ${item[2]} {${item[1]}}`; + item[2] = media; + } + } + + if (supports) { + if (!item[4]) { + item[4] = `${supports}`; } else { - item[2] = `${mediaQuery} and ${item[2]}`; + item[1] = `@supports (${item[4]}) {${item[1]}}`; + item[4] = supports; } } @@ -63,33 +102,3 @@ module.exports = function (useSourceMap) { return list; }; - -function cssWithMappingToString(item, useSourceMap) { - const content = item[1] || ''; - // eslint-disable-next-line prefer-destructuring - const cssMapping = item[3]; - - if (!cssMapping) { - return content; - } - - if (useSourceMap && typeof btoa === 'function') { - const sourceMapping = toComment(cssMapping); - const sourceURLs = cssMapping.sources.map( - (source) => `/*# sourceURL=${cssMapping.sourceRoot || ''}${source} */` - ); - - return [content].concat(sourceURLs).concat([sourceMapping]).join('\n'); - } - - return [content].join('\n'); -} - -// Adapted from convert-source-map (MIT) -function toComment(sourceMap) { - // eslint-disable-next-line no-undef - const base64 = btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))); - const data = `sourceMappingURL=data:application/json;charset=utf-8;base64,${base64}`; - - return `/*# ${data} */`; -} diff --git a/src/runtime/getUrl.js b/src/runtime/getUrl.js index 1ae687a3..6c70a337 100644 --- a/src/runtime/getUrl.js +++ b/src/runtime/getUrl.js @@ -1,31 +1,27 @@ module.exports = (url, options) => { if (!options) { - // eslint-disable-next-line no-param-reassign options = {}; } - // eslint-disable-next-line no-underscore-dangle, no-param-reassign - url = url && url.__esModule ? url.default : url; - - if (typeof url !== 'string') { + if (!url) { return url; } + url = String(url.__esModule ? url.default : url); + // If url is already wrapped in quotes, remove them if (/^['"].*['"]$/.test(url)) { - // eslint-disable-next-line no-param-reassign url = url.slice(1, -1); } if (options.hash) { - // eslint-disable-next-line no-param-reassign url += options.hash; } // Should url be wrapped? // See https://drafts.csswg.org/css-values-3/#urls - if (/["'() \t\n]/.test(url) || options.needQuotes) { - return `"${url.replace(/"/g, '\\"').replace(/\n/g, '\\n')}"`; + if (/["'() \t\n]|(%20)/.test(url) || options.needQuotes) { + return `"${url.replace(/"/g, '\\"').replace(/\n/g, "\\n")}"`; } return url; diff --git a/src/runtime/noSourceMaps.js b/src/runtime/noSourceMaps.js new file mode 100644 index 00000000..f0892949 --- /dev/null +++ b/src/runtime/noSourceMaps.js @@ -0,0 +1 @@ +module.exports = (i) => i[1]; diff --git a/src/runtime/sourceMaps.js b/src/runtime/sourceMaps.js new file mode 100644 index 00000000..db27c48c --- /dev/null +++ b/src/runtime/sourceMaps.js @@ -0,0 +1,20 @@ +module.exports = (item) => { + const content = item[1]; + const cssMapping = item[3]; + + if (!cssMapping) { + return content; + } + + if (typeof btoa === "function") { + const base64 = btoa( + unescape(encodeURIComponent(JSON.stringify(cssMapping))), + ); + const data = `sourceMappingURL=data:application/json;charset=utf-8;base64,${base64}`; + const sourceMapping = `/*# ${data} */`; + + return [content].concat([sourceMapping]).join("\n"); + } + + return [content].join("\n"); +}; diff --git a/src/utils.js b/src/utils.js index 45e8f7a9..86866702 100644 --- a/src/utils.js +++ b/src/utils.js @@ -2,184 +2,806 @@ MIT License http://www.opensource.org/licenses/mit-license.php Author Tobias Koppers @sokra */ -import path from 'path'; - -import { stringifyRequest, urlToRequest, interpolateName } from 'loader-utils'; -import normalizePath from 'normalize-path'; -import cssesc from 'cssesc'; -import modulesValues from 'postcss-modules-values'; -import localByDefault from 'postcss-modules-local-by-default'; -import extractImports from 'postcss-modules-extract-imports'; -import modulesScope from 'postcss-modules-scope'; -import camelCase from 'camelcase'; - -const whitespace = '[\\x20\\t\\r\\n\\f]'; -const unescapeRegExp = new RegExp( - `\\\\([\\da-f]{1,6}${whitespace}?|(${whitespace})|.)`, - 'ig' -); +import { fileURLToPath } from "url"; +import path from "path"; + +import modulesValues from "postcss-modules-values"; +import localByDefault from "postcss-modules-local-by-default"; +import extractImports from "postcss-modules-extract-imports"; +import modulesScope from "postcss-modules-scope"; + +const WEBPACK_IGNORE_COMMENT_REGEXP = /webpackIgnore:(\s+)?(true|false)/; + +function stringifyRequest(loaderContext, request) { + return JSON.stringify( + loaderContext.utils.contextify( + loaderContext.context || loaderContext.rootContext, + request, + ), + ); +} -function unescape(str) { - return str.replace(unescapeRegExp, (_, escaped, escapedWhitespace) => { - const high = `0x${escaped}` - 0x10000; - - /* eslint-disable line-comment-position */ - // NaN means non-codepoint - // Workaround erroneous numeric interpretation of +"0x" - // eslint-disable-next-line no-self-compare - return high !== high || escapedWhitespace - ? escaped - : high < 0 - ? // BMP codepoint - String.fromCharCode(high + 0x10000) - : // Supplemental Plane codepoint (surrogate pair) - // eslint-disable-next-line no-bitwise - String.fromCharCode((high >> 10) | 0xd800, (high & 0x3ff) | 0xdc00); - /* eslint-enable line-comment-position */ +// We can't use path.win32.isAbsolute because it also matches paths starting with a forward slash +const IS_NATIVE_WIN32_PATH = /^[a-z]:[/\\]|^\\\\/i; +const IS_MODULE_REQUEST = /^[^?]*~/; + +function urlToRequest(url, root) { + let request; + + if (IS_NATIVE_WIN32_PATH.test(url)) { + // absolute windows path, keep it + request = url; + } else if (typeof root !== "undefined" && /^\//.test(url)) { + request = root + url; + } else if (/^\.\.?\//.test(url)) { + // A relative url stays + request = url; + } else { + // every other url is threaded like a relative url + request = `./${url}`; + } + + // A `~` makes the url an module + if (IS_MODULE_REQUEST.test(request)) { + request = request.replace(IS_MODULE_REQUEST, ""); + } + + return request; +} + +// eslint-disable-next-line no-useless-escape +const regexSingleEscape = /[ -,.\/:-@[\]\^`{-~]/; +const regexExcessiveSpaces = + /(^|\\+)?(\\[A-F0-9]{1,6})\x20(?![a-fA-F0-9\x20])/g; + +const preserveCamelCase = (string) => { + let result = string; + let isLastCharLower = false; + let isLastCharUpper = false; + let isLastLastCharUpper = false; + + for (let i = 0; i < result.length; i++) { + const character = result[i]; + + if (isLastCharLower && /[\p{Lu}]/u.test(character)) { + result = `${result.slice(0, i)}-${result.slice(i)}`; + isLastCharLower = false; + isLastLastCharUpper = isLastCharUpper; + isLastCharUpper = true; + i += 1; + } else if ( + isLastCharUpper && + isLastLastCharUpper && + /[\p{Ll}]/u.test(character) + ) { + result = `${result.slice(0, i - 1)}-${result.slice(i - 1)}`; + isLastLastCharUpper = isLastCharUpper; + isLastCharUpper = false; + isLastCharLower = true; + } else { + isLastCharLower = + character.toLowerCase() === character && + character.toUpperCase() !== character; + isLastLastCharUpper = isLastCharUpper; + isLastCharUpper = + character.toUpperCase() === character && + character.toLowerCase() !== character; + } + } + + return result; +}; + +function camelCase(input) { + let result = input.trim(); + + if (result.length === 0) { + return ""; + } + + if (result.length === 1) { + return result.toLowerCase(); + } + + const hasUpperCase = result !== result.toLowerCase(); + + if (hasUpperCase) { + result = preserveCamelCase(result); + } + + return result + .replace(/^[_.\- ]+/, "") + .toLowerCase() + .replace(/[_.\- ]+([\p{Alpha}\p{N}_]|$)/gu, (_, p1) => p1.toUpperCase()) + .replace(/\d+([\p{Alpha}\p{N}_]|$)/gu, (m) => m.toUpperCase()); +} + +function escape(string) { + let output = ""; + let counter = 0; + + while (counter < string.length) { + // eslint-disable-next-line no-plusplus + const character = string.charAt(counter++); + + let value; + + // eslint-disable-next-line no-control-regex + if (/[\t\n\f\r\x0B]/.test(character)) { + const codePoint = character.charCodeAt(); + + value = `\\${codePoint.toString(16).toUpperCase()} `; + } else if (character === "\\" || regexSingleEscape.test(character)) { + value = `\\${character}`; + } else { + value = character; + } + + output += value; + } + + const firstChar = string.charAt(0); + + if (/^-[-\d]/.test(output)) { + output = `\\-${output.slice(1)}`; + } else if (/\d/.test(firstChar)) { + output = `\\3${firstChar} ${output.slice(1)}`; + } + + // Remove spaces after `\HEX` escapes that are not followed by a hex digit, + // since they’re redundant. Note that this is only possible if the escape + // sequence isn’t preceded by an odd number of backslashes. + output = output.replace(regexExcessiveSpaces, ($0, $1, $2) => { + if ($1 && $1.length % 2) { + // It’s not safe to remove the space, so don’t. + return $0; + } + + // Strip the space. + return ($1 || "") + $2; }); + + return output; +} + +function gobbleHex(str) { + const lower = str.toLowerCase(); + let hex = ""; + let spaceTerminated = false; + + // eslint-disable-next-line no-undefined + for (let i = 0; i < 6 && lower[i] !== undefined; i++) { + const code = lower.charCodeAt(i); + // check to see if we are dealing with a valid hex char [a-f|0-9] + const valid = (code >= 97 && code <= 102) || (code >= 48 && code <= 57); + // https://drafts.csswg.org/css-syntax/#consume-escaped-code-point + spaceTerminated = code === 32; + + if (!valid) { + break; + } + + hex += lower[i]; + } + + if (hex.length === 0) { + // eslint-disable-next-line no-undefined + return undefined; + } + + const codePoint = parseInt(hex, 16); + + const isSurrogate = codePoint >= 0xd800 && codePoint <= 0xdfff; + // Add special case for + // "If this number is zero, or is for a surrogate, or is greater than the maximum allowed code point" + // https://drafts.csswg.org/css-syntax/#maximum-allowed-code-point + if (isSurrogate || codePoint === 0x0000 || codePoint > 0x10ffff) { + return ["\uFFFD", hex.length + (spaceTerminated ? 1 : 0)]; + } + + return [ + String.fromCodePoint(codePoint), + hex.length + (spaceTerminated ? 1 : 0), + ]; +} + +const CONTAINS_ESCAPE = /\\/; + +function unescape(str) { + const needToProcess = CONTAINS_ESCAPE.test(str); + + if (!needToProcess) { + return str; + } + + let ret = ""; + + for (let i = 0; i < str.length; i++) { + if (str[i] === "\\") { + const gobbled = gobbleHex(str.slice(i + 1, i + 7)); + + // eslint-disable-next-line no-undefined + if (gobbled !== undefined) { + ret += gobbled[0]; + i += gobbled[1]; + + // eslint-disable-next-line no-continue + continue; + } + + // Retain a pair of \\ if double escaped `\\\\` + // https://github.com/postcss/postcss-selector-parser/commit/268c9a7656fb53f543dc620aa5b73a30ec3ff20e + if (str[i + 1] === "\\") { + ret += "\\"; + i += 1; + + // eslint-disable-next-line no-continue + continue; + } + + // if \\ is at the end of the string retain it + // https://github.com/postcss/postcss-selector-parser/commit/01a6b346e3612ce1ab20219acc26abdc259ccefb + if (str.length === i + 1) { + ret += str[i]; + } + + // eslint-disable-next-line no-continue + continue; + } + + ret += str[i]; + } + + return ret; +} + +function normalizePath(file) { + return path.sep === "\\" ? file.replace(/\\/g, "/") : file; } // eslint-disable-next-line no-control-regex -const filenameReservedRegex = /[<>:"/\\|?*\x00-\x1F]/g; +const filenameReservedRegex = /[<>:"/\\|?*]/g; // eslint-disable-next-line no-control-regex const reControlChars = /[\u0000-\u001f\u0080-\u009f]/g; -const reRelativePath = /^\.+/; -function getLocalIdent(loaderContext, localIdentName, localName, options) { - if (!options.context) { - // eslint-disable-next-line no-param-reassign - options.context = loaderContext.rootContext; - } +function escapeLocalIdent(localident) { + // TODO simplify? + return escape( + localident + // For `[hash]` placeholder + .replace(/^((-?[0-9])|--)/, "_$1") + .replace(filenameReservedRegex, "-") + .replace(reControlChars, "-") + .replace(/\./g, "-"), + ); +} - const request = normalizePath( - path.relative(options.context || '', loaderContext.resourcePath) +function defaultGetLocalIdent( + loaderContext, + localIdentName, + localName, + options, +) { + const { context, hashSalt, hashStrategy } = options; + const { resourcePath } = loaderContext; + let relativeResourcePath = normalizePath( + path.relative(context, resourcePath), ); + // eslint-disable-next-line no-underscore-dangle + if (loaderContext._module && loaderContext._module.matchResource) { + relativeResourcePath = `${normalizePath( + // eslint-disable-next-line no-underscore-dangle + path.relative(context, loaderContext._module.matchResource), + )}`; + } + // eslint-disable-next-line no-param-reassign - options.content = `${options.hashPrefix + request}+${unescape(localName)}`; + options.content = + hashStrategy === "minimal-subset" && /\[local\]/.test(localIdentName) + ? relativeResourcePath + : `${relativeResourcePath}\x00${localName}`; + + let { hashFunction, hashDigest, hashDigestLength } = options; + const matches = localIdentName.match( + /\[(?:([^:\]]+):)?(?:(hash|contenthash|fullhash))(?::([a-z]+\d*))?(?::(\d+))?\]/i, + ); - // Using `[path]` placeholder outputs `/` we need escape their - // Also directories can contains invalid characters for css we need escape their too - return cssesc( - interpolateName(loaderContext, localIdentName, options) - // For `[hash]` placeholder - .replace(/^((-?[0-9])|--)/, '_$1') - .replace(filenameReservedRegex, '-') - .replace(reControlChars, '-') - .replace(reRelativePath, '-') - .replace(/\./g, '-'), - { isIdentifier: true } - ).replace(/\\\[local\\\]/gi, localName); + if (matches) { + const hashName = matches[2] || hashFunction; + + hashFunction = matches[1] || hashFunction; + hashDigest = matches[3] || hashDigest; + hashDigestLength = matches[4] || hashDigestLength; + + // `hash` and `contenthash` are same in `loader-utils` context + // let's keep `hash` for backward compatibility + + // eslint-disable-next-line no-param-reassign + localIdentName = localIdentName.replace( + /\[(?:([^:\]]+):)?(?:hash|contenthash|fullhash)(?::([a-z]+\d*))?(?::(\d+))?\]/gi, + () => (hashName === "fullhash" ? "[fullhash]" : "[contenthash]"), + ); + } + + let localIdentHash = ""; + + for (let tier = 0; localIdentHash.length < hashDigestLength; tier++) { + const hash = ( + loaderContext.utils.createHash || + // TODO remove in the next major release + // eslint-disable-next-line no-underscore-dangle + loaderContext._compiler.webpack.util.createHash + )(hashFunction); + + if (hashSalt) { + hash.update(hashSalt); + } + + const tierSalt = Buffer.allocUnsafe(4); + + tierSalt.writeUInt32LE(tier); + + hash.update(tierSalt); + // TODO: bug in webpack with unicode characters with strings + hash.update(Buffer.from(options.content, "utf8")); + + localIdentHash = (localIdentHash + hash.digest(hashDigest)) + // Remove all leading digits + .replace(/^\d+/, "") + // Replace all slashes with underscores (same as in base64url) + .replace(/\//g, "_") + // Remove everything that is not an alphanumeric or underscore + .replace(/[^A-Za-z0-9_]+/g, "") + .slice(0, hashDigestLength); + } + + // TODO need improve on webpack side, we should allow to pass hash/contentHash without chunk property, also `data` for `getPath` should be looks good without chunk property + const ext = path.extname(resourcePath); + const base = path.basename(resourcePath); + const name = base.slice(0, base.length - ext.length); + const data = { + filename: path.relative(context, resourcePath), + contentHash: localIdentHash, + chunk: { + name, + hash: localIdentHash, + contentHash: localIdentHash, + }, + }; + + // eslint-disable-next-line no-underscore-dangle + let result = loaderContext._compilation.getPath(localIdentName, data); + + if (/\[folder\]/gi.test(result)) { + const dirname = path.dirname(resourcePath); + let directory = normalizePath( + path.relative(context, `${dirname + path.sep}_`), + ); + + directory = directory.substring(0, directory.length - 1); + + let folder = ""; + + if (directory.length > 1) { + folder = path.basename(directory); + } + + result = result.replace(/\[folder\]/gi, () => folder); + } + + if (options.regExp) { + const match = resourcePath.match(options.regExp); + + if (match) { + match.forEach((matched, i) => { + result = result.replace(new RegExp(`\\[${i}\\]`, "ig"), matched); + }); + } + } + + return result; } +function fixedEncodeURIComponent(str) { + return str.replace(/[!'()*]/g, (c) => `%${c.charCodeAt(0).toString(16)}`); +} + +function isDataUrl(url) { + if (/^data:/i.test(url)) { + return true; + } + + return false; +} + +const NATIVE_WIN32_PATH = /^[A-Z]:[/\\]|^\\\\/i; + function normalizeUrl(url, isStringValue) { - let normalizedUrl = url; + let normalizedUrl = url + .replace(/^( |\t\n|\r\n|\r|\f)*/g, "") + .replace(/( |\t\n|\r\n|\r|\f)*$/g, ""); + + if (isStringValue && /\\(\n|\r\n|\r|\f)/.test(normalizedUrl)) { + normalizedUrl = normalizedUrl.replace(/\\(\n|\r\n|\r|\f)/g, ""); + } + + if (NATIVE_WIN32_PATH.test(url)) { + try { + normalizedUrl = decodeURI(normalizedUrl); + } catch (error) { + // Ignore + } - if (isStringValue && /\\[\n]/.test(normalizedUrl)) { - normalizedUrl = normalizedUrl.replace(/\\[\n]/g, ''); + return normalizedUrl; } - return urlToRequest(decodeURIComponent(unescape(normalizedUrl))); + normalizedUrl = unescape(normalizedUrl); + + if (isDataUrl(url)) { + // Todo fixedEncodeURIComponent is workaround. Webpack resolver shouldn't handle "!" in dataURL + return fixedEncodeURIComponent(normalizedUrl); + } + + try { + normalizedUrl = decodeURI(normalizedUrl); + } catch (error) { + // Ignore + } + + return normalizedUrl; } -function getFilter(filter, resourcePath, defaultFilter = null) { - return (item) => { - if (defaultFilter && !defaultFilter(item)) { - return false; +function requestify(url, rootContext, needToResolveURL = true) { + if (needToResolveURL) { + if (/^file:/i.test(url)) { + return fileURLToPath(url); } - if (typeof filter === 'function') { - return filter(item, resourcePath); + return url.charAt(0) === "/" + ? urlToRequest(url, rootContext) + : urlToRequest(url); + } + + if (url.charAt(0) === "/" || /^file:/i.test(url)) { + return url; + } + + // A `~` makes the url an module + if (IS_MODULE_REQUEST.test(url)) { + return url.replace(IS_MODULE_REQUEST, ""); + } + + return url; +} + +function getFilter(filter, resourcePath) { + return (...args) => { + if (typeof filter === "function") { + return filter(...args, resourcePath); } return true; }; } -function shouldUseModulesPlugins(modules, resourcePath) { - if (typeof modules === 'undefined') { +function getValidLocalName(localName, exportLocalsConvention) { + const result = exportLocalsConvention(localName); + + return Array.isArray(result) ? result[0] : result; +} + +const IS_MODULES = /\.module(s)?\.\w+$/i; +const IS_ICSS = /\.icss\.\w+$/i; + +function getModulesOptions(rawOptions, esModule, exportType, loaderContext) { + if (typeof rawOptions.modules === "boolean" && rawOptions.modules === false) { return false; } - if (typeof modules === 'boolean') { - return modules; + const resourcePath = + // eslint-disable-next-line no-underscore-dangle + (loaderContext._module && loaderContext._module.matchResource) || + loaderContext.resourcePath; + + let auto; + let rawModulesOptions; + + if (typeof rawOptions.modules === "undefined") { + rawModulesOptions = {}; + auto = true; + } else if (typeof rawOptions.modules === "boolean") { + rawModulesOptions = {}; + } else if (typeof rawOptions.modules === "string") { + rawModulesOptions = { mode: rawOptions.modules }; + } else { + rawModulesOptions = rawOptions.modules; + ({ auto } = rawModulesOptions); } - if (typeof modules === 'string') { - return true; + const needNamedExport = + exportType === "css-style-sheet" || exportType === "string"; + const namedExport = + typeof rawModulesOptions.namedExport !== "undefined" + ? rawModulesOptions.namedExport + : needNamedExport || esModule; + const exportLocalsConvention = + typeof rawModulesOptions.exportLocalsConvention !== "undefined" + ? rawModulesOptions.exportLocalsConvention + : namedExport + ? "as-is" + : "camel-case-only"; + const modulesOptions = { + auto, + mode: "local", + exportGlobals: false, + localIdentName: "[hash:base64]", + localIdentContext: loaderContext.rootContext, + // eslint-disable-next-line no-underscore-dangle + localIdentHashSalt: + loaderContext.hashSalt || + // TODO remove in the next major release + // eslint-disable-next-line no-underscore-dangle + loaderContext._compilation.outputOptions.hashSalt, + localIdentHashFunction: + loaderContext.hashFunction || + // TODO remove in the next major release + // eslint-disable-next-line no-underscore-dangle + loaderContext._compilation.outputOptions.hashFunction, + localIdentHashDigest: + loaderContext.hashDigest || + // TODO remove in the next major release + // eslint-disable-next-line no-underscore-dangle + loaderContext._compilation.outputOptions.hashDigest, + localIdentHashDigestLength: + loaderContext.hashDigestLength || + // TODO remove in the next major release + // eslint-disable-next-line no-underscore-dangle + loaderContext._compilation.outputOptions.hashDigestLength, + // eslint-disable-next-line no-undefined + localIdentRegExp: undefined, + // eslint-disable-next-line no-undefined + getLocalIdent: undefined, + // TODO improve me and enable by default + exportOnlyLocals: false, + ...rawModulesOptions, + exportLocalsConvention, + namedExport, + }; + + if (typeof modulesOptions.exportLocalsConvention === "string") { + // eslint-disable-next-line no-shadow + const { exportLocalsConvention } = modulesOptions; + + modulesOptions.exportLocalsConvention = (name) => { + switch (exportLocalsConvention) { + case "camel-case": + case "camelCase": { + return [name, camelCase(name)]; + } + case "camel-case-only": + case "camelCaseOnly": { + return camelCase(name); + } + case "dashes": { + return [name, dashesCamelCase(name)]; + } + case "dashes-only": + case "dashesOnly": { + return dashesCamelCase(name); + } + case "as-is": + case "asIs": + default: + return name; + } + }; + } + + if (typeof modulesOptions.auto === "boolean") { + const isModules = modulesOptions.auto && IS_MODULES.test(resourcePath); + + let isIcss; + + if (!isModules) { + isIcss = IS_ICSS.test(resourcePath); + + if (isIcss) { + modulesOptions.mode = "icss"; + } + } + + if (!isModules && !isIcss) { + return false; + } + } else if (modulesOptions.auto instanceof RegExp) { + const isModules = modulesOptions.auto.test(resourcePath); + + if (!isModules) { + return false; + } + } else if (typeof modulesOptions.auto === "function") { + const { resourceQuery, resourceFragment } = loaderContext; + const isModule = modulesOptions.auto( + resourcePath, + resourceQuery, + resourceFragment, + ); + + if (!isModule) { + return false; + } } - if (typeof modules.auto === 'boolean') { - return modules.auto ? /\.module\.\w+$/i.test(resourcePath) : false; + if (typeof modulesOptions.mode === "function") { + modulesOptions.mode = modulesOptions.mode( + loaderContext.resourcePath, + loaderContext.resourceQuery, + loaderContext.resourceFragment, + ); } - if (modules.auto instanceof RegExp) { - return modules.auto.test(resourcePath); + if (needNamedExport) { + if (esModule === false) { + throw new Error( + "The 'exportType' option with the 'css-style-sheet' or 'string' value requires the 'esModule' option to be enabled", + ); + } + + if (modulesOptions.namedExport === false) { + throw new Error( + "The 'exportType' option with the 'css-style-sheet' or 'string' value requires the 'modules.namedExport' option to be enabled", + ); + } } - return true; + if (modulesOptions.namedExport === true && esModule === false) { + throw new Error( + "The 'modules.namedExport' option requires the 'esModule' option to be enabled", + ); + } + + return modulesOptions; } -function getModulesPlugins(options, loaderContext) { - let modulesOptions = { - mode: 'local', - exportGlobals: false, - localIdentName: '[hash:base64]', - getLocalIdent, - hashPrefix: '', - localIdentRegExp: null, +function normalizeOptions(rawOptions, loaderContext) { + const exportType = + typeof rawOptions.exportType === "undefined" + ? "array" + : rawOptions.exportType; + const esModule = + typeof rawOptions.esModule === "undefined" ? true : rawOptions.esModule; + const modulesOptions = getModulesOptions( + rawOptions, + esModule, + exportType, + loaderContext, + ); + + return { + url: typeof rawOptions.url === "undefined" ? true : rawOptions.url, + import: typeof rawOptions.import === "undefined" ? true : rawOptions.import, + modules: modulesOptions, + sourceMap: + typeof rawOptions.sourceMap === "boolean" + ? rawOptions.sourceMap + : loaderContext.sourceMap, + importLoaders: + typeof rawOptions.importLoaders === "string" + ? parseInt(rawOptions.importLoaders, 10) + : rawOptions.importLoaders, + esModule, + exportType, }; +} - if ( - typeof options.modules === 'boolean' || - typeof options.modules === 'string' - ) { - modulesOptions.mode = - typeof options.modules === 'string' ? options.modules : 'local'; - } else { - modulesOptions = Object.assign({}, modulesOptions, options.modules); +function shouldUseImportPlugin(options) { + if (options.modules.exportOnlyLocals) { + return false; } - if (typeof modulesOptions.mode === 'function') { - modulesOptions.mode = modulesOptions.mode(loaderContext.resourcePath); + if (typeof options.import === "boolean") { + return options.import; + } + + return true; +} + +function shouldUseURLPlugin(options) { + if (options.modules.exportOnlyLocals) { + return false; + } + + if (typeof options.url === "boolean") { + return options.url; + } + + return true; +} + +function shouldUseModulesPlugins(options) { + if (typeof options.modules === "boolean" && options.modules === false) { + return false; } + return options.modules.mode !== "icss"; +} + +function shouldUseIcssPlugin(options) { + return Boolean(options.modules); +} + +function getModulesPlugins(options, loaderContext) { + const { + mode, + getLocalIdent, + localIdentName, + localIdentContext, + localIdentHashSalt, + localIdentHashFunction, + localIdentHashDigest, + localIdentHashDigestLength, + localIdentRegExp, + hashStrategy, + } = options.modules; + let plugins = []; try { plugins = [ modulesValues, - localByDefault({ mode: modulesOptions.mode }), + localByDefault({ mode }), extractImports(), modulesScope({ - generateScopedName: function generateScopedName(exportName) { - let localIdent = modulesOptions.getLocalIdent( - loaderContext, - modulesOptions.localIdentName, - exportName, - { - context: modulesOptions.context, - hashPrefix: modulesOptions.hashPrefix, - regExp: modulesOptions.localIdentRegExp, - } - ); + generateScopedName(exportName, resourceFile, rawCss, node) { + let localIdent; - if (!localIdent) { + if (typeof getLocalIdent !== "undefined") { localIdent = getLocalIdent( loaderContext, - modulesOptions.localIdentName, - exportName, + localIdentName, + unescape(exportName), { - context: modulesOptions.context, - hashPrefix: modulesOptions.hashPrefix, - regExp: modulesOptions.localIdentRegExp, - } + context: localIdentContext, + hashSalt: localIdentHashSalt, + hashFunction: localIdentHashFunction, + hashDigest: localIdentHashDigest, + hashDigestLength: localIdentHashDigestLength, + hashStrategy, + regExp: localIdentRegExp, + node, + }, ); } - return localIdent; + // A null/undefined value signals that we should invoke the default + // getLocalIdent method. + if (typeof localIdent === "undefined" || localIdent === null) { + localIdent = defaultGetLocalIdent( + loaderContext, + localIdentName, + unescape(exportName), + { + context: localIdentContext, + hashSalt: localIdentHashSalt, + hashFunction: localIdentHashFunction, + hashDigest: localIdentHashDigest, + hashDigestLength: localIdentHashDigestLength, + hashStrategy, + regExp: localIdentRegExp, + node, + }, + ); + + return escapeLocalIdent(localIdent).replace( + /\\\[local\\]/gi, + exportName, + ); + } + + return escapeLocalIdent(localIdent); }, - exportGlobals: modulesOptions.exportGlobals, + exportGlobals: options.modules.exportGlobals, }), ]; } catch (error) { @@ -189,28 +811,62 @@ function getModulesPlugins(options, loaderContext) { return plugins; } -function normalizeSourceMap(map) { +const ABSOLUTE_SCHEME = /^[a-z0-9+\-.]+:/i; + +function getURLType(source) { + if (source[0] === "/") { + if (source[1] === "/") { + return "scheme-relative"; + } + + return "path-absolute"; + } + + if (IS_NATIVE_WIN32_PATH.test(source)) { + return "path-absolute"; + } + + return ABSOLUTE_SCHEME.test(source) ? "absolute" : "path-relative"; +} + +function normalizeSourceMap(map, resourcePath) { let newMap = map; // Some loader emit source map as string // Strip any JSON XSSI avoidance prefix from the string (as documented in the source maps specification), and then parse the string as JSON. - if (typeof newMap === 'string') { + if (typeof newMap === "string") { newMap = JSON.parse(newMap); } - // Source maps should use forward slash because it is URLs (https://github.com/mozilla/source-map/issues/91) - // We should normalize path because previous loaders like `sass-loader` using backslash when generate source map + delete newMap.file; - if (newMap.file) { - newMap.file = normalizePath(newMap.file); - } + const { sourceRoot } = newMap; - if (newMap.sourceRoot) { - newMap.sourceRoot = normalizePath(newMap.sourceRoot); - } + delete newMap.sourceRoot; if (newMap.sources) { - newMap.sources = newMap.sources.map((source) => normalizePath(source)); + // Source maps should use forward slash because it is URLs (https://github.com/mozilla/source-map/issues/91) + // We should normalize path because previous loaders like `sass-loader` using backslash when generate source map + newMap.sources = newMap.sources.map((source) => { + // Non-standard syntax from `postcss` + if (source.indexOf("<") === 0) { + return source; + } + + const sourceType = getURLType(source); + + // Do no touch `scheme-relative` and `absolute` URLs + if (sourceType === "path-relative" || sourceType === "path-absolute") { + const absoluteSource = + sourceType === "path-relative" && sourceRoot + ? path.resolve(sourceRoot, normalizePath(source)) + : normalizePath(source); + + return path.relative(path.dirname(resourcePath), absoluteSource); + } + + return source; + }); } return newMap; @@ -225,15 +881,15 @@ function getPreRequester({ loaders, loaderIndex }) { } if (number === false) { - cache[number] = ''; + cache[number] = ""; } else { const loadersRequest = loaders .slice( loaderIndex, - loaderIndex + 1 + (typeof number !== 'number' ? 0 : number) + loaderIndex + 1 + (typeof number !== "number" ? 0 : number), ) .map((x) => x.request) - .join('!'); + .join("!"); cache[number] = `-!${loadersRequest}!`; } @@ -242,190 +898,604 @@ function getPreRequester({ loaders, loaderIndex }) { }; } -function getImportCode(loaderContext, exportType, imports, esModule) { - let code = ''; +function getImportCode(imports, options) { + let code = ""; - if (exportType === 'full') { - const apiUrl = stringifyRequest( - loaderContext, - require.resolve('./runtime/api') - ); + for (const item of imports) { + const { importName, url, icss, type } = item; + + if (options.esModule) { + if (icss && options.modules.namedExport) { + code += `import ${ + options.modules.exportOnlyLocals ? "" : `${importName}, ` + }* as ${importName}_NAMED___ from ${url};\n`; + } else { + code += + type === "url" + ? `var ${importName} = new URL(${url}, import.meta.url);\n` + : `import ${importName} from ${url};\n`; + } + } else { + code += `var ${importName} = require(${url});\n`; + } + } + + return code ? `// Imports\n${code}` : ""; +} + +function normalizeSourceMapForRuntime(map, loaderContext) { + const resultMap = map ? map.toJSON() : null; + + if (resultMap) { + delete resultMap.file; + + /* eslint-disable no-underscore-dangle */ + if ( + loaderContext._compilation && + loaderContext._compilation.options && + loaderContext._compilation.options.devtool && + loaderContext._compilation.options.devtool.includes("nosources") + ) { + /* eslint-enable no-underscore-dangle */ - code += esModule - ? `import ___CSS_LOADER_API_IMPORT___ from ${apiUrl};\n` - : `var ___CSS_LOADER_API_IMPORT___ = require(${apiUrl});\n`; + delete resultMap.sourcesContent; + } + + resultMap.sourceRoot = ""; + resultMap.sources = resultMap.sources.map((source) => { + // Non-standard syntax from `postcss` + if (source.indexOf("<") === 0) { + return source; + } + + const sourceType = getURLType(source); + + if (sourceType !== "path-relative") { + return source; + } + + const resourceDirname = path.dirname(loaderContext.resourcePath); + const absoluteSource = path.resolve(resourceDirname, source); + const contextifyPath = normalizePath( + path.relative(loaderContext.rootContext, absoluteSource), + ); + + return `webpack://./${contextifyPath}`; + }); } - for (const item of imports) { - const { importName, url } = item; + return JSON.stringify(resultMap); +} + +function printParams(media, dedupe, supports, layer) { + let result = ""; - code += esModule - ? `import ${importName} from ${url};\n` - : `var ${importName} = require(${url});\n`; + if (typeof layer !== "undefined") { + result = `, ${JSON.stringify(layer)}`; } - return code ? `// Imports\n${code}` : ''; + if (typeof supports !== "undefined") { + result = `, ${JSON.stringify(supports)}${result}`; + } else if (result.length > 0) { + result = `, undefined${result}`; + } + + if (dedupe) { + result = `, true${result}`; + } else if (result.length > 0) { + result = `, false${result}`; + } + + if (media) { + result = `${JSON.stringify(media)}${result}`; + } else if (result.length > 0) { + result = `""${result}`; + } + + return result; } function getModuleCode( result, - exportType, - sourceMap, - apiImports, - urlReplacements, - icssReplacements, - esModule + api, + replacements, + options, + isTemplateLiteralSupported, + loaderContext, ) { - if (exportType !== 'full') { - return ''; + if (options.modules.exportOnlyLocals === true) { + return ""; } - const { css, map } = result; - const sourceMapValue = sourceMap && map ? `,${map}` : ''; + let sourceMapValue = ""; - let code = JSON.stringify(css); - let beforeCode = ''; + if (options.sourceMap) { + const sourceMap = result.map; - beforeCode += esModule - ? `var exports = ___CSS_LOADER_API_IMPORT___(${sourceMap});\n` - : `exports = ___CSS_LOADER_API_IMPORT___(${sourceMap});\n`; + sourceMapValue = `,${normalizeSourceMapForRuntime( + sourceMap, + loaderContext, + )}`; + } - for (const item of apiImports) { - const { type, media, dedupe } = item; + let code = isTemplateLiteralSupported + ? convertToTemplateLiteral(result.css) + : JSON.stringify(result.css); - beforeCode += - type === 'internal' - ? `exports.i(${item.importName}${ - media ? `, ${JSON.stringify(media)}` : dedupe ? ', ""' : '' - }${dedupe ? ', true' : ''});\n` - : `exports.push([module.id, ${JSON.stringify( - `@import url(${item.url});` - )}${media ? `, ${JSON.stringify(media)}` : ''}]);\n`; - } + let beforeCode = `var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(${ + options.sourceMap + ? "___CSS_LOADER_API_SOURCEMAP_IMPORT___" + : "___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___" + });\n`; - for (const item of urlReplacements) { - const { replacementName, importName, hash, needQuotes } = item; + for (const item of api) { + const { url, layer, supports, media, dedupe } = item; - const getUrlOptions = [] - .concat(hash ? [`hash: ${JSON.stringify(hash)}`] : []) - .concat(needQuotes ? 'needQuotes: true' : []); - const preparedOptions = - getUrlOptions.length > 0 ? `, { ${getUrlOptions.join(', ')} }` : ''; + if (url) { + // eslint-disable-next-line no-undefined + const printedParam = printParams(media, undefined, supports, layer); - beforeCode += `var ${replacementName} = ___CSS_LOADER_GET_URL_IMPORT___(${importName}${preparedOptions});\n`; + beforeCode += `___CSS_LOADER_EXPORT___.push([module.id, ${JSON.stringify( + `@import url(${url});`, + )}${printedParam.length > 0 ? `, ${printedParam}` : ""}]);\n`; + } else { + const printedParam = printParams(media, dedupe, supports, layer); - code = code.replace( - new RegExp(replacementName, 'g'), - () => `" + ${replacementName} + "` - ); + beforeCode += `___CSS_LOADER_EXPORT___.i(${item.importName}${ + printedParam.length > 0 ? `, ${printedParam}` : "" + });\n`; + } } - for (const replacement of icssReplacements) { - const { replacementName, importName, localName } = replacement; + for (const item of replacements) { + const { replacementName, importName, localName } = item; + + if (localName) { + code = code.replace(new RegExp(replacementName, "g"), () => + options.modules.namedExport + ? isTemplateLiteralSupported + ? `\${ ${importName}_NAMED___[${JSON.stringify( + getValidLocalName( + localName, + options.modules.exportLocalsConvention, + ), + )}] }` + : `" + ${importName}_NAMED___[${JSON.stringify( + getValidLocalName( + localName, + options.modules.exportLocalsConvention, + ), + )}] + "` + : isTemplateLiteralSupported + ? `\${${importName}.locals[${JSON.stringify(localName)}]}` + : `" + ${importName}.locals[${JSON.stringify(localName)}] + "`, + ); + } else { + const { hash, needQuotes } = item; + const getUrlOptions = [] + .concat(hash ? [`hash: ${JSON.stringify(hash)}`] : []) + .concat(needQuotes ? "needQuotes: true" : []); + const preparedOptions = + getUrlOptions.length > 0 ? `, { ${getUrlOptions.join(", ")} }` : ""; + + beforeCode += `var ${replacementName} = ___CSS_LOADER_GET_URL_IMPORT___(${importName}${preparedOptions});\n`; + code = code.replace(new RegExp(replacementName, "g"), () => + isTemplateLiteralSupported + ? `\${${replacementName}}` + : `" + ${replacementName} + "`, + ); + } + } - code = code.replace( - new RegExp(replacementName, 'g'), - () => `" + ${importName}.locals[${JSON.stringify(localName)}] + "` - ); + // Indexes description: + // 0 - module id + // 1 - CSS code + // 2 - media + // 3 - source map + // 4 - supports + // 5 - layer + return `${beforeCode}// Module\n___CSS_LOADER_EXPORT___.push([module.id, ${code}, ""${sourceMapValue}]);\n`; +} + +const SLASH = "\\".charCodeAt(0); +const BACKTICK = "`".charCodeAt(0); +const DOLLAR = "$".charCodeAt(0); + +function convertToTemplateLiteral(str) { + let escapedString = ""; + + for (let i = 0; i < str.length; i++) { + const code = str.charCodeAt(i); + + escapedString += + code === SLASH || code === BACKTICK || code === DOLLAR + ? `\\${str[i]}` + : str[i]; } - return `${beforeCode}// Module\nexports.push([module.id, ${code}, ""${sourceMapValue}]);\n`; + return `\`${escapedString}\``; } function dashesCamelCase(str) { return str.replace(/-+(\w)/g, (match, firstLetter) => - firstLetter.toUpperCase() + firstLetter.toUpperCase(), ); } +const validIdentifier = /^[a-zA-Z_$][a-zA-Z0-9_$]*$/u; +const keywords = new Set([ + "abstract", + "boolean", + "break", + "byte", + "case", + "catch", + "char", + "class", + "const", + "continue", + "debugger", + "default", + "delete", + "do", + "double", + "else", + "enum", + "export", + "extends", + "false", + "final", + "finally", + "float", + "for", + "function", + "goto", + "if", + "implements", + "import", + "in", + "instanceof", + "int", + "interface", + "long", + "native", + "new", + "null", + "package", + "private", + "protected", + "public", + "return", + "short", + "static", + "super", + "switch", + "synchronized", + "this", + "throw", + "throws", + "transient", + "true", + "try", + "typeof", + "var", + "void", + "volatile", + "while", + "with", +]); + function getExportCode( exports, - exportType, - localsConvention, - icssReplacements, - esModule + replacements, + icssPluginUsed, + options, + isTemplateLiteralSupported, ) { - let code = ''; - let localsCode = ''; + let code = "// Exports\n"; - const addExportToLocalsCode = (name, value) => { - if (localsCode) { - localsCode += `,\n`; - } + if (icssPluginUsed) { + let localsCode = ""; + let identifierId = 0; - localsCode += `\t${JSON.stringify(name)}: ${JSON.stringify(value)}`; - }; + const addExportToLocalsCode = (names, value) => { + const normalizedNames = Array.isArray(names) + ? new Set(names) + : new Set([names]); - for (const { name, value } of exports) { - switch (localsConvention) { - case 'camelCase': { - addExportToLocalsCode(name, value); + for (let name of normalizedNames) { + const serializedValue = isTemplateLiteralSupported + ? convertToTemplateLiteral(value) + : JSON.stringify(value); - const modifiedName = camelCase(name); + if (options.modules.namedExport) { + if (name === "default") { + name = `_${name}`; + } - if (modifiedName !== name) { - addExportToLocalsCode(modifiedName, value); - } - break; - } - case 'camelCaseOnly': { - addExportToLocalsCode(camelCase(name), value); - break; - } - case 'dashes': { - addExportToLocalsCode(name, value); + if (!validIdentifier.test(name) || keywords.has(name)) { + identifierId += 1; - const modifiedName = dashesCamelCase(name); + const id = `_${identifierId.toString(16)}`; - if (modifiedName !== name) { - addExportToLocalsCode(modifiedName, value); + localsCode += `var ${id} = ${serializedValue};\n`; + localsCode += `export { ${id} as ${JSON.stringify(name)} };\n`; + } else { + localsCode += `export var ${name} = ${serializedValue};\n`; + } + } else { + if (localsCode) { + localsCode += `,\n`; + } + + localsCode += `\t${JSON.stringify(name)}: ${serializedValue}`; } - break; } - case 'dashesOnly': { - addExportToLocalsCode(dashesCamelCase(name), value); - break; + }; + + for (const { name, value } of exports) { + addExportToLocalsCode( + options.modules.exportLocalsConvention(name), + value, + ); + } + + for (const item of replacements) { + const { replacementName, localName } = item; + + if (localName) { + const { importName } = item; + + localsCode = localsCode.replace( + new RegExp(replacementName, "g"), + () => { + if (options.modules.namedExport) { + return isTemplateLiteralSupported + ? `\${${importName}_NAMED___[${JSON.stringify( + getValidLocalName( + localName, + options.modules.exportLocalsConvention, + ), + )}]}` + : `" + ${importName}_NAMED___[${JSON.stringify( + getValidLocalName( + localName, + options.modules.exportLocalsConvention, + ), + )}] + "`; + } else if (options.modules.exportOnlyLocals) { + return isTemplateLiteralSupported + ? `\${${importName}[${JSON.stringify(localName)}]}` + : `" + ${importName}[${JSON.stringify(localName)}] + "`; + } + + return isTemplateLiteralSupported + ? `\${${importName}.locals[${JSON.stringify(localName)}]}` + : `" + ${importName}.locals[${JSON.stringify(localName)}] + "`; + }, + ); + } else { + localsCode = localsCode.replace(new RegExp(replacementName, "g"), () => + isTemplateLiteralSupported + ? `\${${replacementName}}` + : `" + ${replacementName} + "`, + ); } - case 'asIs': - default: - addExportToLocalsCode(name, value); - break; } + + if (options.modules.exportOnlyLocals) { + code += options.modules.namedExport + ? localsCode + : `${ + options.esModule ? "export default" : "module.exports =" + } {\n${localsCode}\n};\n`; + + return code; + } + + code += options.modules.namedExport + ? localsCode + : `___CSS_LOADER_EXPORT___.locals = {${ + localsCode ? `\n${localsCode}\n` : "" + }};\n`; } - for (const replacement of icssReplacements) { - const { replacementName, importName, localName } = replacement; + const isCSSStyleSheetExport = options.exportType === "css-style-sheet"; - localsCode = localsCode.replace(new RegExp(replacementName, 'g'), () => - exportType === 'locals' - ? `" + ${importName}[${JSON.stringify(localName)}] + "` - : `" + ${importName}.locals[${JSON.stringify(localName)}] + "` - ); + if (isCSSStyleSheetExport) { + code += "var ___CSS_LOADER_STYLE_SHEET___ = new CSSStyleSheet();\n"; + code += + "___CSS_LOADER_STYLE_SHEET___.replaceSync(___CSS_LOADER_EXPORT___.toString());\n"; } - if (exportType === 'locals') { - code += `${esModule ? 'export default' : 'module.exports ='} ${ - localsCode ? `{\n${localsCode}\n}` : '{}' - };\n`; - } else { - if (localsCode) { - code += `exports.locals = {\n${localsCode}\n};\n`; + let finalExport; + + switch (options.exportType) { + case "string": + finalExport = "___CSS_LOADER_EXPORT___.toString()"; + break; + case "css-style-sheet": + finalExport = "___CSS_LOADER_STYLE_SHEET___"; + break; + default: + case "array": + finalExport = "___CSS_LOADER_EXPORT___"; + break; + } + + code += `${ + options.esModule ? "export default" : "module.exports =" + } ${finalExport};\n`; + + return code; +} + +async function resolveRequests(resolve, context, possibleRequests) { + return resolve(context, possibleRequests[0]) + .then((result) => result) + .catch((error) => { + const [, ...tailPossibleRequests] = possibleRequests; + + if (tailPossibleRequests.length === 0) { + throw error; + } + + return resolveRequests(resolve, context, tailPossibleRequests); + }); +} + +function isURLRequestable(url, options = {}) { + // Protocol-relative URLs + if (/^\/\//.test(url)) { + return { requestable: false, needResolve: false }; + } + + // `#` URLs + if (/^#/.test(url)) { + return { requestable: false, needResolve: false }; + } + + // Data URI + if (isDataUrl(url) && options.isSupportDataURL) { + try { + decodeURIComponent(url); + } catch (ignoreError) { + return { requestable: false, needResolve: false }; + } + + return { requestable: true, needResolve: false }; + } + + // `file:` protocol + if (/^file:/i.test(url)) { + return { requestable: true, needResolve: true }; + } + + // Absolute URLs + if (/^[a-z][a-z0-9+.-]*:/i.test(url) && !NATIVE_WIN32_PATH.test(url)) { + if (options.isSupportAbsoluteURL && /^https?:/i.test(url)) { + return { requestable: true, needResolve: false }; } - code += `${esModule ? 'export default' : 'module.exports ='} exports;\n`; + return { requestable: false, needResolve: false }; + } + + return { requestable: true, needResolve: true }; +} + +function sort(a, b) { + return a.index - b.index; +} + +function combineRequests(preRequest, url) { + const idx = url.indexOf("!=!"); + + return idx !== -1 + ? url.slice(0, idx + 3) + preRequest + url.slice(idx + 3) + : preRequest + url; +} + +function warningFactory(warning) { + let message = ""; + + if (typeof warning.line !== "undefined") { + message += `(${warning.line}:${warning.column}) `; + } + + if (typeof warning.plugin !== "undefined") { + message += `from "${warning.plugin}" plugin: `; + } + + message += warning.text; + + if (warning.node) { + message += `\n\nCode:\n ${warning.node.toString()}\n`; + } + + const obj = new Error(message, { cause: warning }); + + obj.stack = null; + + return obj; +} + +function syntaxErrorFactory(error) { + let message = "\nSyntaxError\n\n"; + + if (typeof error.line !== "undefined") { + message += `(${error.line}:${error.column}) `; + } + + if (typeof error.plugin !== "undefined") { + message += `from "${error.plugin}" plugin: `; + } + + message += error.file ? `${error.file} ` : " "; + message += `${error.reason}`; + + const code = error.showSourceCode(); + + if (code) { + message += `\n\n${code}\n`; } - return `// Exports\n${code}`; + const obj = new Error(message, { cause: error }); + + obj.stack = null; + + return obj; +} + +function supportTemplateLiteral(loaderContext) { + if (loaderContext.environment && loaderContext.environment.templateLiteral) { + return true; + } + + // TODO remove in the next major release + if ( + // eslint-disable-next-line no-underscore-dangle + loaderContext._compilation && + // eslint-disable-next-line no-underscore-dangle + loaderContext._compilation.options && + // eslint-disable-next-line no-underscore-dangle + loaderContext._compilation.options.output && + // eslint-disable-next-line no-underscore-dangle + loaderContext._compilation.options.output.environment && + // eslint-disable-next-line no-underscore-dangle + loaderContext._compilation.options.output.environment.templateLiteral + ) { + return true; + } + + return false; } export { + normalizeOptions, + shouldUseModulesPlugins, + shouldUseImportPlugin, + shouldUseURLPlugin, + shouldUseIcssPlugin, normalizeUrl, + requestify, getFilter, + getModulesOptions, getModulesPlugins, normalizeSourceMap, getPreRequester, getImportCode, getModuleCode, getExportCode, - shouldUseModulesPlugins, + resolveRequests, + isURLRequestable, + sort, + WEBPACK_IGNORE_COMMENT_REGEXP, + combineRequests, + camelCase, + stringifyRequest, + isDataUrl, + defaultGetLocalIdent, + warningFactory, + syntaxErrorFactory, + supportTemplateLiteral, }; diff --git a/test/__snapshots__/camelCase.test.js.snap b/test/__snapshots__/camelCase.test.js.snap new file mode 100644 index 00000000..0c42185c --- /dev/null +++ b/test/__snapshots__/camelCase.test.js.snap @@ -0,0 +1,63 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`camelCase should transform 1`] = `""`; + +exports[`camelCase should transform: foo bar 1`] = `"fooBar"`; + +exports[`camelCase should transform: __foo__bar__ 1`] = `"fooBar"`; + +exports[`camelCase should transform: - 1`] = `"-"`; + +exports[`camelCase should transform: --__--_--_ 1`] = `""`; + +exports[`camelCase should transform: --foo..bar 1`] = `"fooBar"`; + +exports[`camelCase should transform: --foo---bar 1`] = `"fooBar"`; + +exports[`camelCase should transform: --foo---bar-- 1`] = `"fooBar"`; + +exports[`camelCase should transform: --foo--1 1`] = `"foo1"`; + +exports[`camelCase should transform: --foo-bar 1`] = `"fooBar"`; + +exports[`camelCase should transform: 1Hello 1`] = `"1Hello"`; + +exports[`camelCase should transform: A::a 1`] = `"a::a"`; + +exports[`camelCase should transform: F 1`] = `"f"`; + +exports[`camelCase should transform: FOO-BAR 1`] = `"fooBar"`; + +exports[`camelCase should transform: FOÈ-BAR 1`] = `"foèBar"`; + +exports[`camelCase should transform: FOÈ-BAr 1`] = `"foèBAr"`; + +exports[`camelCase should transform: Hello1World11foo 1`] = `"hello1World11Foo"`; + +exports[`camelCase should transform: foo 1`] = `"foo"`; + +exports[`camelCase should transform: foo bar 1`] = `"fooBar"`; + +exports[`camelCase should transform: foo bar! 1`] = `"fooBar!"`; + +exports[`camelCase should transform: foo bar# 1`] = `"fooBar#"`; + +exports[`camelCase should transform: foo bar? 1`] = `"fooBar?"`; + +exports[`camelCase should transform: foo_bar 1`] = `"fooBar"`; + +exports[`camelCase should transform: foo--bar 1`] = `"fooBar"`; + +exports[`camelCase should transform: foo-bar 1`] = `"fooBar"`; + +exports[`camelCase should transform: foo-bar-baz 1`] = `"fooBarBaz"`; + +exports[`camelCase should transform: fooBar 1`] = `"fooBar"`; + +exports[`camelCase should transform: fooBar-baz 1`] = `"fooBarBaz"`; + +exports[`camelCase should transform: fooBarBaz-bazzy 1`] = `"fooBarBazBazzy"`; + +exports[`camelCase should transform: h2w 1`] = `"h2W"`; + +exports[`camelCase should transform: mGridCol6@md 1`] = `"mGridCol6@md"`; diff --git a/test/__snapshots__/esModule-option.test.js.snap b/test/__snapshots__/esModule-option.test.js.snap index 9aca855e..96ec754f 100644 --- a/test/__snapshots__/esModule-option.test.js.snap +++ b/test/__snapshots__/esModule-option.test.js.snap @@ -1,42 +1,51 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP -exports[`"esModule" option should work when not specified: errors 1`] = `Array []`; +exports[`"esModule" option should work when not specified: errors 1`] = `[]`; exports[`"esModule" option should work when not specified: module 1`] = ` "// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../src/runtime/api.js\\"); -var ___CSS_LOADER_AT_RULE_IMPORT_0___ = require(\\"-!../../../src/index.js??[ident]!./imported.css\\"); -var ___CSS_LOADER_GET_URL_IMPORT___ = require(\\"../../../src/runtime/getUrl.js\\"); -var ___CSS_LOADER_URL_IMPORT_0___ = require(\\"./img.png\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../src/runtime/api.js"; +import ___CSS_LOADER_AT_RULE_IMPORT_0___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./imported.css"; +import ___CSS_LOADER_GET_URL_IMPORT___ from "../../../src/runtime/getUrl.js"; +var ___CSS_LOADER_URL_IMPORT_0___ = new URL("./img.png", import.meta.url); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); // Module -exports.push([module.id, \\"@charset \\\\\\"UTF-8\\\\\\";\\\\n\\\\n/* Comment */\\\\n\\\\n.class {\\\\n color: red;\\\\n background: url(\\" + ___CSS_LOADER_URL_REPLACEMENT_0___ + \\");\\\\n}\\\\n\\", \\"\\"]); +___CSS_LOADER_EXPORT___.push([module.id, \`@charset "UTF-8"; + +/* Comment */ + +.class { + color: red; + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} +\`, ""]); // Exports -module.exports = exports; +export default ___CSS_LOADER_EXPORT___; " `; exports[`"esModule" option should work when not specified: result 1`] = ` -Array [ - Array [ - "../../src/index.js?[ident]!./es-module/imported.css", +[ + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./es-module/imported.css", ".foo { color: red; } ", "", ], - Array [ + [ "./es-module/source.css", - "@charset \\"UTF-8\\"; + "@charset "UTF-8"; /* Comment */ .class { color: red; - background: url(/webpack/public/path/img.png); + background: url(replaced_file_protocol_/webpack/public/path/img.png); } ", "", @@ -44,39 +53,48 @@ Array [ ] `; -exports[`"esModule" option should work when not specified: warnings 1`] = `Array []`; +exports[`"esModule" option should work when not specified: warnings 1`] = `[]`; -exports[`"esModule" option should work with a value equal to "false": errors 1`] = `Array []`; +exports[`"esModule" option should work with a value equal to "false": errors 1`] = `[]`; exports[`"esModule" option should work with a value equal to "false": module 1`] = ` "// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../src/runtime/api.js\\"); -var ___CSS_LOADER_AT_RULE_IMPORT_0___ = require(\\"-!../../../src/index.js??[ident]!./imported.css\\"); -var ___CSS_LOADER_GET_URL_IMPORT___ = require(\\"../../../src/runtime/getUrl.js\\"); -var ___CSS_LOADER_URL_IMPORT_0___ = require(\\"./img.png\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +var ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ = require("../../../src/runtime/noSourceMaps.js"); +var ___CSS_LOADER_API_IMPORT___ = require("../../../src/runtime/api.js"); +var ___CSS_LOADER_AT_RULE_IMPORT_0___ = require("-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./imported.css"); +var ___CSS_LOADER_GET_URL_IMPORT___ = require("../../../src/runtime/getUrl.js"); +var ___CSS_LOADER_URL_IMPORT_0___ = require("./img.png"); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); // Module -exports.push([module.id, \\"@charset \\\\\\"UTF-8\\\\\\";\\\\n\\\\n/* Comment */\\\\n\\\\n.class {\\\\n color: red;\\\\n background: url(\\" + ___CSS_LOADER_URL_REPLACEMENT_0___ + \\");\\\\n}\\\\n\\", \\"\\"]); +___CSS_LOADER_EXPORT___.push([module.id, \`@charset "UTF-8"; + +/* Comment */ + +.class { + color: red; + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} +\`, ""]); // Exports -module.exports = exports; +module.exports = ___CSS_LOADER_EXPORT___; " `; exports[`"esModule" option should work with a value equal to "false": result 1`] = ` -Array [ - Array [ - "../../src/index.js?[ident]!./es-module/imported.css", +[ + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./es-module/imported.css", ".foo { color: red; } ", "", ], - Array [ + [ "./es-module/source.css", - "@charset \\"UTF-8\\"; + "@charset "UTF-8"; /* Comment */ @@ -90,45 +108,54 @@ Array [ ] `; -exports[`"esModule" option should work with a value equal to "false": warnings 1`] = `Array []`; +exports[`"esModule" option should work with a value equal to "false": warnings 1`] = `[]`; -exports[`"esModule" option should work with a value equal to "true" and the "mode" value equal to "global": errors 1`] = `Array []`; +exports[`"esModule" option should work with a value equal to "true" and the "mode" value equal to "global": errors 1`] = `[]`; exports[`"esModule" option should work with a value equal to "true" and the "mode" value equal to "global": module 1`] = ` "// Imports -import ___CSS_LOADER_API_IMPORT___ from \\"../../../src/runtime/api.js\\"; -import ___CSS_LOADER_AT_RULE_IMPORT_0___ from \\"-!../../../src/index.js??[ident]!./imported.css\\"; -import ___CSS_LOADER_GET_URL_IMPORT___ from \\"../../../src/runtime/getUrl.js\\"; -import ___CSS_LOADER_URL_IMPORT_0___ from \\"./img.png\\"; -var exports = ___CSS_LOADER_API_IMPORT___(false); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../src/runtime/api.js"; +import ___CSS_LOADER_AT_RULE_IMPORT_0___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./imported.css"; +import ___CSS_LOADER_GET_URL_IMPORT___ from "../../../src/runtime/getUrl.js"; +var ___CSS_LOADER_URL_IMPORT_0___ = new URL("./img.png", import.meta.url); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); // Module -exports.push([module.id, \\"@charset \\\\\\"UTF-8\\\\\\";\\\\n\\\\n/* Comment */\\\\n\\\\n.class {\\\\n color: red;\\\\n background: url(\\" + ___CSS_LOADER_URL_REPLACEMENT_0___ + \\");\\\\n}\\\\n\\", \\"\\"]); +___CSS_LOADER_EXPORT___.push([module.id, \`@charset "UTF-8"; + +/* Comment */ + +.class { + color: red; + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} +\`, ""]); // Exports -export default exports; +export default ___CSS_LOADER_EXPORT___; " `; exports[`"esModule" option should work with a value equal to "true" and the "mode" value equal to "global": result 1`] = ` -Array [ - Array [ - "../../src/index.js?[ident]!./es-module/imported.css", +[ + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./es-module/imported.css", ".foo { color: red; } ", "", ], - Array [ + [ "./es-module/source.css", - "@charset \\"UTF-8\\"; + "@charset "UTF-8"; /* Comment */ .class { color: red; - background: url(/webpack/public/path/img.png); + background: url(replaced_file_protocol_/webpack/public/path/img.png); } ", "", @@ -136,48 +163,56 @@ Array [ ] `; -exports[`"esModule" option should work with a value equal to "true" and the "mode" value equal to "global": warnings 1`] = `Array []`; +exports[`"esModule" option should work with a value equal to "true" and the "mode" value equal to "global": warnings 1`] = `[]`; -exports[`"esModule" option should work with a value equal to "true" and the "mode" value equal to "local": errors 1`] = `Array []`; +exports[`"esModule" option should work with a value equal to "true" and the "mode" value equal to "local": errors 1`] = `[]`; exports[`"esModule" option should work with a value equal to "true" and the "mode" value equal to "local": module 1`] = ` "// Imports -import ___CSS_LOADER_API_IMPORT___ from \\"../../../src/runtime/api.js\\"; -import ___CSS_LOADER_AT_RULE_IMPORT_0___ from \\"-!../../../src/index.js??[ident]!./imported.css\\"; -import ___CSS_LOADER_GET_URL_IMPORT___ from \\"../../../src/runtime/getUrl.js\\"; -import ___CSS_LOADER_URL_IMPORT_0___ from \\"./img.png\\"; -var exports = ___CSS_LOADER_API_IMPORT___(false); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../src/runtime/api.js"; +import ___CSS_LOADER_AT_RULE_IMPORT_0___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./imported.css"; +import ___CSS_LOADER_GET_URL_IMPORT___ from "../../../src/runtime/getUrl.js"; +var ___CSS_LOADER_URL_IMPORT_0___ = new URL("./img.png", import.meta.url); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); // Module -exports.push([module.id, \\"@charset \\\\\\"UTF-8\\\\\\";\\\\n\\\\n/* Comment */\\\\n\\\\n._3S58jeCkC6SOPhVLbU-Bwn {\\\\n color: red;\\\\n background: url(\\" + ___CSS_LOADER_URL_REPLACEMENT_0___ + \\");\\\\n}\\\\n\\", \\"\\"]); +___CSS_LOADER_EXPORT___.push([module.id, \`@charset "UTF-8"; + +/* Comment */ + +.OZJqogC5EaF_wROug7zE { + color: red; + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} +\`, ""]); // Exports -exports.locals = { - \\"class\\": \\"_3S58jeCkC6SOPhVLbU-Bwn\\" -}; -export default exports; +var _1 = \`OZJqogC5EaF_wROug7zE\`; +export { _1 as "class" }; +export default ___CSS_LOADER_EXPORT___; " `; exports[`"esModule" option should work with a value equal to "true" and the "mode" value equal to "local": result 1`] = ` -Array [ - Array [ - "../../src/index.js?[ident]!./es-module/imported.css", - "._3xfjtZ03Dx7Cld7Debi-wl { +[ + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./es-module/imported.css", + ".EB7DBFwH4lzwZcKIj2OA { color: red; } ", "", ], - Array [ + [ "./es-module/source.css", - "@charset \\"UTF-8\\"; + "@charset "UTF-8"; /* Comment */ -._3S58jeCkC6SOPhVLbU-Bwn { +.OZJqogC5EaF_wROug7zE { color: red; - background: url(/webpack/public/path/img.png); + background: url(replaced_file_protocol_/webpack/public/path/img.png); } ", "", @@ -185,48 +220,56 @@ Array [ ] `; -exports[`"esModule" option should work with a value equal to "true" and the "mode" value equal to "local": warnings 1`] = `Array []`; +exports[`"esModule" option should work with a value equal to "true" and the "mode" value equal to "local": warnings 1`] = `[]`; -exports[`"esModule" option should work with a value equal to "true" and the "mode" value equal to "pure": errors 1`] = `Array []`; +exports[`"esModule" option should work with a value equal to "true" and the "mode" value equal to "pure": errors 1`] = `[]`; exports[`"esModule" option should work with a value equal to "true" and the "mode" value equal to "pure": module 1`] = ` "// Imports -import ___CSS_LOADER_API_IMPORT___ from \\"../../../src/runtime/api.js\\"; -import ___CSS_LOADER_AT_RULE_IMPORT_0___ from \\"-!../../../src/index.js??[ident]!./imported.css\\"; -import ___CSS_LOADER_GET_URL_IMPORT___ from \\"../../../src/runtime/getUrl.js\\"; -import ___CSS_LOADER_URL_IMPORT_0___ from \\"./img.png\\"; -var exports = ___CSS_LOADER_API_IMPORT___(false); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../src/runtime/api.js"; +import ___CSS_LOADER_AT_RULE_IMPORT_0___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./imported.css"; +import ___CSS_LOADER_GET_URL_IMPORT___ from "../../../src/runtime/getUrl.js"; +var ___CSS_LOADER_URL_IMPORT_0___ = new URL("./img.png", import.meta.url); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); // Module -exports.push([module.id, \\"@charset \\\\\\"UTF-8\\\\\\";\\\\n\\\\n/* Comment */\\\\n\\\\n._3S58jeCkC6SOPhVLbU-Bwn {\\\\n color: red;\\\\n background: url(\\" + ___CSS_LOADER_URL_REPLACEMENT_0___ + \\");\\\\n}\\\\n\\", \\"\\"]); +___CSS_LOADER_EXPORT___.push([module.id, \`@charset "UTF-8"; + +/* Comment */ + +.OZJqogC5EaF_wROug7zE { + color: red; + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} +\`, ""]); // Exports -exports.locals = { - \\"class\\": \\"_3S58jeCkC6SOPhVLbU-Bwn\\" -}; -export default exports; +var _1 = \`OZJqogC5EaF_wROug7zE\`; +export { _1 as "class" }; +export default ___CSS_LOADER_EXPORT___; " `; exports[`"esModule" option should work with a value equal to "true" and the "mode" value equal to "pure": result 1`] = ` -Array [ - Array [ - "../../src/index.js?[ident]!./es-module/imported.css", - "._3xfjtZ03Dx7Cld7Debi-wl { +[ + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./es-module/imported.css", + ".EB7DBFwH4lzwZcKIj2OA { color: red; } ", "", ], - Array [ + [ "./es-module/source.css", - "@charset \\"UTF-8\\"; + "@charset "UTF-8"; /* Comment */ -._3S58jeCkC6SOPhVLbU-Bwn { +.OZJqogC5EaF_wROug7zE { color: red; - background: url(/webpack/public/path/img.png); + background: url(replaced_file_protocol_/webpack/public/path/img.png); } ", "", @@ -234,45 +277,54 @@ Array [ ] `; -exports[`"esModule" option should work with a value equal to "true" and the "mode" value equal to "pure": warnings 1`] = `Array []`; +exports[`"esModule" option should work with a value equal to "true" and the "mode" value equal to "pure": warnings 1`] = `[]`; -exports[`"esModule" option should work with a value equal to "true": errors 1`] = `Array []`; +exports[`"esModule" option should work with a value equal to "true": errors 1`] = `[]`; exports[`"esModule" option should work with a value equal to "true": module 1`] = ` "// Imports -import ___CSS_LOADER_API_IMPORT___ from \\"../../../src/runtime/api.js\\"; -import ___CSS_LOADER_AT_RULE_IMPORT_0___ from \\"-!../../../src/index.js??[ident]!./imported.css\\"; -import ___CSS_LOADER_GET_URL_IMPORT___ from \\"../../../src/runtime/getUrl.js\\"; -import ___CSS_LOADER_URL_IMPORT_0___ from \\"./img.png\\"; -var exports = ___CSS_LOADER_API_IMPORT___(false); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../src/runtime/api.js"; +import ___CSS_LOADER_AT_RULE_IMPORT_0___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./imported.css"; +import ___CSS_LOADER_GET_URL_IMPORT___ from "../../../src/runtime/getUrl.js"; +var ___CSS_LOADER_URL_IMPORT_0___ = new URL("./img.png", import.meta.url); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); // Module -exports.push([module.id, \\"@charset \\\\\\"UTF-8\\\\\\";\\\\n\\\\n/* Comment */\\\\n\\\\n.class {\\\\n color: red;\\\\n background: url(\\" + ___CSS_LOADER_URL_REPLACEMENT_0___ + \\");\\\\n}\\\\n\\", \\"\\"]); +___CSS_LOADER_EXPORT___.push([module.id, \`@charset "UTF-8"; + +/* Comment */ + +.class { + color: red; + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} +\`, ""]); // Exports -export default exports; +export default ___CSS_LOADER_EXPORT___; " `; exports[`"esModule" option should work with a value equal to "true": result 1`] = ` -Array [ - Array [ - "../../src/index.js?[ident]!./es-module/imported.css", +[ + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./es-module/imported.css", ".foo { color: red; } ", "", ], - Array [ + [ "./es-module/source.css", - "@charset \\"UTF-8\\"; + "@charset "UTF-8"; /* Comment */ .class { color: red; - background: url(/webpack/public/path/img.png); + background: url(replaced_file_protocol_/webpack/public/path/img.png); } ", "", @@ -280,4 +332,44 @@ Array [ ] `; -exports[`"esModule" option should work with a value equal to "true": warnings 1`] = `Array []`; +exports[`"esModule" option should work with a value equal to "true": warnings 1`] = `[]`; + +exports[`"esModule" option should work with commonjs css-loader + commonjs mini-css-extract-plugin: errors 1`] = `[]`; + +exports[`"esModule" option should work with commonjs css-loader + commonjs mini-css-extract-plugin: result 1`] = `undefined`; + +exports[`"esModule" option should work with commonjs css-loader + commonjs mini-css-extract-plugin: warnings 1`] = `[]`; + +exports[`"esModule" option should work with commonjs css-loader + commonjs style-loader: errors 1`] = `[]`; + +exports[`"esModule" option should work with commonjs css-loader + commonjs style-loader: warnings 1`] = `[]`; + +exports[`"esModule" option should work with commonjs css-loader + esModule mini-css-extract-plugin: errors 1`] = `[]`; + +exports[`"esModule" option should work with commonjs css-loader + esModule mini-css-extract-plugin: result 1`] = `undefined`; + +exports[`"esModule" option should work with commonjs css-loader + esModule mini-css-extract-plugin: warnings 1`] = `[]`; + +exports[`"esModule" option should work with commonjs css-loader + esModule style-loader: errors 1`] = `[]`; + +exports[`"esModule" option should work with commonjs css-loader + esModule style-loader: warnings 1`] = `[]`; + +exports[`"esModule" option should work with esModule css-loader + commonjs mini-css-extract-plugin: errors 1`] = `[]`; + +exports[`"esModule" option should work with esModule css-loader + commonjs mini-css-extract-plugin: result 1`] = `undefined`; + +exports[`"esModule" option should work with esModule css-loader + commonjs mini-css-extract-plugin: warnings 1`] = `[]`; + +exports[`"esModule" option should work with esModule css-loader + commonjs style-loader: errors 1`] = `[]`; + +exports[`"esModule" option should work with esModule css-loader + commonjs style-loader: warnings 1`] = `[]`; + +exports[`"esModule" option should work with esModule css-loader + esModule mini-css-extract-plugin: errors 1`] = `[]`; + +exports[`"esModule" option should work with esModule css-loader + esModule mini-css-extract-plugin: result 1`] = `undefined`; + +exports[`"esModule" option should work with esModule css-loader + esModule mini-css-extract-plugin: warnings 1`] = `[]`; + +exports[`"esModule" option should work with esModule css-loader + esModule style-loader: errors 1`] = `[]`; + +exports[`"esModule" option should work with esModule css-loader + esModule style-loader: warnings 1`] = `[]`; diff --git a/test/__snapshots__/exportType.test.js.snap b/test/__snapshots__/exportType.test.js.snap new file mode 100644 index 00000000..a0629c92 --- /dev/null +++ b/test/__snapshots__/exportType.test.js.snap @@ -0,0 +1,5172 @@ +// Jest Snapshot v1, https://jestjs.io/docs/snapshot-testing + +exports[`'exportType' option should throw an error with 'css-style-sheet' value for CSS modules when \`esModule\` disabled, but 'modules.namedExport' enabled: errors 1`] = ` +[ + "ModuleBuildError: Module build failed (from \`replaced original path\`): +Error: The 'exportType' option with the 'css-style-sheet' or 'string' value requires the 'esModule' option to be enabled", +] +`; + +exports[`'exportType' option should throw an error with 'css-style-sheet' value for CSS modules when \`esModule\` disabled, but 'modules.namedExport' enabled: warnings 1`] = `[]`; + +exports[`'exportType' option should throw an error with 'css-style-sheet' value for CSS modules when \`esModule\` disabled: errors 1`] = ` +[ + "ModuleBuildError: Module build failed (from \`replaced original path\`): +Error: The 'exportType' option with the 'css-style-sheet' or 'string' value requires the 'esModule' option to be enabled", +] +`; + +exports[`'exportType' option should throw an error with 'css-style-sheet' value for CSS modules when \`esModule\` disabled: warnings 1`] = `[]`; + +exports[`'exportType' option should throw an error with 'css-style-sheet' value for CSS modules when named export disabled: errors 1`] = ` +[ + "ModuleBuildError: Module build failed (from \`replaced original path\`): +Error: The 'exportType' option with the 'css-style-sheet' or 'string' value requires the 'modules.namedExport' option to be enabled", +] +`; + +exports[`'exportType' option should throw an error with 'css-style-sheet' value for CSS modules when named export disabled: warnings 1`] = `[]`; + +exports[`'exportType' option should work and export 'array' by default: errors 1`] = `[]`; + +exports[`'exportType' option should work and export 'array' by default: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../src/runtime/api.js"; +import ___CSS_LOADER_GET_URL_IMPORT___ from "../../src/runtime/getUrl.js"; +var ___CSS_LOADER_URL_IMPORT_0___ = new URL("./url/img.png", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_1___ = new URL("data:img/jpg;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAhxJREFUSA3tk71rU1EYxnMTEoJUkowWwdJ2akEHBfGjCiIF6ZylVUKSm2TqZLGI+A/oIu2UXm8C4lAyF4SWji0tdFLo1Eo7VN0SaBEhH7e/Nz0nPTfGOjiaCyfPc5734zlfCQT6X/8E/vUErL81KBaL9y3LSnued5PcITjUOwR3gsFg2bbtjYt6/NGgXC4P1et1l2aPLmpAbD0SidjpdPqgV15PA9d17zQajU8UxHQRK/4G35Q5pveAK8LlI1ZjPMnlcltnyvnvbwaO41xvtVqy7YHztMACq5xnlb9EY3dRdvcGo1kj5wR+t1AofDG0gM+A875E8DNjRCexsrV8Pj9ZqVQitVrtqejxePxjMpmss5hVTB4buXvMb2DyU2tBTRS+BjvNlVYUpPl7iuVO3Gq1uoQx1FtSOW1gPgp5ZWrdBtNmUDgv5asgxQ8F1af5vhY0YjyjuWC3wTszKJz7GBOkcFlQfW2ONq4FjWi+Hj6DRCKxQOK2TlY4x92EuYd5dvMAbYIzfikau3pu5tJ8KxaLLfo0cyKci7tK4TZjUMcoXAmHwzle0Q/RaC5P1GFMyVx9R9Fo9HYqlTrSgqDvFelAqVQa5hmuMR/WGtjAaBdjwBoDQ0ZsnwVMZjKZ9n0Zem8DSeDPdrnZbL6F2l3NOvUYNZk4oVDoRTabPe4EDNJzB0ZcjAYxeoZ2i3FNxQ7BHYw/cB/fldaH//UETgHHO8S44KbfXgAAAABJRU5ErkJggg==", import.meta.url); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); +var ___CSS_LOADER_URL_REPLACEMENT_1___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_1___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`@charset "UTF-8"; + + +/* Comment */ + +.class { + color: red; + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} + +.class-duplicate-url { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} + +:root { + --foo: 1px; + --bar: 2px; +} + +.class { a: b c d; } + +.two {} + +.u-m\\\\+ { a: b c d; } + +.class { content: "\\\\F10C" } + +@media only screen and (max-width: 600px) { + body { + background-color: lightblue; + } +} + +.class { + content: "\\\\2193"; + content: "\\\\2193\\\\2193"; + content: "\\\\2193 \\\\2193"; + content: "\\\\2193\\\\2193\\\\2193"; + content: "\\\\2193 \\\\2193 \\\\2193"; +} + +.-top {} +.\\\\-top {} + +#\\\\#test {} + +.grid { + display: flex; + flex-wrap: wrap; +} +.grid.\\\\-top { + align-items: flex-start; +} +.grid.-top { + align-items: flex-start; +} +.grid.\\\\-middle { + align-items: center; +} +.grid.\\\\-bottom { + align-items: flex-end; +} + +.u-m\\\\00002b {} + +.u-m00002b {} + +#u-m\\\\+ {} + +body { + font-family: '微软雅黑'; /* some chinese font name */ +} + +.myStyle { + content: '\\\\e901'; +} + +.myStyle { + content: '\\\\E901'; +} + +.♫ {} + +.\\\\3A \\\\\\\`\\\\( {} /* matches elements with class=":\\\`(" */ +.\\\\31 a2b3c {} /* matches elements with class="1a2b3c" */ +#\\\\#fake-id {} /* matches the element with id="#fake-id" */ +#-a-b-c- {} /* matches the element with id="-a-b-c-" */ +#© {} /* matches the element with id="©" */ + +\\\\.\\\\\\\` { + color: aliceblue; +} + +\\\\.\\\\\\$\\\\{foo\\\\} { + color: aliceblue; +} + +/* \\\` */ +/* \\\`\\\` */ +/* \\\`\\\`\\\` */ +/* \\\${} */ +/* \\\\\\\\\\\` */ + +:root { + --title-align: center; + --sr-only: { + position: absolute; + width: 1px; + height: 1px; + padding: 0; + overflow: hidden; + clip: rect(0,0,0,0); + white-space: nowrap; + clip-path: inset(50%); + border: 0; + }; +} + +.test { + content: "\\\\2014\\\\A0"; + content: "\\\\2014 \\\\A0"; + content: "\\\\A0 \\\\2014"; + content: "\\\\A0\\\\2014"; + margin-top: 1px\\\\9; + background-color: #000\\\\9; +} + +.light.on .bulb:before{ + content: '💡'; +} + +.base64 { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_1___}); +} + +a[href=''] { + color: red; +} + +a[href='' i] { + color: red; +} + +a[href=""] { + color: blue; +} + +a[href="" i] { + color: blue; +} +\`, ""]); +// Exports +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`'exportType' option should work and export 'array' by default: result 1`] = ` +[ + [ + "./basic.css", + "@charset "UTF-8"; + + +/* Comment */ + +.class { + color: red; + background: url(replaced_file_protocol_/webpack/public/path/img.png); +} + +.class-duplicate-url { + background: url(replaced_file_protocol_/webpack/public/path/img.png); +} + +:root { + --foo: 1px; + --bar: 2px; +} + +.class { a: b c d; } + +.two {} + +.u-m\\+ { a: b c d; } + +.class { content: "\\F10C" } + +@media only screen and (max-width: 600px) { + body { + background-color: lightblue; + } +} + +.class { + content: "\\2193"; + content: "\\2193\\2193"; + content: "\\2193 \\2193"; + content: "\\2193\\2193\\2193"; + content: "\\2193 \\2193 \\2193"; +} + +.-top {} +.\\-top {} + +#\\#test {} + +.grid { + display: flex; + flex-wrap: wrap; +} +.grid.\\-top { + align-items: flex-start; +} +.grid.-top { + align-items: flex-start; +} +.grid.\\-middle { + align-items: center; +} +.grid.\\-bottom { + align-items: flex-end; +} + +.u-m\\00002b {} + +.u-m00002b {} + +#u-m\\+ {} + +body { + font-family: '微软雅黑'; /* some chinese font name */ +} + +.myStyle { + content: '\\e901'; +} + +.myStyle { + content: '\\E901'; +} + +.♫ {} + +.\\3A \\\`\\( {} /* matches elements with class=":\`(" */ +.\\31 a2b3c {} /* matches elements with class="1a2b3c" */ +#\\#fake-id {} /* matches the element with id="#fake-id" */ +#-a-b-c- {} /* matches the element with id="-a-b-c-" */ +#© {} /* matches the element with id="©" */ + +\\.\\\` { + color: aliceblue; +} + +\\.\\$\\{foo\\} { + color: aliceblue; +} + +/* \` */ +/* \`\` */ +/* \`\`\` */ +/* \${} */ +/* \\\\\` */ + +:root { + --title-align: center; + --sr-only: { + position: absolute; + width: 1px; + height: 1px; + padding: 0; + overflow: hidden; + clip: rect(0,0,0,0); + white-space: nowrap; + clip-path: inset(50%); + border: 0; + }; +} + +.test { + content: "\\2014\\A0"; + content: "\\2014 \\A0"; + content: "\\A0 \\2014"; + content: "\\A0\\2014"; + margin-top: 1px\\9; + background-color: #000\\9; +} + +.light.on .bulb:before{ + content: '💡'; +} + +.base64 { + background: url(data:img/jpg;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAhxJREFUSA3tk71rU1EYxnMTEoJUkowWwdJ2akEHBfGjCiIF6ZylVUKSm2TqZLGI+A/oIu2UXm8C4lAyF4SWji0tdFLo1Eo7VN0SaBEhH7e/Nz0nPTfGOjiaCyfPc5734zlfCQT6X/8E/vUErL81KBaL9y3LSnued5PcITjUOwR3gsFg2bbtjYt6/NGgXC4P1et1l2aPLmpAbD0SidjpdPqgV15PA9d17zQajU8UxHQRK/4G35Q5pveAK8LlI1ZjPMnlcltnyvnvbwaO41xvtVqy7YHztMACq5xnlb9EY3dRdvcGo1kj5wR+t1AofDG0gM+A875E8DNjRCexsrV8Pj9ZqVQitVrtqejxePxjMpmss5hVTB4buXvMb2DyU2tBTRS+BjvNlVYUpPl7iuVO3Gq1uoQx1FtSOW1gPgp5ZWrdBtNmUDgv5asgxQ8F1af5vhY0YjyjuWC3wTszKJz7GBOkcFlQfW2ONq4FjWi+Hj6DRCKxQOK2TlY4x92EuYd5dvMAbYIzfikau3pu5tJ8KxaLLfo0cyKci7tK4TZjUMcoXAmHwzle0Q/RaC5P1GFMyVx9R9Fo9HYqlTrSgqDvFelAqVQa5hmuMR/WGtjAaBdjwBoDQ0ZsnwVMZjKZ9n0Zem8DSeDPdrnZbL6F2l3NOvUYNZk4oVDoRTabPe4EDNJzB0ZcjAYxeoZ2i3FNxQ7BHYw/cB/fldaH//UETgHHO8S44KbfXgAAAABJRU5ErkJggg==); +} + +a[href=''] { + color: red; +} + +a[href='' i] { + color: red; +} + +a[href=""] { + color: blue; +} + +a[href="" i] { + color: blue; +} +", + "", + ], +] +`; + +exports[`'exportType' option should work and export 'array' by default: warnings 1`] = `[]`; + +exports[`'exportType' option should work with 'array' value: errors 1`] = `[]`; + +exports[`'exportType' option should work with 'array' value: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../src/runtime/api.js"; +import ___CSS_LOADER_GET_URL_IMPORT___ from "../../src/runtime/getUrl.js"; +var ___CSS_LOADER_URL_IMPORT_0___ = new URL("./url/img.png", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_1___ = new URL("data:img/jpg;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAhxJREFUSA3tk71rU1EYxnMTEoJUkowWwdJ2akEHBfGjCiIF6ZylVUKSm2TqZLGI+A/oIu2UXm8C4lAyF4SWji0tdFLo1Eo7VN0SaBEhH7e/Nz0nPTfGOjiaCyfPc5734zlfCQT6X/8E/vUErL81KBaL9y3LSnued5PcITjUOwR3gsFg2bbtjYt6/NGgXC4P1et1l2aPLmpAbD0SidjpdPqgV15PA9d17zQajU8UxHQRK/4G35Q5pveAK8LlI1ZjPMnlcltnyvnvbwaO41xvtVqy7YHztMACq5xnlb9EY3dRdvcGo1kj5wR+t1AofDG0gM+A875E8DNjRCexsrV8Pj9ZqVQitVrtqejxePxjMpmss5hVTB4buXvMb2DyU2tBTRS+BjvNlVYUpPl7iuVO3Gq1uoQx1FtSOW1gPgp5ZWrdBtNmUDgv5asgxQ8F1af5vhY0YjyjuWC3wTszKJz7GBOkcFlQfW2ONq4FjWi+Hj6DRCKxQOK2TlY4x92EuYd5dvMAbYIzfikau3pu5tJ8KxaLLfo0cyKci7tK4TZjUMcoXAmHwzle0Q/RaC5P1GFMyVx9R9Fo9HYqlTrSgqDvFelAqVQa5hmuMR/WGtjAaBdjwBoDQ0ZsnwVMZjKZ9n0Zem8DSeDPdrnZbL6F2l3NOvUYNZk4oVDoRTabPe4EDNJzB0ZcjAYxeoZ2i3FNxQ7BHYw/cB/fldaH//UETgHHO8S44KbfXgAAAABJRU5ErkJggg==", import.meta.url); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); +var ___CSS_LOADER_URL_REPLACEMENT_1___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_1___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`@charset "UTF-8"; + + +/* Comment */ + +.class { + color: red; + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} + +.class-duplicate-url { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} + +:root { + --foo: 1px; + --bar: 2px; +} + +.class { a: b c d; } + +.two {} + +.u-m\\\\+ { a: b c d; } + +.class { content: "\\\\F10C" } + +@media only screen and (max-width: 600px) { + body { + background-color: lightblue; + } +} + +.class { + content: "\\\\2193"; + content: "\\\\2193\\\\2193"; + content: "\\\\2193 \\\\2193"; + content: "\\\\2193\\\\2193\\\\2193"; + content: "\\\\2193 \\\\2193 \\\\2193"; +} + +.-top {} +.\\\\-top {} + +#\\\\#test {} + +.grid { + display: flex; + flex-wrap: wrap; +} +.grid.\\\\-top { + align-items: flex-start; +} +.grid.-top { + align-items: flex-start; +} +.grid.\\\\-middle { + align-items: center; +} +.grid.\\\\-bottom { + align-items: flex-end; +} + +.u-m\\\\00002b {} + +.u-m00002b {} + +#u-m\\\\+ {} + +body { + font-family: '微软雅黑'; /* some chinese font name */ +} + +.myStyle { + content: '\\\\e901'; +} + +.myStyle { + content: '\\\\E901'; +} + +.♫ {} + +.\\\\3A \\\\\\\`\\\\( {} /* matches elements with class=":\\\`(" */ +.\\\\31 a2b3c {} /* matches elements with class="1a2b3c" */ +#\\\\#fake-id {} /* matches the element with id="#fake-id" */ +#-a-b-c- {} /* matches the element with id="-a-b-c-" */ +#© {} /* matches the element with id="©" */ + +\\\\.\\\\\\\` { + color: aliceblue; +} + +\\\\.\\\\\\$\\\\{foo\\\\} { + color: aliceblue; +} + +/* \\\` */ +/* \\\`\\\` */ +/* \\\`\\\`\\\` */ +/* \\\${} */ +/* \\\\\\\\\\\` */ + +:root { + --title-align: center; + --sr-only: { + position: absolute; + width: 1px; + height: 1px; + padding: 0; + overflow: hidden; + clip: rect(0,0,0,0); + white-space: nowrap; + clip-path: inset(50%); + border: 0; + }; +} + +.test { + content: "\\\\2014\\\\A0"; + content: "\\\\2014 \\\\A0"; + content: "\\\\A0 \\\\2014"; + content: "\\\\A0\\\\2014"; + margin-top: 1px\\\\9; + background-color: #000\\\\9; +} + +.light.on .bulb:before{ + content: '💡'; +} + +.base64 { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_1___}); +} + +a[href=''] { + color: red; +} + +a[href='' i] { + color: red; +} + +a[href=""] { + color: blue; +} + +a[href="" i] { + color: blue; +} +\`, ""]); +// Exports +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`'exportType' option should work with 'array' value: result 1`] = ` +[ + [ + "./basic.css", + "@charset "UTF-8"; + + +/* Comment */ + +.class { + color: red; + background: url(replaced_file_protocol_/webpack/public/path/img.png); +} + +.class-duplicate-url { + background: url(replaced_file_protocol_/webpack/public/path/img.png); +} + +:root { + --foo: 1px; + --bar: 2px; +} + +.class { a: b c d; } + +.two {} + +.u-m\\+ { a: b c d; } + +.class { content: "\\F10C" } + +@media only screen and (max-width: 600px) { + body { + background-color: lightblue; + } +} + +.class { + content: "\\2193"; + content: "\\2193\\2193"; + content: "\\2193 \\2193"; + content: "\\2193\\2193\\2193"; + content: "\\2193 \\2193 \\2193"; +} + +.-top {} +.\\-top {} + +#\\#test {} + +.grid { + display: flex; + flex-wrap: wrap; +} +.grid.\\-top { + align-items: flex-start; +} +.grid.-top { + align-items: flex-start; +} +.grid.\\-middle { + align-items: center; +} +.grid.\\-bottom { + align-items: flex-end; +} + +.u-m\\00002b {} + +.u-m00002b {} + +#u-m\\+ {} + +body { + font-family: '微软雅黑'; /* some chinese font name */ +} + +.myStyle { + content: '\\e901'; +} + +.myStyle { + content: '\\E901'; +} + +.♫ {} + +.\\3A \\\`\\( {} /* matches elements with class=":\`(" */ +.\\31 a2b3c {} /* matches elements with class="1a2b3c" */ +#\\#fake-id {} /* matches the element with id="#fake-id" */ +#-a-b-c- {} /* matches the element with id="-a-b-c-" */ +#© {} /* matches the element with id="©" */ + +\\.\\\` { + color: aliceblue; +} + +\\.\\$\\{foo\\} { + color: aliceblue; +} + +/* \` */ +/* \`\` */ +/* \`\`\` */ +/* \${} */ +/* \\\\\` */ + +:root { + --title-align: center; + --sr-only: { + position: absolute; + width: 1px; + height: 1px; + padding: 0; + overflow: hidden; + clip: rect(0,0,0,0); + white-space: nowrap; + clip-path: inset(50%); + border: 0; + }; +} + +.test { + content: "\\2014\\A0"; + content: "\\2014 \\A0"; + content: "\\A0 \\2014"; + content: "\\A0\\2014"; + margin-top: 1px\\9; + background-color: #000\\9; +} + +.light.on .bulb:before{ + content: '💡'; +} + +.base64 { + background: url(data:img/jpg;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAhxJREFUSA3tk71rU1EYxnMTEoJUkowWwdJ2akEHBfGjCiIF6ZylVUKSm2TqZLGI+A/oIu2UXm8C4lAyF4SWji0tdFLo1Eo7VN0SaBEhH7e/Nz0nPTfGOjiaCyfPc5734zlfCQT6X/8E/vUErL81KBaL9y3LSnued5PcITjUOwR3gsFg2bbtjYt6/NGgXC4P1et1l2aPLmpAbD0SidjpdPqgV15PA9d17zQajU8UxHQRK/4G35Q5pveAK8LlI1ZjPMnlcltnyvnvbwaO41xvtVqy7YHztMACq5xnlb9EY3dRdvcGo1kj5wR+t1AofDG0gM+A875E8DNjRCexsrV8Pj9ZqVQitVrtqejxePxjMpmss5hVTB4buXvMb2DyU2tBTRS+BjvNlVYUpPl7iuVO3Gq1uoQx1FtSOW1gPgp5ZWrdBtNmUDgv5asgxQ8F1af5vhY0YjyjuWC3wTszKJz7GBOkcFlQfW2ONq4FjWi+Hj6DRCKxQOK2TlY4x92EuYd5dvMAbYIzfikau3pu5tJ8KxaLLfo0cyKci7tK4TZjUMcoXAmHwzle0Q/RaC5P1GFMyVx9R9Fo9HYqlTrSgqDvFelAqVQa5hmuMR/WGtjAaBdjwBoDQ0ZsnwVMZjKZ9n0Zem8DSeDPdrnZbL6F2l3NOvUYNZk4oVDoRTabPe4EDNJzB0ZcjAYxeoZ2i3FNxQ7BHYw/cB/fldaH//UETgHHO8S44KbfXgAAAABJRU5ErkJggg==); +} + +a[href=''] { + color: red; +} + +a[href='' i] { + color: red; +} + +a[href=""] { + color: blue; +} + +a[href="" i] { + color: blue; +} +", + "", + ], +] +`; + +exports[`'exportType' option should work with 'array' value: warnings 1`] = `[]`; + +exports[`'exportType' option should work with 'css-style-sheet' and 'array' values: errors 1`] = `[]`; + +exports[`'exportType' option should work with 'css-style-sheet' and 'array' values: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../src/runtime/api.js"; +import ___CSS_LOADER_GET_URL_IMPORT___ from "../../src/runtime/getUrl.js"; +var ___CSS_LOADER_URL_IMPORT_0___ = new URL("./url/img.png", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_1___ = new URL("data:img/jpg;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAhxJREFUSA3tk71rU1EYxnMTEoJUkowWwdJ2akEHBfGjCiIF6ZylVUKSm2TqZLGI+A/oIu2UXm8C4lAyF4SWji0tdFLo1Eo7VN0SaBEhH7e/Nz0nPTfGOjiaCyfPc5734zlfCQT6X/8E/vUErL81KBaL9y3LSnued5PcITjUOwR3gsFg2bbtjYt6/NGgXC4P1et1l2aPLmpAbD0SidjpdPqgV15PA9d17zQajU8UxHQRK/4G35Q5pveAK8LlI1ZjPMnlcltnyvnvbwaO41xvtVqy7YHztMACq5xnlb9EY3dRdvcGo1kj5wR+t1AofDG0gM+A875E8DNjRCexsrV8Pj9ZqVQitVrtqejxePxjMpmss5hVTB4buXvMb2DyU2tBTRS+BjvNlVYUpPl7iuVO3Gq1uoQx1FtSOW1gPgp5ZWrdBtNmUDgv5asgxQ8F1af5vhY0YjyjuWC3wTszKJz7GBOkcFlQfW2ONq4FjWi+Hj6DRCKxQOK2TlY4x92EuYd5dvMAbYIzfikau3pu5tJ8KxaLLfo0cyKci7tK4TZjUMcoXAmHwzle0Q/RaC5P1GFMyVx9R9Fo9HYqlTrSgqDvFelAqVQa5hmuMR/WGtjAaBdjwBoDQ0ZsnwVMZjKZ9n0Zem8DSeDPdrnZbL6F2l3NOvUYNZk4oVDoRTabPe4EDNJzB0ZcjAYxeoZ2i3FNxQ7BHYw/cB/fldaH//UETgHHO8S44KbfXgAAAABJRU5ErkJggg==", import.meta.url); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); +var ___CSS_LOADER_URL_REPLACEMENT_1___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_1___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`@charset "UTF-8"; + +/* Comment */ + +.class { + color: red; + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} + +.class-duplicate-url { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} + +:root { + --foo: 1px; + --bar: 2px; +} + +.class { a: b c d; } + +.two {} + +.u-m\\\\+ { a: b c d; } + +.class { content: "\\\\F10C" } + +@media only screen and (max-width: 600px) { + body { + background-color: lightblue; + } +} + +.class { + content: "\\\\2193"; + content: "\\\\2193\\\\2193"; + content: "\\\\2193 \\\\2193"; + content: "\\\\2193\\\\2193\\\\2193"; + content: "\\\\2193 \\\\2193 \\\\2193"; +} + +.-top {} +.\\\\-top {} + +#\\\\#test {} + +.grid { + display: flex; + flex-wrap: wrap; +} +.grid.\\\\-top { + align-items: flex-start; +} +.grid.-top { + align-items: flex-start; +} +.grid.\\\\-middle { + align-items: center; +} +.grid.\\\\-bottom { + align-items: flex-end; +} + +.u-m\\\\00002b {} + +.u-m00002b {} + +#u-m\\\\+ {} + +body { + font-family: '微软雅黑'; /* some chinese font name */ +} + +.myStyle { + content: '\\\\e901'; +} + +.myStyle { + content: '\\\\E901'; +} + +.♫ {} + +.\\\\3A \\\\\\\`\\\\( {} /* matches elements with class=":\\\`(" */ +.\\\\31 a2b3c {} /* matches elements with class="1a2b3c" */ +#\\\\#fake-id {} /* matches the element with id="#fake-id" */ +#-a-b-c- {} /* matches the element with id="-a-b-c-" */ +#© {} /* matches the element with id="©" */ + +:root { + --title-align: center; + --sr-only: { + position: absolute; + width: 1px; + height: 1px; + padding: 0; + overflow: hidden; + clip: rect(0,0,0,0); + white-space: nowrap; + clip-path: inset(50%); + border: 0; + }; +} + +.test { + content: "\\\\2014\\\\A0"; + content: "\\\\2014 \\\\A0"; + content: "\\\\A0 \\\\2014"; + content: "\\\\A0\\\\2014"; + margin-top: 1px\\\\9; + background-color: #000\\\\9; +} + +.light.on .bulb:before{ + content: '💡'; +} + +.base64 { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_1___}); +} + +a[href=''] { + color: red; +} + +a[href='' i] { + color: red; +} + +a[href=""] { + color: blue; +} + +a[href="" i] { + color: blue; +} +\`, ""]); +// Exports +var ___CSS_LOADER_STYLE_SHEET___ = new CSSStyleSheet(); +___CSS_LOADER_STYLE_SHEET___.replaceSync(___CSS_LOADER_EXPORT___.toString()); +export default ___CSS_LOADER_STYLE_SHEET___; +" +`; + +exports[`'exportType' option should work with 'css-style-sheet' and 'array' values: module 2`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../src/runtime/api.js"; +import ___CSS_LOADER_GET_URL_IMPORT___ from "../../src/runtime/getUrl.js"; +var ___CSS_LOADER_URL_IMPORT_0___ = new URL("./url/img.png", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_1___ = new URL("data:img/jpg;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAhxJREFUSA3tk71rU1EYxnMTEoJUkowWwdJ2akEHBfGjCiIF6ZylVUKSm2TqZLGI+A/oIu2UXm8C4lAyF4SWji0tdFLo1Eo7VN0SaBEhH7e/Nz0nPTfGOjiaCyfPc5734zlfCQT6X/8E/vUErL81KBaL9y3LSnued5PcITjUOwR3gsFg2bbtjYt6/NGgXC4P1et1l2aPLmpAbD0SidjpdPqgV15PA9d17zQajU8UxHQRK/4G35Q5pveAK8LlI1ZjPMnlcltnyvnvbwaO41xvtVqy7YHztMACq5xnlb9EY3dRdvcGo1kj5wR+t1AofDG0gM+A875E8DNjRCexsrV8Pj9ZqVQitVrtqejxePxjMpmss5hVTB4buXvMb2DyU2tBTRS+BjvNlVYUpPl7iuVO3Gq1uoQx1FtSOW1gPgp5ZWrdBtNmUDgv5asgxQ8F1af5vhY0YjyjuWC3wTszKJz7GBOkcFlQfW2ONq4FjWi+Hj6DRCKxQOK2TlY4x92EuYd5dvMAbYIzfikau3pu5tJ8KxaLLfo0cyKci7tK4TZjUMcoXAmHwzle0Q/RaC5P1GFMyVx9R9Fo9HYqlTrSgqDvFelAqVQa5hmuMR/WGtjAaBdjwBoDQ0ZsnwVMZjKZ9n0Zem8DSeDPdrnZbL6F2l3NOvUYNZk4oVDoRTabPe4EDNJzB0ZcjAYxeoZ2i3FNxQ7BHYw/cB/fldaH//UETgHHO8S44KbfXgAAAABJRU5ErkJggg==", import.meta.url); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); +var ___CSS_LOADER_URL_REPLACEMENT_1___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_1___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`@charset "UTF-8"; + + +/* Comment */ + +.class { + color: red; + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} + +.class-duplicate-url { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} + +:root { + --foo: 1px; + --bar: 2px; +} + +.class { a: b c d; } + +.two {} + +.u-m\\\\+ { a: b c d; } + +.class { content: "\\\\F10C" } + +@media only screen and (max-width: 600px) { + body { + background-color: lightblue; + } +} + +.class { + content: "\\\\2193"; + content: "\\\\2193\\\\2193"; + content: "\\\\2193 \\\\2193"; + content: "\\\\2193\\\\2193\\\\2193"; + content: "\\\\2193 \\\\2193 \\\\2193"; +} + +.-top {} +.\\\\-top {} + +#\\\\#test {} + +.grid { + display: flex; + flex-wrap: wrap; +} +.grid.\\\\-top { + align-items: flex-start; +} +.grid.-top { + align-items: flex-start; +} +.grid.\\\\-middle { + align-items: center; +} +.grid.\\\\-bottom { + align-items: flex-end; +} + +.u-m\\\\00002b {} + +.u-m00002b {} + +#u-m\\\\+ {} + +body { + font-family: '微软雅黑'; /* some chinese font name */ +} + +.myStyle { + content: '\\\\e901'; +} + +.myStyle { + content: '\\\\E901'; +} + +.♫ {} + +.\\\\3A \\\\\\\`\\\\( {} /* matches elements with class=":\\\`(" */ +.\\\\31 a2b3c {} /* matches elements with class="1a2b3c" */ +#\\\\#fake-id {} /* matches the element with id="#fake-id" */ +#-a-b-c- {} /* matches the element with id="-a-b-c-" */ +#© {} /* matches the element with id="©" */ + +\\\\.\\\\\\\` { + color: aliceblue; +} + +\\\\.\\\\\\$\\\\{foo\\\\} { + color: aliceblue; +} + +/* \\\` */ +/* \\\`\\\` */ +/* \\\`\\\`\\\` */ +/* \\\${} */ +/* \\\\\\\\\\\` */ + +:root { + --title-align: center; + --sr-only: { + position: absolute; + width: 1px; + height: 1px; + padding: 0; + overflow: hidden; + clip: rect(0,0,0,0); + white-space: nowrap; + clip-path: inset(50%); + border: 0; + }; +} + +.test { + content: "\\\\2014\\\\A0"; + content: "\\\\2014 \\\\A0"; + content: "\\\\A0 \\\\2014"; + content: "\\\\A0\\\\2014"; + margin-top: 1px\\\\9; + background-color: #000\\\\9; +} + +.light.on .bulb:before{ + content: '💡'; +} + +.base64 { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_1___}); +} + +a[href=''] { + color: red; +} + +a[href='' i] { + color: red; +} + +a[href=""] { + color: blue; +} + +a[href="" i] { + color: blue; +} +\`, ""]); +// Exports +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`'exportType' option should work with 'css-style-sheet' and 'array' values: result 1`] = ` +[ + CSSStyleSheet { + "text": "@charset "UTF-8"; + +/* Comment */ + +.class { + color: red; + background: url(file:///webpack/public/path/img.png); +} + +.class-duplicate-url { + background: url(file:///webpack/public/path/img.png); +} + +:root { + --foo: 1px; + --bar: 2px; +} + +.class { a: b c d; } + +.two {} + +.u-m\\+ { a: b c d; } + +.class { content: "\\F10C" } + +@media only screen and (max-width: 600px) { + body { + background-color: lightblue; + } +} + +.class { + content: "\\2193"; + content: "\\2193\\2193"; + content: "\\2193 \\2193"; + content: "\\2193\\2193\\2193"; + content: "\\2193 \\2193 \\2193"; +} + +.-top {} +.\\-top {} + +#\\#test {} + +.grid { + display: flex; + flex-wrap: wrap; +} +.grid.\\-top { + align-items: flex-start; +} +.grid.-top { + align-items: flex-start; +} +.grid.\\-middle { + align-items: center; +} +.grid.\\-bottom { + align-items: flex-end; +} + +.u-m\\00002b {} + +.u-m00002b {} + +#u-m\\+ {} + +body { + font-family: '微软雅黑'; /* some chinese font name */ +} + +.myStyle { + content: '\\e901'; +} + +.myStyle { + content: '\\E901'; +} + +.♫ {} + +.\\3A \\\`\\( {} /* matches elements with class=":\`(" */ +.\\31 a2b3c {} /* matches elements with class="1a2b3c" */ +#\\#fake-id {} /* matches the element with id="#fake-id" */ +#-a-b-c- {} /* matches the element with id="-a-b-c-" */ +#© {} /* matches the element with id="©" */ + +:root { + --title-align: center; + --sr-only: { + position: absolute; + width: 1px; + height: 1px; + padding: 0; + overflow: hidden; + clip: rect(0,0,0,0); + white-space: nowrap; + clip-path: inset(50%); + border: 0; + }; +} + +.test { + content: "\\2014\\A0"; + content: "\\2014 \\A0"; + content: "\\A0 \\2014"; + content: "\\A0\\2014"; + margin-top: 1px\\9; + background-color: #000\\9; +} + +.light.on .bulb:before{ + content: '💡'; +} + +.base64 { + background: url(data:img/jpg;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAhxJREFUSA3tk71rU1EYxnMTEoJUkowWwdJ2akEHBfGjCiIF6ZylVUKSm2TqZLGI+A/oIu2UXm8C4lAyF4SWji0tdFLo1Eo7VN0SaBEhH7e/Nz0nPTfGOjiaCyfPc5734zlfCQT6X/8E/vUErL81KBaL9y3LSnued5PcITjUOwR3gsFg2bbtjYt6/NGgXC4P1et1l2aPLmpAbD0SidjpdPqgV15PA9d17zQajU8UxHQRK/4G35Q5pveAK8LlI1ZjPMnlcltnyvnvbwaO41xvtVqy7YHztMACq5xnlb9EY3dRdvcGo1kj5wR+t1AofDG0gM+A875E8DNjRCexsrV8Pj9ZqVQitVrtqejxePxjMpmss5hVTB4buXvMb2DyU2tBTRS+BjvNlVYUpPl7iuVO3Gq1uoQx1FtSOW1gPgp5ZWrdBtNmUDgv5asgxQ8F1af5vhY0YjyjuWC3wTszKJz7GBOkcFlQfW2ONq4FjWi+Hj6DRCKxQOK2TlY4x92EuYd5dvMAbYIzfikau3pu5tJ8KxaLLfo0cyKci7tK4TZjUMcoXAmHwzle0Q/RaC5P1GFMyVx9R9Fo9HYqlTrSgqDvFelAqVQa5hmuMR/WGtjAaBdjwBoDQ0ZsnwVMZjKZ9n0Zem8DSeDPdrnZbL6F2l3NOvUYNZk4oVDoRTabPe4EDNJzB0ZcjAYxeoZ2i3FNxQ7BHYw/cB/fldaH//UETgHHO8S44KbfXgAAAABJRU5ErkJggg==); +} + +a[href=''] { + color: red; +} + +a[href='' i] { + color: red; +} + +a[href=""] { + color: blue; +} + +a[href="" i] { + color: blue; +} +", + }, + [ + [ + "./basic.css?foo=1", + "@charset "UTF-8"; + + +/* Comment */ + +.class { + color: red; + background: url(replaced_file_protocol_/webpack/public/path/img.png); +} + +.class-duplicate-url { + background: url(replaced_file_protocol_/webpack/public/path/img.png); +} + +:root { + --foo: 1px; + --bar: 2px; +} + +.class { a: b c d; } + +.two {} + +.u-m\\+ { a: b c d; } + +.class { content: "\\F10C" } + +@media only screen and (max-width: 600px) { + body { + background-color: lightblue; + } +} + +.class { + content: "\\2193"; + content: "\\2193\\2193"; + content: "\\2193 \\2193"; + content: "\\2193\\2193\\2193"; + content: "\\2193 \\2193 \\2193"; +} + +.-top {} +.\\-top {} + +#\\#test {} + +.grid { + display: flex; + flex-wrap: wrap; +} +.grid.\\-top { + align-items: flex-start; +} +.grid.-top { + align-items: flex-start; +} +.grid.\\-middle { + align-items: center; +} +.grid.\\-bottom { + align-items: flex-end; +} + +.u-m\\00002b {} + +.u-m00002b {} + +#u-m\\+ {} + +body { + font-family: '微软雅黑'; /* some chinese font name */ +} + +.myStyle { + content: '\\e901'; +} + +.myStyle { + content: '\\E901'; +} + +.♫ {} + +.\\3A \\\`\\( {} /* matches elements with class=":\`(" */ +.\\31 a2b3c {} /* matches elements with class="1a2b3c" */ +#\\#fake-id {} /* matches the element with id="#fake-id" */ +#-a-b-c- {} /* matches the element with id="-a-b-c-" */ +#© {} /* matches the element with id="©" */ + +\\.\\\` { + color: aliceblue; +} + +\\.\\$\\{foo\\} { + color: aliceblue; +} + +/* \` */ +/* \`\` */ +/* \`\`\` */ +/* \${} */ +/* \\\\\` */ + +:root { + --title-align: center; + --sr-only: { + position: absolute; + width: 1px; + height: 1px; + padding: 0; + overflow: hidden; + clip: rect(0,0,0,0); + white-space: nowrap; + clip-path: inset(50%); + border: 0; + }; +} + +.test { + content: "\\2014\\A0"; + content: "\\2014 \\A0"; + content: "\\A0 \\2014"; + content: "\\A0\\2014"; + margin-top: 1px\\9; + background-color: #000\\9; +} + +.light.on .bulb:before{ + content: '💡'; +} + +.base64 { + background: url(data:img/jpg;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAhxJREFUSA3tk71rU1EYxnMTEoJUkowWwdJ2akEHBfGjCiIF6ZylVUKSm2TqZLGI+A/oIu2UXm8C4lAyF4SWji0tdFLo1Eo7VN0SaBEhH7e/Nz0nPTfGOjiaCyfPc5734zlfCQT6X/8E/vUErL81KBaL9y3LSnued5PcITjUOwR3gsFg2bbtjYt6/NGgXC4P1et1l2aPLmpAbD0SidjpdPqgV15PA9d17zQajU8UxHQRK/4G35Q5pveAK8LlI1ZjPMnlcltnyvnvbwaO41xvtVqy7YHztMACq5xnlb9EY3dRdvcGo1kj5wR+t1AofDG0gM+A875E8DNjRCexsrV8Pj9ZqVQitVrtqejxePxjMpmss5hVTB4buXvMb2DyU2tBTRS+BjvNlVYUpPl7iuVO3Gq1uoQx1FtSOW1gPgp5ZWrdBtNmUDgv5asgxQ8F1af5vhY0YjyjuWC3wTszKJz7GBOkcFlQfW2ONq4FjWi+Hj6DRCKxQOK2TlY4x92EuYd5dvMAbYIzfikau3pu5tJ8KxaLLfo0cyKci7tK4TZjUMcoXAmHwzle0Q/RaC5P1GFMyVx9R9Fo9HYqlTrSgqDvFelAqVQa5hmuMR/WGtjAaBdjwBoDQ0ZsnwVMZjKZ9n0Zem8DSeDPdrnZbL6F2l3NOvUYNZk4oVDoRTabPe4EDNJzB0ZcjAYxeoZ2i3FNxQ7BHYw/cB/fldaH//UETgHHO8S44KbfXgAAAABJRU5ErkJggg==); +} + +a[href=''] { + color: red; +} + +a[href='' i] { + color: red; +} + +a[href=""] { + color: blue; +} + +a[href="" i] { + color: blue; +} +", + "", + ], + ], +] +`; + +exports[`'exportType' option should work with 'css-style-sheet' and 'array' values: warnings 1`] = `[]`; + +exports[`'exportType' option should work with 'css-style-sheet' value and CSS modules and still emit error on '@import' at-rules: errors 1`] = ` +[ + "ModuleError: Module Error (from \`replaced original path\`): +/test/fixtures/modules/composes/composes.css:1:1: '@import' rules are not allowed here and will not be processed", +] +`; + +exports[`'exportType' option should work with 'css-style-sheet' value and CSS modules and still emit error on '@import' at-rules: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../../src/runtime/api.js"; +import ___CSS_LOADER_ICSS_IMPORT_0___, * as ___CSS_LOADER_ICSS_IMPORT_0____NAMED___ from "-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./values.css"; +import ___CSS_LOADER_ICSS_IMPORT_1___, * as ___CSS_LOADER_ICSS_IMPORT_1____NAMED___ from "-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./something.css"; +import ___CSS_LOADER_ICSS_IMPORT_2___, * as ___CSS_LOADER_ICSS_IMPORT_2____NAMED___ from "-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./imported-simple.css"; +import ___CSS_LOADER_ICSS_IMPORT_3___, * as ___CSS_LOADER_ICSS_IMPORT_3____NAMED___ from "-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./relative.css"; +import ___CSS_LOADER_ICSS_IMPORT_4___, * as ___CSS_LOADER_ICSS_IMPORT_4____NAMED___ from "-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./top-relative.css"; +import ___CSS_LOADER_ICSS_IMPORT_5___, * as ___CSS_LOADER_ICSS_IMPORT_5____NAMED___ from "-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!../issue-861/node_modules/package/style.css"; +import ___CSS_LOADER_ICSS_IMPORT_6___, * as ___CSS_LOADER_ICSS_IMPORT_6____NAMED___ from "-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./alias.css"; +import ___CSS_LOADER_ICSS_IMPORT_7___, * as ___CSS_LOADER_ICSS_IMPORT_7____NAMED___ from "-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!sass-loader!./scss-file.scss"; +import ___CSS_LOADER_GET_URL_IMPORT___ from "../../../../src/runtime/getUrl.js"; +var ___CSS_LOADER_URL_IMPORT_0___ = new URL("../../url/img.png", import.meta.url); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, "", true); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_1___, "", true); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_2___, "", true); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_3___, "", true); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_4___, "", true); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_5___, "", true); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_6___, "", true); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_7___, "", true); +var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`@import url(./test-other.css) (min-width: 100px); + +.ozGmfTedr1GnFJDWqNUH { + color: \${ ___CSS_LOADER_ICSS_IMPORT_0____NAMED___["v-def"] }; +} + +.zchqshjqLbPAHaRvIBET { + color: blue; +} + +.WZBxXqS2GytaA3IBhhnd { + display: block; +} + +.W51zcAMuJMsNFi1CXgWr { + width: \${ ___CSS_LOADER_ICSS_IMPORT_1____NAMED___["v-something"] }; +} + +.KEl5ZxzNkpjfWorrBglC { + color: \${ ___CSS_LOADER_ICSS_IMPORT_0____NAMED___["v-other"] }; +} + +.ecAEWh2vww9pNEdyj9Jn { + prop: \${ ___CSS_LOADER_ICSS_IMPORT_0____NAMED___["v-def"] }; + duplicate: \${ ___CSS_LOADER_ICSS_IMPORT_0____NAMED___["v-other"] }; +} + +.CBlowYk8qiAgWWzFeXRA { + color: red; +} + +.c_NHnDcX1bd_kuxgsuYi { + color: yellow; +} + +.S0Kwou8pVmsENtBP3hYm { + color: gray; +} + +.rq663Pq_zV0CjpwttvK4 { + color: gray; +} + +.fadRMHArJofp7sWEbPVR { + color: gainsboro; +} + +.sg1HlXqlWy6l6_Wm5iA7 { + color: gainsboro; +} + +.bnRUswvicYag6u0SPnvI { + color: #BF4040; +} + +.kEJRwpukB2OtmkGTknbU { + color: black; +} + +@media (min-width: 960px) { + .hY2PI5vC9ABuJY1nkWnf { + padding: 0 20px; + } +} + +.\${ ___CSS_LOADER_ICSS_IMPORT_0____NAMED___["s-white"] } { + color: white; +} + +@media \${ ___CSS_LOADER_ICSS_IMPORT_0____NAMED___["m-small"] } { + .hY2PI5vC9ABuJY1nkWnf { + padding: 20px 20px; + } +} + +.q8mv0HutzqdsVWjl8mAz { + v-ident: validIdent; + v-pre-defined-ident: left; + v-string: 'content'; + v-string-1: ''; + v-url: url(https://www.exammple.com/images/my-background.png); + v-url-1: url('https://www.exammple.com/images/my-background.png'); + v-url-2: url("https://www.exammple.com/images/my-background.png"); + v-integer: 100; + v-integer-1: -100; + v-integer-2: +100; + v-number: .60; + v-number-1: -456.8; + v-number-2: -3.4e-2; + v-dimension: 12px; + v-percentage: 100%; + v-hex: #fff; + v-comment: /* comment */ 10px /* comment */; + v-function: rgb(0,0,0); + v-unicode-range: U+0025-00FF; + mutliple: #fff .60 100%; +} + + +a { + content: 'content'; +} + +@supports (content: 'content') { + a { + content: 'content'; + } +} + +[class~='content'] { + color:green; +} + +.xajoqP1d3SwrjJ4WEM8g { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} + +.Ix5nEHiVOsWuWxdx0twz { + background: red; +} +\`, ""]); +// Exports +var _1 = \`\${___CSS_LOADER_ICSS_IMPORT_0____NAMED___["v-def"]}\`; +export { _1 as "v-def" }; +var _2 = \`\${___CSS_LOADER_ICSS_IMPORT_0____NAMED___["v-other"]}\`; +export { _2 as "v-other" }; +var _3 = \`\${___CSS_LOADER_ICSS_IMPORT_0____NAMED___["s-white"]}\`; +export { _3 as "s-white" }; +var _4 = \`\${___CSS_LOADER_ICSS_IMPORT_0____NAMED___["m-small"]}\`; +export { _4 as "m-small" }; +var _5 = \`\${___CSS_LOADER_ICSS_IMPORT_1____NAMED___["v-something"]}\`; +export { _5 as "v-something" }; +var _6 = \`blue\`; +export { _6 as "v-foo" }; +var _7 = \`block\`; +export { _7 as "v-bar" }; +var _8 = \`#BF4040\`; +export { _8 as "v-primary" }; +var _9 = \`black-selector\`; +export { _9 as "s-black" }; +var _a = \`(min-width: 960px)\`; +export { _a as "m-large" }; +var _b = \`validIdent\`; +export { _b as "v-ident" }; +var _c = \`left\`; +export { _c as "v-pre-defined-ident" }; +var _d = \`'content'\`; +export { _d as "v-string" }; +var _e = \`''\`; +export { _e as "v-string-1" }; +var _f = \`url(https://www.exammple.com/images/my-background.png)\`; +export { _f as "v-url" }; +var _10 = \`url('https://www.exammple.com/images/my-background.png')\`; +export { _10 as "v-url-1" }; +var _11 = \`url("https://www.exammple.com/images/my-background.png")\`; +export { _11 as "v-url-2" }; +var _12 = \`100\`; +export { _12 as "v-integer" }; +var _13 = \`-100\`; +export { _13 as "v-integer-1" }; +var _14 = \`+100\`; +export { _14 as "v-integer-2" }; +var _15 = \`.60\`; +export { _15 as "v-number" }; +var _16 = \`-456.8\`; +export { _16 as "v-number-1" }; +var _17 = \`-3.4e-2\`; +export { _17 as "v-number-2" }; +var _18 = \`12px\`; +export { _18 as "v-dimension" }; +var _19 = \`100%\`; +export { _19 as "v-percentage" }; +var _1a = \`#fff\`; +export { _1a as "v-hex" }; +var _1b = \` /* comment */\`; +export { _1b as "v-comment" }; +var _1c = \`rgb(0,0,0)\`; +export { _1c as "v-function" }; +var _1d = \`U+0025-00FF\`; +export { _1d as "v-unicode-range" }; +export var ghi = \`ozGmfTedr1GnFJDWqNUH\`; +var _1e = \`zchqshjqLbPAHaRvIBET\`; +export { _1e as "my-class" }; +export var other = \`WZBxXqS2GytaA3IBhhnd\`; +var _1f = \`W51zcAMuJMsNFi1CXgWr\`; +export { _1f as "other-other" }; +export var green = \`KEl5ZxzNkpjfWorrBglC\`; +export var foo = \`ecAEWh2vww9pNEdyj9Jn\`; +export var simple = \`CBlowYk8qiAgWWzFeXRA \${___CSS_LOADER_ICSS_IMPORT_2____NAMED___["imported-simple"]}\`; +export var relative = \`c_NHnDcX1bd_kuxgsuYi \${___CSS_LOADER_ICSS_IMPORT_3____NAMED___["imported-relative"]}\`; +var _20 = \`S0Kwou8pVmsENtBP3hYm \${___CSS_LOADER_ICSS_IMPORT_4____NAMED___["imported-relative"]}\`; +export { _20 as "top-relative" }; +var _21 = \`rq663Pq_zV0CjpwttvK4 \${___CSS_LOADER_ICSS_IMPORT_5____NAMED___["imported-module"]}\`; +export { _21 as "my-module" }; +export var alias = \`fadRMHArJofp7sWEbPVR \${___CSS_LOADER_ICSS_IMPORT_6____NAMED___["imported-alias"]}\`; +var _22 = \`sg1HlXqlWy6l6_Wm5iA7 \${___CSS_LOADER_ICSS_IMPORT_6____NAMED___["imported-alias"]}\`; +export { _22 as "alias-duplicate" }; +var _23 = \`bnRUswvicYag6u0SPnvI\`; +export { _23 as "primary-selector" }; +var _24 = \`kEJRwpukB2OtmkGTknbU\`; +export { _24 as "black-selector" }; +export var header = \`hY2PI5vC9ABuJY1nkWnf\`; +export var foobarbaz = \`q8mv0HutzqdsVWjl8mAz\`; +export var url = \`xajoqP1d3SwrjJ4WEM8g\`; +export var main = \`Ix5nEHiVOsWuWxdx0twz \${___CSS_LOADER_ICSS_IMPORT_7____NAMED___["scssClass"]}\`; +var ___CSS_LOADER_STYLE_SHEET___ = new CSSStyleSheet(); +___CSS_LOADER_STYLE_SHEET___.replaceSync(___CSS_LOADER_EXPORT___.toString()); +export default ___CSS_LOADER_STYLE_SHEET___; +" +`; + +exports[`'exportType' option should work with 'css-style-sheet' value and CSS modules and still emit error on '@import' at-rules: result 1`] = ` +CSSStyleSheet { + "named": { + "alias": "fadRMHArJofp7sWEbPVR dnhKs1AYKq4KodZdfzcx", + "alias-duplicate": "sg1HlXqlWy6l6_Wm5iA7 dnhKs1AYKq4KodZdfzcx", + "black-selector": "kEJRwpukB2OtmkGTknbU", + "default": [Circular], + "foo": "ecAEWh2vww9pNEdyj9Jn", + "foobarbaz": "q8mv0HutzqdsVWjl8mAz", + "ghi": "ozGmfTedr1GnFJDWqNUH", + "green": "KEl5ZxzNkpjfWorrBglC", + "header": "hY2PI5vC9ABuJY1nkWnf", + "m-large": "(min-width: 960px)", + "m-small": "(min-width: 320px)", + "main": "Ix5nEHiVOsWuWxdx0twz oNU7JF6MtPAFrlrthaOD", + "my-class": "zchqshjqLbPAHaRvIBET", + "my-module": "rq663Pq_zV0CjpwttvK4 q49Ogfvno__tAgAiYJcD", + "other": "WZBxXqS2GytaA3IBhhnd", + "other-other": "W51zcAMuJMsNFi1CXgWr", + "primary-selector": "bnRUswvicYag6u0SPnvI", + "relative": "c_NHnDcX1bd_kuxgsuYi o0pMg4suYQOIzdBIQJv1", + "s-black": "black-selector", + "s-white": "white", + "simple": "CBlowYk8qiAgWWzFeXRA pCAAqHK9Lcplw9QM7Rj0", + "top-relative": "S0Kwou8pVmsENtBP3hYm l9CmW32NEl99tuNLdbzp", + "url": "xajoqP1d3SwrjJ4WEM8g", + "v-bar": "block", + "v-comment": " /* comment */", + "v-def": "red", + "v-dimension": "12px", + "v-foo": "blue", + "v-function": "rgb(0,0,0)", + "v-hex": "#fff", + "v-ident": "validIdent", + "v-integer": "100", + "v-integer-1": "-100", + "v-integer-2": "+100", + "v-number": ".60", + "v-number-1": "-456.8", + "v-number-2": "-3.4e-2", + "v-other": "green", + "v-percentage": "100%", + "v-pre-defined-ident": "left", + "v-primary": "#BF4040", + "v-something": "2112moon", + "v-string": "'content'", + "v-string-1": "''", + "v-unicode-range": "U+0025-00FF", + "v-url": "url(https://www.exammple.com/images/my-background.png)", + "v-url-1": "url('https://www.exammple.com/images/my-background.png')", + "v-url-2": "url("https://www.exammple.com/images/my-background.png")", + }, + "text": "@import url(./test-other.css) (min-width: 100px); + +.ozGmfTedr1GnFJDWqNUH { + color: red; +} + +.zchqshjqLbPAHaRvIBET { + color: blue; +} + +.WZBxXqS2GytaA3IBhhnd { + display: block; +} + +.W51zcAMuJMsNFi1CXgWr { + width: 2112moon; +} + +.KEl5ZxzNkpjfWorrBglC { + color: green; +} + +.ecAEWh2vww9pNEdyj9Jn { + prop: red; + duplicate: green; +} + +.CBlowYk8qiAgWWzFeXRA { + color: red; +} + +.c_NHnDcX1bd_kuxgsuYi { + color: yellow; +} + +.S0Kwou8pVmsENtBP3hYm { + color: gray; +} + +.rq663Pq_zV0CjpwttvK4 { + color: gray; +} + +.fadRMHArJofp7sWEbPVR { + color: gainsboro; +} + +.sg1HlXqlWy6l6_Wm5iA7 { + color: gainsboro; +} + +.bnRUswvicYag6u0SPnvI { + color: #BF4040; +} + +.kEJRwpukB2OtmkGTknbU { + color: black; +} + +@media (min-width: 960px) { + .hY2PI5vC9ABuJY1nkWnf { + padding: 0 20px; + } +} + +.white { + color: white; +} + +@media (min-width: 320px) { + .hY2PI5vC9ABuJY1nkWnf { + padding: 20px 20px; + } +} + +.q8mv0HutzqdsVWjl8mAz { + v-ident: validIdent; + v-pre-defined-ident: left; + v-string: 'content'; + v-string-1: ''; + v-url: url(https://www.exammple.com/images/my-background.png); + v-url-1: url('https://www.exammple.com/images/my-background.png'); + v-url-2: url("https://www.exammple.com/images/my-background.png"); + v-integer: 100; + v-integer-1: -100; + v-integer-2: +100; + v-number: .60; + v-number-1: -456.8; + v-number-2: -3.4e-2; + v-dimension: 12px; + v-percentage: 100%; + v-hex: #fff; + v-comment: /* comment */ 10px /* comment */; + v-function: rgb(0,0,0); + v-unicode-range: U+0025-00FF; + mutliple: #fff .60 100%; +} + + +a { + content: 'content'; +} + +@supports (content: 'content') { + a { + content: 'content'; + } +} + +[class~='content'] { + color:green; +} + +.xajoqP1d3SwrjJ4WEM8g { + background: url(file:///webpack/public/path/img.png); +} + +.Ix5nEHiVOsWuWxdx0twz { + background: red; +} +", +} +`; + +exports[`'exportType' option should work with 'css-style-sheet' value and CSS modules and still emit error on '@import' at-rules: warnings 1`] = ` +[ + "ModuleWarning: Module Warning (from \`replaced original path\`): +Deprecation The legacy JS API is deprecated and will be removed in Dart Sass 2.0.0. + +More info: https://sass-lang.com/d/legacy-js-api", +] +`; + +exports[`'exportType' option should work with 'css-style-sheet' value and CommonJS modules: errors 1`] = `[]`; + +exports[`'exportType' option should work with 'css-style-sheet' value and CommonJS modules: module 1`] = ` +"// Imports +var ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ = require("../../src/runtime/noSourceMaps.js"); +var ___CSS_LOADER_API_IMPORT___ = require("../../src/runtime/api.js"); +var ___CSS_LOADER_GET_URL_IMPORT___ = require("../../src/runtime/getUrl.js"); +var ___CSS_LOADER_URL_IMPORT_0___ = require("./url/img.png"); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`@charset "UTF-8"; + +/* Comment */ + +.class { + color: red; + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} + +.class-duplicate-url { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} + +:root { + --foo: 1px; + --bar: 2px; +} + +.class { a: b c d; } + +.two {} + +.u-m\\\\+ { a: b c d; } + +.class { content: "\\\\F10C" } + +@media only screen and (max-width: 600px) { + body { + background-color: lightblue; + } +} + +.class { + content: "\\\\2193"; + content: "\\\\2193\\\\2193"; + content: "\\\\2193 \\\\2193"; + content: "\\\\2193\\\\2193\\\\2193"; + content: "\\\\2193 \\\\2193 \\\\2193"; +} + +.-top {} +.\\\\-top {} + +#\\\\#test {} + +.grid { + display: flex; + flex-wrap: wrap; +} +.grid.\\\\-top { + align-items: flex-start; +} +.grid.-top { + align-items: flex-start; +} +.grid.\\\\-middle { + align-items: center; +} +.grid.\\\\-bottom { + align-items: flex-end; +} + +.u-m\\\\00002b {} + +.u-m00002b {} + +#u-m\\\\+ {} + +body { + font-family: '微软雅黑'; /* some chinese font name */ +} + +.myStyle { + content: '\\\\e901'; +} + +.myStyle { + content: '\\\\E901'; +} + +.♫ {} + +.\\\\3A \\\\\\\`\\\\( {} /* matches elements with class=":\\\`(" */ +.\\\\31 a2b3c {} /* matches elements with class="1a2b3c" */ +#\\\\#fake-id {} /* matches the element with id="#fake-id" */ +#-a-b-c- {} /* matches the element with id="-a-b-c-" */ +#© {} /* matches the element with id="©" */ + +:root { + --title-align: center; + --sr-only: { + position: absolute; + width: 1px; + height: 1px; + padding: 0; + overflow: hidden; + clip: rect(0,0,0,0); + white-space: nowrap; + clip-path: inset(50%); + border: 0; + }; +} + +.test { + content: "\\\\2014\\\\A0"; + content: "\\\\2014 \\\\A0"; + content: "\\\\A0 \\\\2014"; + content: "\\\\A0\\\\2014"; + margin-top: 1px\\\\9; + background-color: #000\\\\9; +} + +.light.on .bulb:before{ + content: '💡'; +} + +.base64 { + background: url(data:img/jpg;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAhxJREFUSA3tk71rU1EYxnMTEoJUkowWwdJ2akEHBfGjCiIF6ZylVUKSm2TqZLGI+A/oIu2UXm8C4lAyF4SWji0tdFLo1Eo7VN0SaBEhH7e/Nz0nPTfGOjiaCyfPc5734zlfCQT6X/8E/vUErL81KBaL9y3LSnued5PcITjUOwR3gsFg2bbtjYt6/NGgXC4P1et1l2aPLmpAbD0SidjpdPqgV15PA9d17zQajU8UxHQRK/4G35Q5pveAK8LlI1ZjPMnlcltnyvnvbwaO41xvtVqy7YHztMACq5xnlb9EY3dRdvcGo1kj5wR+t1AofDG0gM+A875E8DNjRCexsrV8Pj9ZqVQitVrtqejxePxjMpmss5hVTB4buXvMb2DyU2tBTRS+BjvNlVYUpPl7iuVO3Gq1uoQx1FtSOW1gPgp5ZWrdBtNmUDgv5asgxQ8F1af5vhY0YjyjuWC3wTszKJz7GBOkcFlQfW2ONq4FjWi+Hj6DRCKxQOK2TlY4x92EuYd5dvMAbYIzfikau3pu5tJ8KxaLLfo0cyKci7tK4TZjUMcoXAmHwzle0Q/RaC5P1GFMyVx9R9Fo9HYqlTrSgqDvFelAqVQa5hmuMR/WGtjAaBdjwBoDQ0ZsnwVMZjKZ9n0Zem8DSeDPdrnZbL6F2l3NOvUYNZk4oVDoRTabPe4EDNJzB0ZcjAYxeoZ2i3FNxQ7BHYw/cB/fldaH//UETgHHO8S44KbfXgAAAABJRU5ErkJggg==); +} + +a[href=''] { + color: red; +} + +a[href='' i] { + color: red; +} + +a[href=""] { + color: blue; +} + +a[href="" i] { + color: blue; +} +\`, ""]); +// Exports +var ___CSS_LOADER_STYLE_SHEET___ = new CSSStyleSheet(); +___CSS_LOADER_STYLE_SHEET___.replaceSync(___CSS_LOADER_EXPORT___.toString()); +module.exports = ___CSS_LOADER_STYLE_SHEET___; +" +`; + +exports[`'exportType' option should work with 'css-style-sheet' value and CommonJS modules: result 1`] = ` +CSSStyleSheet { + "text": "@charset "UTF-8"; + +/* Comment */ + +.class { + color: red; + background: url(/webpack/public/path/img.png); +} + +.class-duplicate-url { + background: url(/webpack/public/path/img.png); +} + +:root { + --foo: 1px; + --bar: 2px; +} + +.class { a: b c d; } + +.two {} + +.u-m\\+ { a: b c d; } + +.class { content: "\\F10C" } + +@media only screen and (max-width: 600px) { + body { + background-color: lightblue; + } +} + +.class { + content: "\\2193"; + content: "\\2193\\2193"; + content: "\\2193 \\2193"; + content: "\\2193\\2193\\2193"; + content: "\\2193 \\2193 \\2193"; +} + +.-top {} +.\\-top {} + +#\\#test {} + +.grid { + display: flex; + flex-wrap: wrap; +} +.grid.\\-top { + align-items: flex-start; +} +.grid.-top { + align-items: flex-start; +} +.grid.\\-middle { + align-items: center; +} +.grid.\\-bottom { + align-items: flex-end; +} + +.u-m\\00002b {} + +.u-m00002b {} + +#u-m\\+ {} + +body { + font-family: '微软雅黑'; /* some chinese font name */ +} + +.myStyle { + content: '\\e901'; +} + +.myStyle { + content: '\\E901'; +} + +.♫ {} + +.\\3A \\\`\\( {} /* matches elements with class=":\`(" */ +.\\31 a2b3c {} /* matches elements with class="1a2b3c" */ +#\\#fake-id {} /* matches the element with id="#fake-id" */ +#-a-b-c- {} /* matches the element with id="-a-b-c-" */ +#© {} /* matches the element with id="©" */ + +:root { + --title-align: center; + --sr-only: { + position: absolute; + width: 1px; + height: 1px; + padding: 0; + overflow: hidden; + clip: rect(0,0,0,0); + white-space: nowrap; + clip-path: inset(50%); + border: 0; + }; +} + +.test { + content: "\\2014\\A0"; + content: "\\2014 \\A0"; + content: "\\A0 \\2014"; + content: "\\A0\\2014"; + margin-top: 1px\\9; + background-color: #000\\9; +} + +.light.on .bulb:before{ + content: '💡'; +} + +.base64 { + background: url(data:img/jpg;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAhxJREFUSA3tk71rU1EYxnMTEoJUkowWwdJ2akEHBfGjCiIF6ZylVUKSm2TqZLGI+A/oIu2UXm8C4lAyF4SWji0tdFLo1Eo7VN0SaBEhH7e/Nz0nPTfGOjiaCyfPc5734zlfCQT6X/8E/vUErL81KBaL9y3LSnued5PcITjUOwR3gsFg2bbtjYt6/NGgXC4P1et1l2aPLmpAbD0SidjpdPqgV15PA9d17zQajU8UxHQRK/4G35Q5pveAK8LlI1ZjPMnlcltnyvnvbwaO41xvtVqy7YHztMACq5xnlb9EY3dRdvcGo1kj5wR+t1AofDG0gM+A875E8DNjRCexsrV8Pj9ZqVQitVrtqejxePxjMpmss5hVTB4buXvMb2DyU2tBTRS+BjvNlVYUpPl7iuVO3Gq1uoQx1FtSOW1gPgp5ZWrdBtNmUDgv5asgxQ8F1af5vhY0YjyjuWC3wTszKJz7GBOkcFlQfW2ONq4FjWi+Hj6DRCKxQOK2TlY4x92EuYd5dvMAbYIzfikau3pu5tJ8KxaLLfo0cyKci7tK4TZjUMcoXAmHwzle0Q/RaC5P1GFMyVx9R9Fo9HYqlTrSgqDvFelAqVQa5hmuMR/WGtjAaBdjwBoDQ0ZsnwVMZjKZ9n0Zem8DSeDPdrnZbL6F2l3NOvUYNZk4oVDoRTabPe4EDNJzB0ZcjAYxeoZ2i3FNxQ7BHYw/cB/fldaH//UETgHHO8S44KbfXgAAAABJRU5ErkJggg==); +} + +a[href=''] { + color: red; +} + +a[href='' i] { + color: red; +} + +a[href=""] { + color: blue; +} + +a[href="" i] { + color: blue; +} +", +} +`; + +exports[`'exportType' option should work with 'css-style-sheet' value and CommonJS modules: warnings 1`] = `[]`; + +exports[`'exportType' option should work with 'css-style-sheet' value and ECMA modules: errors 1`] = `[]`; + +exports[`'exportType' option should work with 'css-style-sheet' value and ECMA modules: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../src/runtime/api.js"; +import ___CSS_LOADER_GET_URL_IMPORT___ from "../../src/runtime/getUrl.js"; +var ___CSS_LOADER_URL_IMPORT_0___ = new URL("./url/img.png", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_1___ = new URL("data:img/jpg;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAhxJREFUSA3tk71rU1EYxnMTEoJUkowWwdJ2akEHBfGjCiIF6ZylVUKSm2TqZLGI+A/oIu2UXm8C4lAyF4SWji0tdFLo1Eo7VN0SaBEhH7e/Nz0nPTfGOjiaCyfPc5734zlfCQT6X/8E/vUErL81KBaL9y3LSnued5PcITjUOwR3gsFg2bbtjYt6/NGgXC4P1et1l2aPLmpAbD0SidjpdPqgV15PA9d17zQajU8UxHQRK/4G35Q5pveAK8LlI1ZjPMnlcltnyvnvbwaO41xvtVqy7YHztMACq5xnlb9EY3dRdvcGo1kj5wR+t1AofDG0gM+A875E8DNjRCexsrV8Pj9ZqVQitVrtqejxePxjMpmss5hVTB4buXvMb2DyU2tBTRS+BjvNlVYUpPl7iuVO3Gq1uoQx1FtSOW1gPgp5ZWrdBtNmUDgv5asgxQ8F1af5vhY0YjyjuWC3wTszKJz7GBOkcFlQfW2ONq4FjWi+Hj6DRCKxQOK2TlY4x92EuYd5dvMAbYIzfikau3pu5tJ8KxaLLfo0cyKci7tK4TZjUMcoXAmHwzle0Q/RaC5P1GFMyVx9R9Fo9HYqlTrSgqDvFelAqVQa5hmuMR/WGtjAaBdjwBoDQ0ZsnwVMZjKZ9n0Zem8DSeDPdrnZbL6F2l3NOvUYNZk4oVDoRTabPe4EDNJzB0ZcjAYxeoZ2i3FNxQ7BHYw/cB/fldaH//UETgHHO8S44KbfXgAAAABJRU5ErkJggg==", import.meta.url); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); +var ___CSS_LOADER_URL_REPLACEMENT_1___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_1___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`@charset "UTF-8"; + +/* Comment */ + +.class { + color: red; + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} + +.class-duplicate-url { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} + +:root { + --foo: 1px; + --bar: 2px; +} + +.class { a: b c d; } + +.two {} + +.u-m\\\\+ { a: b c d; } + +.class { content: "\\\\F10C" } + +@media only screen and (max-width: 600px) { + body { + background-color: lightblue; + } +} + +.class { + content: "\\\\2193"; + content: "\\\\2193\\\\2193"; + content: "\\\\2193 \\\\2193"; + content: "\\\\2193\\\\2193\\\\2193"; + content: "\\\\2193 \\\\2193 \\\\2193"; +} + +.-top {} +.\\\\-top {} + +#\\\\#test {} + +.grid { + display: flex; + flex-wrap: wrap; +} +.grid.\\\\-top { + align-items: flex-start; +} +.grid.-top { + align-items: flex-start; +} +.grid.\\\\-middle { + align-items: center; +} +.grid.\\\\-bottom { + align-items: flex-end; +} + +.u-m\\\\00002b {} + +.u-m00002b {} + +#u-m\\\\+ {} + +body { + font-family: '微软雅黑'; /* some chinese font name */ +} + +.myStyle { + content: '\\\\e901'; +} + +.myStyle { + content: '\\\\E901'; +} + +.♫ {} + +.\\\\3A \\\\\\\`\\\\( {} /* matches elements with class=":\\\`(" */ +.\\\\31 a2b3c {} /* matches elements with class="1a2b3c" */ +#\\\\#fake-id {} /* matches the element with id="#fake-id" */ +#-a-b-c- {} /* matches the element with id="-a-b-c-" */ +#© {} /* matches the element with id="©" */ + +:root { + --title-align: center; + --sr-only: { + position: absolute; + width: 1px; + height: 1px; + padding: 0; + overflow: hidden; + clip: rect(0,0,0,0); + white-space: nowrap; + clip-path: inset(50%); + border: 0; + }; +} + +.test { + content: "\\\\2014\\\\A0"; + content: "\\\\2014 \\\\A0"; + content: "\\\\A0 \\\\2014"; + content: "\\\\A0\\\\2014"; + margin-top: 1px\\\\9; + background-color: #000\\\\9; +} + +.light.on .bulb:before{ + content: '💡'; +} + +.base64 { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_1___}); +} + +a[href=''] { + color: red; +} + +a[href='' i] { + color: red; +} + +a[href=""] { + color: blue; +} + +a[href="" i] { + color: blue; +} +\`, ""]); +// Exports +var ___CSS_LOADER_STYLE_SHEET___ = new CSSStyleSheet(); +___CSS_LOADER_STYLE_SHEET___.replaceSync(___CSS_LOADER_EXPORT___.toString()); +export default ___CSS_LOADER_STYLE_SHEET___; +" +`; + +exports[`'exportType' option should work with 'css-style-sheet' value and ECMA modules: result 1`] = ` +CSSStyleSheet { + "text": "@charset "UTF-8"; + +/* Comment */ + +.class { + color: red; + background: url(file:///webpack/public/path/img.png); +} + +.class-duplicate-url { + background: url(file:///webpack/public/path/img.png); +} + +:root { + --foo: 1px; + --bar: 2px; +} + +.class { a: b c d; } + +.two {} + +.u-m\\+ { a: b c d; } + +.class { content: "\\F10C" } + +@media only screen and (max-width: 600px) { + body { + background-color: lightblue; + } +} + +.class { + content: "\\2193"; + content: "\\2193\\2193"; + content: "\\2193 \\2193"; + content: "\\2193\\2193\\2193"; + content: "\\2193 \\2193 \\2193"; +} + +.-top {} +.\\-top {} + +#\\#test {} + +.grid { + display: flex; + flex-wrap: wrap; +} +.grid.\\-top { + align-items: flex-start; +} +.grid.-top { + align-items: flex-start; +} +.grid.\\-middle { + align-items: center; +} +.grid.\\-bottom { + align-items: flex-end; +} + +.u-m\\00002b {} + +.u-m00002b {} + +#u-m\\+ {} + +body { + font-family: '微软雅黑'; /* some chinese font name */ +} + +.myStyle { + content: '\\e901'; +} + +.myStyle { + content: '\\E901'; +} + +.♫ {} + +.\\3A \\\`\\( {} /* matches elements with class=":\`(" */ +.\\31 a2b3c {} /* matches elements with class="1a2b3c" */ +#\\#fake-id {} /* matches the element with id="#fake-id" */ +#-a-b-c- {} /* matches the element with id="-a-b-c-" */ +#© {} /* matches the element with id="©" */ + +:root { + --title-align: center; + --sr-only: { + position: absolute; + width: 1px; + height: 1px; + padding: 0; + overflow: hidden; + clip: rect(0,0,0,0); + white-space: nowrap; + clip-path: inset(50%); + border: 0; + }; +} + +.test { + content: "\\2014\\A0"; + content: "\\2014 \\A0"; + content: "\\A0 \\2014"; + content: "\\A0\\2014"; + margin-top: 1px\\9; + background-color: #000\\9; +} + +.light.on .bulb:before{ + content: '💡'; +} + +.base64 { + background: url(data:img/jpg;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAhxJREFUSA3tk71rU1EYxnMTEoJUkowWwdJ2akEHBfGjCiIF6ZylVUKSm2TqZLGI+A/oIu2UXm8C4lAyF4SWji0tdFLo1Eo7VN0SaBEhH7e/Nz0nPTfGOjiaCyfPc5734zlfCQT6X/8E/vUErL81KBaL9y3LSnued5PcITjUOwR3gsFg2bbtjYt6/NGgXC4P1et1l2aPLmpAbD0SidjpdPqgV15PA9d17zQajU8UxHQRK/4G35Q5pveAK8LlI1ZjPMnlcltnyvnvbwaO41xvtVqy7YHztMACq5xnlb9EY3dRdvcGo1kj5wR+t1AofDG0gM+A875E8DNjRCexsrV8Pj9ZqVQitVrtqejxePxjMpmss5hVTB4buXvMb2DyU2tBTRS+BjvNlVYUpPl7iuVO3Gq1uoQx1FtSOW1gPgp5ZWrdBtNmUDgv5asgxQ8F1af5vhY0YjyjuWC3wTszKJz7GBOkcFlQfW2ONq4FjWi+Hj6DRCKxQOK2TlY4x92EuYd5dvMAbYIzfikau3pu5tJ8KxaLLfo0cyKci7tK4TZjUMcoXAmHwzle0Q/RaC5P1GFMyVx9R9Fo9HYqlTrSgqDvFelAqVQa5hmuMR/WGtjAaBdjwBoDQ0ZsnwVMZjKZ9n0Zem8DSeDPdrnZbL6F2l3NOvUYNZk4oVDoRTabPe4EDNJzB0ZcjAYxeoZ2i3FNxQ7BHYw/cB/fldaH//UETgHHO8S44KbfXgAAAABJRU5ErkJggg==); +} + +a[href=''] { + color: red; +} + +a[href='' i] { + color: red; +} + +a[href=""] { + color: blue; +} + +a[href="" i] { + color: blue; +} +", +} +`; + +exports[`'exportType' option should work with 'css-style-sheet' value and ECMA modules: warnings 1`] = `[]`; + +exports[`'exportType' option should work with 'css-style-sheet' value and generate source maps: errors 1`] = `[]`; + +exports[`'exportType' option should work with 'css-style-sheet' value and generate source maps: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from "../../src/runtime/sourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../src/runtime/api.js"; +import ___CSS_LOADER_GET_URL_IMPORT___ from "../../src/runtime/getUrl.js"; +var ___CSS_LOADER_URL_IMPORT_0___ = new URL("./url/img.png", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_1___ = new URL("data:img/jpg;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAhxJREFUSA3tk71rU1EYxnMTEoJUkowWwdJ2akEHBfGjCiIF6ZylVUKSm2TqZLGI+A/oIu2UXm8C4lAyF4SWji0tdFLo1Eo7VN0SaBEhH7e/Nz0nPTfGOjiaCyfPc5734zlfCQT6X/8E/vUErL81KBaL9y3LSnued5PcITjUOwR3gsFg2bbtjYt6/NGgXC4P1et1l2aPLmpAbD0SidjpdPqgV15PA9d17zQajU8UxHQRK/4G35Q5pveAK8LlI1ZjPMnlcltnyvnvbwaO41xvtVqy7YHztMACq5xnlb9EY3dRdvcGo1kj5wR+t1AofDG0gM+A875E8DNjRCexsrV8Pj9ZqVQitVrtqejxePxjMpmss5hVTB4buXvMb2DyU2tBTRS+BjvNlVYUpPl7iuVO3Gq1uoQx1FtSOW1gPgp5ZWrdBtNmUDgv5asgxQ8F1af5vhY0YjyjuWC3wTszKJz7GBOkcFlQfW2ONq4FjWi+Hj6DRCKxQOK2TlY4x92EuYd5dvMAbYIzfikau3pu5tJ8KxaLLfo0cyKci7tK4TZjUMcoXAmHwzle0Q/RaC5P1GFMyVx9R9Fo9HYqlTrSgqDvFelAqVQa5hmuMR/WGtjAaBdjwBoDQ0ZsnwVMZjKZ9n0Zem8DSeDPdrnZbL6F2l3NOvUYNZk4oVDoRTabPe4EDNJzB0ZcjAYxeoZ2i3FNxQ7BHYw/cB/fldaH//UETgHHO8S44KbfXgAAAABJRU5ErkJggg==", import.meta.url); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___); +var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); +var ___CSS_LOADER_URL_REPLACEMENT_1___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_1___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`@charset "UTF-8"; + +/* Comment */ + +.class { + color: red; + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} + +.class-duplicate-url { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} + +:root { + --foo: 1px; + --bar: 2px; +} + +.class { a: b c d; } + +.two {} + +.u-m\\\\+ { a: b c d; } + +.class { content: "\\\\F10C" } + +@media only screen and (max-width: 600px) { + body { + background-color: lightblue; + } +} + +.class { + content: "\\\\2193"; + content: "\\\\2193\\\\2193"; + content: "\\\\2193 \\\\2193"; + content: "\\\\2193\\\\2193\\\\2193"; + content: "\\\\2193 \\\\2193 \\\\2193"; +} + +.-top {} +.\\\\-top {} + +#\\\\#test {} + +.grid { + display: flex; + flex-wrap: wrap; +} +.grid.\\\\-top { + align-items: flex-start; +} +.grid.-top { + align-items: flex-start; +} +.grid.\\\\-middle { + align-items: center; +} +.grid.\\\\-bottom { + align-items: flex-end; +} + +.u-m\\\\00002b {} + +.u-m00002b {} + +#u-m\\\\+ {} + +body { + font-family: '微软雅黑'; /* some chinese font name */ +} + +.myStyle { + content: '\\\\e901'; +} + +.myStyle { + content: '\\\\E901'; +} + +.♫ {} + +.\\\\3A \\\\\\\`\\\\( {} /* matches elements with class=":\\\`(" */ +.\\\\31 a2b3c {} /* matches elements with class="1a2b3c" */ +#\\\\#fake-id {} /* matches the element with id="#fake-id" */ +#-a-b-c- {} /* matches the element with id="-a-b-c-" */ +#© {} /* matches the element with id="©" */ + +:root { + --title-align: center; + --sr-only: { + position: absolute; + width: 1px; + height: 1px; + padding: 0; + overflow: hidden; + clip: rect(0,0,0,0); + white-space: nowrap; + clip-path: inset(50%); + border: 0; + }; +} + +.test { + content: "\\\\2014\\\\A0"; + content: "\\\\2014 \\\\A0"; + content: "\\\\A0 \\\\2014"; + content: "\\\\A0\\\\2014"; + margin-top: 1px\\\\9; + background-color: #000\\\\9; +} + +.light.on .bulb:before{ + content: '💡'; +} + +.base64 { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_1___}); +} + +a[href=''] { + color: red; +} + +a[href='' i] { + color: red; +} + +a[href=""] { + color: blue; +} + +a[href="" i] { + color: blue; +} +\`, "",{"version":3,"sources":["webpack://./basic-css-style-sheet.css"],"names":[],"mappings":"AAAA,gBAAgB;;AAEhB,YAAY;;AAEZ;EACE,UAAU;EACV,mDAAgC;AAClC;;AAEA;EACE,mDAAgC;AAClC;;AAEA;EACE,UAAU;EACV,UAAU;AACZ;;AAEA,SAAS,QAAQ,EAAE;;AAEnB,MAAM;;AAEN,SAAS,QAAQ,EAAE;;AAEnB,SAAS,iBAAiB;;AAE1B;EACE;IACE,2BAA2B;EAC7B;AACF;;AAEA;EACE,gBAAgB;EAChB,qBAAqB;EACrB,sBAAsB;EACtB,0BAA0B;EAC1B,4BAA4B;AAC9B;;AAEA,OAAO;AACP,QAAQ;;AAER,SAAS;;AAET;EACE,aAAa;EACb,eAAe;AACjB;AACA;EACE,uBAAuB;AACzB;AACA;EACE,uBAAuB;AACzB;AACA;EACE,mBAAmB;AACrB;AACA;EACE,qBAAqB;AACvB;;AAEA,aAAa;;AAEb,YAAY;;AAEZ,QAAQ;;AAER;EACE,mBAAmB,EAAE,2BAA2B;AAClD;;AAEA;EACE,gBAAgB;AAClB;;AAEA;EACE,gBAAgB;AAClB;;AAEA,IAAI;;AAEJ,WAAW,EAAE,sCAAsC;AACnD,YAAY,EAAE,yCAAyC;AACvD,YAAY,EAAE,2CAA2C;AACzD,UAAU,EAAE,0CAA0C;AACtD,IAAI,EAAE,oCAAoC;;AAE1C;EACE,qBAAqB;EACrB;;;;;;;;;;GAUC;AACH;;AAEA;EACE,mBAAmB;EACnB,oBAAoB;EACpB,oBAAoB;EACpB,mBAAmB;EACnB,iBAAiB;EACjB,wBAAwB;AAC1B;;AAEA;EACE,aAAa;AACf;;AAEA;EACE,mDAAq1B;AACv1B;;AAEA;EACE,UAAU;AACZ;;AAEA;EACE,UAAU;AACZ;;AAEA;EACE,WAAW;AACb;;AAEA;EACE,WAAW;AACb","sourcesContent":["@charset \\"UTF-8\\";\\n\\n/* Comment */\\n\\n.class {\\n color: red;\\n background: url(\\"./url/img.png\\");\\n}\\n\\n.class-duplicate-url {\\n background: url(\\"./url/img.png\\");\\n}\\n\\n:root {\\n --foo: 1px;\\n --bar: 2px;\\n}\\n\\n.class { a: b c d; }\\n\\n.two {}\\n\\n.u-m\\\\+ { a: b c d; }\\n\\n.class { content: \\"\\\\F10C\\" }\\n\\n@media only screen and (max-width: 600px) {\\n body {\\n background-color: lightblue;\\n }\\n}\\n\\n.class {\\n content: \\"\\\\2193\\";\\n content: \\"\\\\2193\\\\2193\\";\\n content: \\"\\\\2193 \\\\2193\\";\\n content: \\"\\\\2193\\\\2193\\\\2193\\";\\n content: \\"\\\\2193 \\\\2193 \\\\2193\\";\\n}\\n\\n.-top {}\\n.\\\\-top {}\\n\\n#\\\\#test {}\\n\\n.grid {\\n display: flex;\\n flex-wrap: wrap;\\n}\\n.grid.\\\\-top {\\n align-items: flex-start;\\n}\\n.grid.-top {\\n align-items: flex-start;\\n}\\n.grid.\\\\-middle {\\n align-items: center;\\n}\\n.grid.\\\\-bottom {\\n align-items: flex-end;\\n}\\n\\n.u-m\\\\00002b {}\\n\\n.u-m00002b {}\\n\\n#u-m\\\\+ {}\\n\\nbody {\\n font-family: '微软雅黑'; /* some chinese font name */\\n}\\n\\n.myStyle {\\n content: '\\\\e901';\\n}\\n\\n.myStyle {\\n content: '\\\\E901';\\n}\\n\\n.♫ {}\\n\\n.\\\\3A \\\\\`\\\\( {} /* matches elements with class=\\":\`(\\" */\\n.\\\\31 a2b3c {} /* matches elements with class=\\"1a2b3c\\" */\\n#\\\\#fake-id {} /* matches the element with id=\\"#fake-id\\" */\\n#-a-b-c- {} /* matches the element with id=\\"-a-b-c-\\" */\\n#© {} /* matches the element with id=\\"©\\" */\\n\\n:root {\\n --title-align: center;\\n --sr-only: {\\n position: absolute;\\n width: 1px;\\n height: 1px;\\n padding: 0;\\n overflow: hidden;\\n clip: rect(0,0,0,0);\\n white-space: nowrap;\\n clip-path: inset(50%);\\n border: 0;\\n };\\n}\\n\\n.test {\\n content: \\"\\\\2014\\\\A0\\";\\n content: \\"\\\\2014 \\\\A0\\";\\n content: \\"\\\\A0 \\\\2014\\";\\n content: \\"\\\\A0\\\\2014\\";\\n margin-top: 1px\\\\9;\\n background-color: #000\\\\9;\\n}\\n\\n.light.on .bulb:before{\\n content: '💡';\\n}\\n\\n.base64 {\\n background: url(data:img/jpg;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAhxJREFUSA3tk71rU1EYxnMTEoJUkowWwdJ2akEHBfGjCiIF6ZylVUKSm2TqZLGI+A/oIu2UXm8C4lAyF4SWji0tdFLo1Eo7VN0SaBEhH7e/Nz0nPTfGOjiaCyfPc5734zlfCQT6X/8E/vUErL81KBaL9y3LSnued5PcITjUOwR3gsFg2bbtjYt6/NGgXC4P1et1l2aPLmpAbD0SidjpdPqgV15PA9d17zQajU8UxHQRK/4G35Q5pveAK8LlI1ZjPMnlcltnyvnvbwaO41xvtVqy7YHztMACq5xnlb9EY3dRdvcGo1kj5wR+t1AofDG0gM+A875E8DNjRCexsrV8Pj9ZqVQitVrtqejxePxjMpmss5hVTB4buXvMb2DyU2tBTRS+BjvNlVYUpPl7iuVO3Gq1uoQx1FtSOW1gPgp5ZWrdBtNmUDgv5asgxQ8F1af5vhY0YjyjuWC3wTszKJz7GBOkcFlQfW2ONq4FjWi+Hj6DRCKxQOK2TlY4x92EuYd5dvMAbYIzfikau3pu5tJ8KxaLLfo0cyKci7tK4TZjUMcoXAmHwzle0Q/RaC5P1GFMyVx9R9Fo9HYqlTrSgqDvFelAqVQa5hmuMR/WGtjAaBdjwBoDQ0ZsnwVMZjKZ9n0Zem8DSeDPdrnZbL6F2l3NOvUYNZk4oVDoRTabPe4EDNJzB0ZcjAYxeoZ2i3FNxQ7BHYw/cB/fldaH//UETgHHO8S44KbfXgAAAABJRU5ErkJggg==);\\n}\\n\\na[href=''] {\\n color: red;\\n}\\n\\na[href='' i] {\\n color: red;\\n}\\n\\na[href=\\"\\"] {\\n color: blue;\\n}\\n\\na[href=\\"\\" i] {\\n color: blue;\\n}\\n"],"sourceRoot":""}]); +// Exports +var ___CSS_LOADER_STYLE_SHEET___ = new CSSStyleSheet(); +___CSS_LOADER_STYLE_SHEET___.replaceSync(___CSS_LOADER_EXPORT___.toString()); +export default ___CSS_LOADER_STYLE_SHEET___; +" +`; + +exports[`'exportType' option should work with 'css-style-sheet' value and generate source maps: result 1`] = ` +CSSStyleSheet { + "text": "@charset "UTF-8"; + +/* Comment */ + +.class { + color: red; + background: url(file:///webpack/public/path/img.png); +} + +.class-duplicate-url { + background: url(file:///webpack/public/path/img.png); +} + +:root { + --foo: 1px; + --bar: 2px; +} + +.class { a: b c d; } + +.two {} + +.u-m\\+ { a: b c d; } + +.class { content: "\\F10C" } + +@media only screen and (max-width: 600px) { + body { + background-color: lightblue; + } +} + +.class { + content: "\\2193"; + content: "\\2193\\2193"; + content: "\\2193 \\2193"; + content: "\\2193\\2193\\2193"; + content: "\\2193 \\2193 \\2193"; +} + +.-top {} +.\\-top {} + +#\\#test {} + +.grid { + display: flex; + flex-wrap: wrap; +} +.grid.\\-top { + align-items: flex-start; +} +.grid.-top { + align-items: flex-start; +} +.grid.\\-middle { + align-items: center; +} +.grid.\\-bottom { + align-items: flex-end; +} + +.u-m\\00002b {} + +.u-m00002b {} + +#u-m\\+ {} + +body { + font-family: '微软雅黑'; /* some chinese font name */ +} + +.myStyle { + content: '\\e901'; +} + +.myStyle { + content: '\\E901'; +} + +.♫ {} + +.\\3A \\\`\\( {} /* matches elements with class=":\`(" */ +.\\31 a2b3c {} /* matches elements with class="1a2b3c" */ +#\\#fake-id {} /* matches the element with id="#fake-id" */ +#-a-b-c- {} /* matches the element with id="-a-b-c-" */ +#© {} /* matches the element with id="©" */ + +:root { + --title-align: center; + --sr-only: { + position: absolute; + width: 1px; + height: 1px; + padding: 0; + overflow: hidden; + clip: rect(0,0,0,0); + white-space: nowrap; + clip-path: inset(50%); + border: 0; + }; +} + +.test { + content: "\\2014\\A0"; + content: "\\2014 \\A0"; + content: "\\A0 \\2014"; + content: "\\A0\\2014"; + margin-top: 1px\\9; + background-color: #000\\9; +} + +.light.on .bulb:before{ + content: '💡'; +} + +.base64 { + background: url(data:img/jpg;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAhxJREFUSA3tk71rU1EYxnMTEoJUkowWwdJ2akEHBfGjCiIF6ZylVUKSm2TqZLGI+A/oIu2UXm8C4lAyF4SWji0tdFLo1Eo7VN0SaBEhH7e/Nz0nPTfGOjiaCyfPc5734zlfCQT6X/8E/vUErL81KBaL9y3LSnued5PcITjUOwR3gsFg2bbtjYt6/NGgXC4P1et1l2aPLmpAbD0SidjpdPqgV15PA9d17zQajU8UxHQRK/4G35Q5pveAK8LlI1ZjPMnlcltnyvnvbwaO41xvtVqy7YHztMACq5xnlb9EY3dRdvcGo1kj5wR+t1AofDG0gM+A875E8DNjRCexsrV8Pj9ZqVQitVrtqejxePxjMpmss5hVTB4buXvMb2DyU2tBTRS+BjvNlVYUpPl7iuVO3Gq1uoQx1FtSOW1gPgp5ZWrdBtNmUDgv5asgxQ8F1af5vhY0YjyjuWC3wTszKJz7GBOkcFlQfW2ONq4FjWi+Hj6DRCKxQOK2TlY4x92EuYd5dvMAbYIzfikau3pu5tJ8KxaLLfo0cyKci7tK4TZjUMcoXAmHwzle0Q/RaC5P1GFMyVx9R9Fo9HYqlTrSgqDvFelAqVQa5hmuMR/WGtjAaBdjwBoDQ0ZsnwVMZjKZ9n0Zem8DSeDPdrnZbL6F2l3NOvUYNZk4oVDoRTabPe4EDNJzB0ZcjAYxeoZ2i3FNxQ7BHYw/cB/fldaH//UETgHHO8S44KbfXgAAAABJRU5ErkJggg==); +} + +a[href=''] { + color: red; +} + +a[href='' i] { + color: red; +} + +a[href=""] { + color: blue; +} + +a[href="" i] { + color: blue; +} + +/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8uL2Jhc2ljLWNzcy1zdHlsZS1zaGVldC5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsZ0JBQWdCOztBQUVoQixZQUFZOztBQUVaO0VBQ0UsVUFBVTtFQUNWLG1EQUFnQztBQUNsQzs7QUFFQTtFQUNFLG1EQUFnQztBQUNsQzs7QUFFQTtFQUNFLFVBQVU7RUFDVixVQUFVO0FBQ1o7O0FBRUEsU0FBUyxRQUFRLEVBQUU7O0FBRW5CLE1BQU07O0FBRU4sU0FBUyxRQUFRLEVBQUU7O0FBRW5CLFNBQVMsaUJBQWlCOztBQUUxQjtFQUNFO0lBQ0UsMkJBQTJCO0VBQzdCO0FBQ0Y7O0FBRUE7RUFDRSxnQkFBZ0I7RUFDaEIscUJBQXFCO0VBQ3JCLHNCQUFzQjtFQUN0QiwwQkFBMEI7RUFDMUIsNEJBQTRCO0FBQzlCOztBQUVBLE9BQU87QUFDUCxRQUFROztBQUVSLFNBQVM7O0FBRVQ7RUFDRSxhQUFhO0VBQ2IsZUFBZTtBQUNqQjtBQUNBO0VBQ0UsdUJBQXVCO0FBQ3pCO0FBQ0E7RUFDRSx1QkFBdUI7QUFDekI7QUFDQTtFQUNFLG1CQUFtQjtBQUNyQjtBQUNBO0VBQ0UscUJBQXFCO0FBQ3ZCOztBQUVBLGFBQWE7O0FBRWIsWUFBWTs7QUFFWixRQUFROztBQUVSO0VBQ0UsbUJBQW1CLEVBQUUsMkJBQTJCO0FBQ2xEOztBQUVBO0VBQ0UsZ0JBQWdCO0FBQ2xCOztBQUVBO0VBQ0UsZ0JBQWdCO0FBQ2xCOztBQUVBLElBQUk7O0FBRUosV0FBVyxFQUFFLHNDQUFzQztBQUNuRCxZQUFZLEVBQUUseUNBQXlDO0FBQ3ZELFlBQVksRUFBRSwyQ0FBMkM7QUFDekQsVUFBVSxFQUFFLDBDQUEwQztBQUN0RCxJQUFJLEVBQUUsb0NBQW9DOztBQUUxQztFQUNFLHFCQUFxQjtFQUNyQjs7Ozs7Ozs7OztHQVVDO0FBQ0g7O0FBRUE7RUFDRSxtQkFBbUI7RUFDbkIsb0JBQW9CO0VBQ3BCLG9CQUFvQjtFQUNwQixtQkFBbUI7RUFDbkIsaUJBQWlCO0VBQ2pCLHdCQUF3QjtBQUMxQjs7QUFFQTtFQUNFLGFBQWE7QUFDZjs7QUFFQTtFQUNFLG1EQUFxMUI7QUFDdjFCOztBQUVBO0VBQ0UsVUFBVTtBQUNaOztBQUVBO0VBQ0UsVUFBVTtBQUNaOztBQUVBO0VBQ0UsV0FBVztBQUNiOztBQUVBO0VBQ0UsV0FBVztBQUNiIiwic291cmNlc0NvbnRlbnQiOlsiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vKiBDb21tZW50ICovXG5cbi5jbGFzcyB7XG4gIGNvbG9yOiByZWQ7XG4gIGJhY2tncm91bmQ6IHVybChcIi4vdXJsL2ltZy5wbmdcIik7XG59XG5cbi5jbGFzcy1kdXBsaWNhdGUtdXJsIHtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi91cmwvaW1nLnBuZ1wiKTtcbn1cblxuOnJvb3Qge1xuICAtLWZvbzogMXB4O1xuICAtLWJhcjogMnB4O1xufVxuXG4uY2xhc3MgeyBhOiBiIGMgZDsgfVxuXG4udHdvIHt9XG5cbi51LW1cXCsgeyBhOiBiIGMgZDsgfVxuXG4uY2xhc3MgeyBjb250ZW50OiBcIlxcRjEwQ1wiIH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MDBweCkge1xuICBib2R5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGJsdWU7XG4gIH1cbn1cblxuLmNsYXNzIHtcbiAgY29udGVudDogXCJcXDIxOTNcIjtcbiAgY29udGVudDogXCJcXDIxOTNcXDIxOTNcIjtcbiAgY29udGVudDogXCJcXDIxOTMgXFwyMTkzXCI7XG4gIGNvbnRlbnQ6IFwiXFwyMTkzXFwyMTkzXFwyMTkzXCI7XG4gIGNvbnRlbnQ6IFwiXFwyMTkzIFxcMjE5MyBcXDIxOTNcIjtcbn1cblxuLi10b3Age31cbi5cXC10b3Age31cblxuI1xcI3Rlc3Qge31cblxuLmdyaWQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG4uZ3JpZC5cXC10b3Age1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbn1cbi5ncmlkLi10b3Age1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbn1cbi5ncmlkLlxcLW1pZGRsZSB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4uZ3JpZC5cXC1ib3R0b20ge1xuICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG59XG5cbi51LW1cXDAwMDAyYiB7fVxuXG4udS1tMDAwMDJiIHt9XG5cbiN1LW1cXCsge31cblxuYm9keSB7XG4gIGZvbnQtZmFtaWx5OiAnw6XCvsKuw6jCvcKvw6nCm8KFw6nCu8KRJzsgLyogc29tZSBjaGluZXNlIGZvbnQgbmFtZSAqL1xufVxuXG4ubXlTdHlsZSB7XG4gIGNvbnRlbnQ6ICdcXGU5MDEnO1xufVxuXG4ubXlTdHlsZSB7XG4gIGNvbnRlbnQ6ICdcXEU5MDEnO1xufVxuXG4uw6LCmcKrIHt9XG5cbi5cXDNBIFxcYFxcKCB7fSAvKiBtYXRjaGVzIGVsZW1lbnRzIHdpdGggY2xhc3M9XCI6YChcIiAqL1xuLlxcMzEgYTJiM2Mge30gLyogbWF0Y2hlcyBlbGVtZW50cyB3aXRoIGNsYXNzPVwiMWEyYjNjXCIgKi9cbiNcXCNmYWtlLWlkIHt9IC8qIG1hdGNoZXMgdGhlIGVsZW1lbnQgd2l0aCBpZD1cIiNmYWtlLWlkXCIgKi9cbiMtYS1iLWMtIHt9IC8qIG1hdGNoZXMgdGhlIGVsZW1lbnQgd2l0aCBpZD1cIi1hLWItYy1cIiAqL1xuI8OCwqkge30gLyogbWF0Y2hlcyB0aGUgZWxlbWVudCB3aXRoIGlkPVwiw4LCqVwiICovXG5cbjpyb290IHtcbiAgLS10aXRsZS1hbGlnbjogY2VudGVyO1xuICAtLXNyLW9ubHk6IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDFweDtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgY2xpcDogcmVjdCgwLDAsMCwwKTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIGNsaXAtcGF0aDogaW5zZXQoNTAlKTtcbiAgICBib3JkZXI6IDA7XG4gIH07XG59XG5cbi50ZXN0IHtcbiAgY29udGVudDogXCJcXDIwMTRcXEEwXCI7XG4gIGNvbnRlbnQ6IFwiXFwyMDE0IFxcQTBcIjtcbiAgY29udGVudDogXCJcXEEwIFxcMjAxNFwiO1xuICBjb250ZW50OiBcIlxcQTBcXDIwMTRcIjtcbiAgbWFyZ2luLXRvcDogMXB4XFw5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwXFw5O1xufVxuXG4ubGlnaHQub24gLmJ1bGI6YmVmb3Jle1xuICBjb250ZW50OiAnw7DCn8KSwqEnO1xufVxuXG4uYmFzZTY0IHtcbiAgYmFja2dyb3VuZDogdXJsKGRhdGE6aW1nL2pwZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUJnQUFBQVlDQVlBQUFEZ2R6MzRBQUFBQVhOU1IwSUFyczRjNlFBQUFoeEpSRUZVU0EzdGs3MXJVMUVZeG5NVEVvSlVrb3dXd2RKMmFrRUhCZkdqQ2lJRjZaeWxWVUtTbTJUcVpMR0krQS9vSXUyVVhtOEM0bEF5RjRTV2ppMHRkRkxvMUVvN1ZOMFNhQkVoSDdlL056MG5QVGZHT2ppYUN5ZlBjNTczNHpsZkNRVDZYLzhFL3ZVRXJMODFLQmFMOXkzTFNudWVkNVBjSVRqVU93UjNnc0ZnMmJidGpZdDYvTkdnWEM0UDFldDFsMmFQTG1wQWJEMFNpZGpwZFBxZ1YxNVBBOWQxN3pRYWpVOFV4SFFSSy80RzM1UTVwdmVBSzhMbEkxWmpQTW5sY2x0bnl2bnZid2FPNDF4dnRWcXk3WUh6dE1BQ3E1eG5sYjlFWTNkUmR2Y0dvMWtqNXdSK3QxQW9mREcwZ00rQTg3NUU4RE5qUkNleHNyVjhQajlacVZRaXRWcnRxZWp4ZVB4ak1wbXNzNWhWVEI0YnVYdk1iMkR5VTJ0QlRSUytCanZObFZZVXBQbDdpdVZPM0dxMXVvUXgxRnRTT1cxZ1BncDVaV3JkQnRObVVEZ3Y1YXNneFE4RjFhZjV2aFkwWWp5anVXQzN3VHN6S0p6N0dCT2tjRmxRZlcyT05xNEZqV2krSGo2RFJDS3hRT0syVGxZNHg5MkV1WWQ1ZHZNQWJZSXpmaWthdTNwdTV0SjhLeGFMTGZvMGN5S2NpN3RLNFRaalVNY29YQW1Id3psZTBRL1JhQzVQMUdGTXlWeDlSOUZvOUhZcWxUclNncUR2RmVsQXFWUWE1aG11TVIvV0d0akFhQmRqd0JvRFEwWnNud1ZNWmpLWjluMFplbThEU2VEUGRyblpiTDZGMmwzTk92VVlOWms0b1ZEb1JUYWJQZTRFRE5KekIwWmNqQVl4ZW9aMmkzRk54UTdCSFl3L2NCL2ZsZGFILy9VRVRnSEhPOFM0NEtiZlhnQUFBQUJKUlU1RXJrSmdnZz09KTtcbn1cblxuYVtocmVmPScnXSB7XG4gIGNvbG9yOiByZWQ7XG59XG5cbmFbaHJlZj0nJyBpXSB7XG4gIGNvbG9yOiByZWQ7XG59XG5cbmFbaHJlZj1cIlwiXSB7XG4gIGNvbG9yOiBibHVlO1xufVxuXG5hW2hyZWY9XCJcIiBpXSB7XG4gIGNvbG9yOiBibHVlO1xufVxuIl0sInNvdXJjZVJvb3QiOiIifQ== */", +} +`; + +exports[`'exportType' option should work with 'css-style-sheet' value and generate source maps: warnings 1`] = `[]`; + +exports[`'exportType' option should work with 'css-style-sheet' value and keep import and emit errors on \`@import\` at-rules: errors 1`] = `[]`; + +exports[`'exportType' option should work with 'css-style-sheet' value and keep import and emit errors on \`@import\` at-rules: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../src/runtime/api.js"; +import ___CSS_LOADER_GET_URL_IMPORT___ from "../../src/runtime/getUrl.js"; +var ___CSS_LOADER_URL_IMPORT_0___ = new URL("./url/img.png", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_1___ = new URL("data:img/jpg;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAhxJREFUSA3tk71rU1EYxnMTEoJUkowWwdJ2akEHBfGjCiIF6ZylVUKSm2TqZLGI+A/oIu2UXm8C4lAyF4SWji0tdFLo1Eo7VN0SaBEhH7e/Nz0nPTfGOjiaCyfPc5734zlfCQT6X/8E/vUErL81KBaL9y3LSnued5PcITjUOwR3gsFg2bbtjYt6/NGgXC4P1et1l2aPLmpAbD0SidjpdPqgV15PA9d17zQajU8UxHQRK/4G35Q5pveAK8LlI1ZjPMnlcltnyvnvbwaO41xvtVqy7YHztMACq5xnlb9EY3dRdvcGo1kj5wR+t1AofDG0gM+A875E8DNjRCexsrV8Pj9ZqVQitVrtqejxePxjMpmss5hVTB4buXvMb2DyU2tBTRS+BjvNlVYUpPl7iuVO3Gq1uoQx1FtSOW1gPgp5ZWrdBtNmUDgv5asgxQ8F1af5vhY0YjyjuWC3wTszKJz7GBOkcFlQfW2ONq4FjWi+Hj6DRCKxQOK2TlY4x92EuYd5dvMAbYIzfikau3pu5tJ8KxaLLfo0cyKci7tK4TZjUMcoXAmHwzle0Q/RaC5P1GFMyVx9R9Fo9HYqlTrSgqDvFelAqVQa5hmuMR/WGtjAaBdjwBoDQ0ZsnwVMZjKZ9n0Zem8DSeDPdrnZbL6F2l3NOvUYNZk4oVDoRTabPe4EDNJzB0ZcjAYxeoZ2i3FNxQ7BHYw/cB/fldaH//UETgHHO8S44KbfXgAAAABJRU5ErkJggg==", import.meta.url); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); +var ___CSS_LOADER_URL_REPLACEMENT_1___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_1___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`@charset "UTF-8"; + + +/* Comment */ + +.class { + color: red; + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} + +.class-duplicate-url { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} + +:root { + --foo: 1px; + --bar: 2px; +} + +.class { a: b c d; } + +.two {} + +.u-m\\\\+ { a: b c d; } + +.class { content: "\\\\F10C" } + +@media only screen and (max-width: 600px) { + body { + background-color: lightblue; + } +} + +.class { + content: "\\\\2193"; + content: "\\\\2193\\\\2193"; + content: "\\\\2193 \\\\2193"; + content: "\\\\2193\\\\2193\\\\2193"; + content: "\\\\2193 \\\\2193 \\\\2193"; +} + +.-top {} +.\\\\-top {} + +#\\\\#test {} + +.grid { + display: flex; + flex-wrap: wrap; +} +.grid.\\\\-top { + align-items: flex-start; +} +.grid.-top { + align-items: flex-start; +} +.grid.\\\\-middle { + align-items: center; +} +.grid.\\\\-bottom { + align-items: flex-end; +} + +.u-m\\\\00002b {} + +.u-m00002b {} + +#u-m\\\\+ {} + +body { + font-family: '微软雅黑'; /* some chinese font name */ +} + +.myStyle { + content: '\\\\e901'; +} + +.myStyle { + content: '\\\\E901'; +} + +.♫ {} + +.\\\\3A \\\\\\\`\\\\( {} /* matches elements with class=":\\\`(" */ +.\\\\31 a2b3c {} /* matches elements with class="1a2b3c" */ +#\\\\#fake-id {} /* matches the element with id="#fake-id" */ +#-a-b-c- {} /* matches the element with id="-a-b-c-" */ +#© {} /* matches the element with id="©" */ + +\\\\.\\\\\\\` { + color: aliceblue; +} + +\\\\.\\\\\\$\\\\{foo\\\\} { + color: aliceblue; +} + +/* \\\` */ +/* \\\`\\\` */ +/* \\\`\\\`\\\` */ +/* \\\${} */ +/* \\\\\\\\\\\` */ + +:root { + --title-align: center; + --sr-only: { + position: absolute; + width: 1px; + height: 1px; + padding: 0; + overflow: hidden; + clip: rect(0,0,0,0); + white-space: nowrap; + clip-path: inset(50%); + border: 0; + }; +} + +.test { + content: "\\\\2014\\\\A0"; + content: "\\\\2014 \\\\A0"; + content: "\\\\A0 \\\\2014"; + content: "\\\\A0\\\\2014"; + margin-top: 1px\\\\9; + background-color: #000\\\\9; +} + +.light.on .bulb:before{ + content: '💡'; +} + +.base64 { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_1___}); +} + +a[href=''] { + color: red; +} + +a[href='' i] { + color: red; +} + +a[href=""] { + color: blue; +} + +a[href="" i] { + color: blue; +} +\`, ""]); +// Exports +var ___CSS_LOADER_STYLE_SHEET___ = new CSSStyleSheet(); +___CSS_LOADER_STYLE_SHEET___.replaceSync(___CSS_LOADER_EXPORT___.toString()); +export default ___CSS_LOADER_STYLE_SHEET___; +" +`; + +exports[`'exportType' option should work with 'css-style-sheet' value and keep import and emit errors on \`@import\` at-rules: result 1`] = ` +CSSStyleSheet { + "text": "@charset "UTF-8"; + + +/* Comment */ + +.class { + color: red; + background: url(file:///webpack/public/path/img.png); +} + +.class-duplicate-url { + background: url(file:///webpack/public/path/img.png); +} + +:root { + --foo: 1px; + --bar: 2px; +} + +.class { a: b c d; } + +.two {} + +.u-m\\+ { a: b c d; } + +.class { content: "\\F10C" } + +@media only screen and (max-width: 600px) { + body { + background-color: lightblue; + } +} + +.class { + content: "\\2193"; + content: "\\2193\\2193"; + content: "\\2193 \\2193"; + content: "\\2193\\2193\\2193"; + content: "\\2193 \\2193 \\2193"; +} + +.-top {} +.\\-top {} + +#\\#test {} + +.grid { + display: flex; + flex-wrap: wrap; +} +.grid.\\-top { + align-items: flex-start; +} +.grid.-top { + align-items: flex-start; +} +.grid.\\-middle { + align-items: center; +} +.grid.\\-bottom { + align-items: flex-end; +} + +.u-m\\00002b {} + +.u-m00002b {} + +#u-m\\+ {} + +body { + font-family: '微软雅黑'; /* some chinese font name */ +} + +.myStyle { + content: '\\e901'; +} + +.myStyle { + content: '\\E901'; +} + +.♫ {} + +.\\3A \\\`\\( {} /* matches elements with class=":\`(" */ +.\\31 a2b3c {} /* matches elements with class="1a2b3c" */ +#\\#fake-id {} /* matches the element with id="#fake-id" */ +#-a-b-c- {} /* matches the element with id="-a-b-c-" */ +#© {} /* matches the element with id="©" */ + +\\.\\\` { + color: aliceblue; +} + +\\.\\$\\{foo\\} { + color: aliceblue; +} + +/* \` */ +/* \`\` */ +/* \`\`\` */ +/* \${} */ +/* \\\\\` */ + +:root { + --title-align: center; + --sr-only: { + position: absolute; + width: 1px; + height: 1px; + padding: 0; + overflow: hidden; + clip: rect(0,0,0,0); + white-space: nowrap; + clip-path: inset(50%); + border: 0; + }; +} + +.test { + content: "\\2014\\A0"; + content: "\\2014 \\A0"; + content: "\\A0 \\2014"; + content: "\\A0\\2014"; + margin-top: 1px\\9; + background-color: #000\\9; +} + +.light.on .bulb:before{ + content: '💡'; +} + +.base64 { + background: url(data:img/jpg;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAhxJREFUSA3tk71rU1EYxnMTEoJUkowWwdJ2akEHBfGjCiIF6ZylVUKSm2TqZLGI+A/oIu2UXm8C4lAyF4SWji0tdFLo1Eo7VN0SaBEhH7e/Nz0nPTfGOjiaCyfPc5734zlfCQT6X/8E/vUErL81KBaL9y3LSnued5PcITjUOwR3gsFg2bbtjYt6/NGgXC4P1et1l2aPLmpAbD0SidjpdPqgV15PA9d17zQajU8UxHQRK/4G35Q5pveAK8LlI1ZjPMnlcltnyvnvbwaO41xvtVqy7YHztMACq5xnlb9EY3dRdvcGo1kj5wR+t1AofDG0gM+A875E8DNjRCexsrV8Pj9ZqVQitVrtqejxePxjMpmss5hVTB4buXvMb2DyU2tBTRS+BjvNlVYUpPl7iuVO3Gq1uoQx1FtSOW1gPgp5ZWrdBtNmUDgv5asgxQ8F1af5vhY0YjyjuWC3wTszKJz7GBOkcFlQfW2ONq4FjWi+Hj6DRCKxQOK2TlY4x92EuYd5dvMAbYIzfikau3pu5tJ8KxaLLfo0cyKci7tK4TZjUMcoXAmHwzle0Q/RaC5P1GFMyVx9R9Fo9HYqlTrSgqDvFelAqVQa5hmuMR/WGtjAaBdjwBoDQ0ZsnwVMZjKZ9n0Zem8DSeDPdrnZbL6F2l3NOvUYNZk4oVDoRTabPe4EDNJzB0ZcjAYxeoZ2i3FNxQ7BHYw/cB/fldaH//UETgHHO8S44KbfXgAAAABJRU5ErkJggg==); +} + +a[href=''] { + color: red; +} + +a[href='' i] { + color: red; +} + +a[href=""] { + color: blue; +} + +a[href="" i] { + color: blue; +} +", +} +`; + +exports[`'exportType' option should work with 'css-style-sheet' value and keep import and emit errors on \`@import\` at-rules: warnings 1`] = `[]`; + +exports[`'exportType' option should work with 'css-style-sheet' value and urls: errors 1`] = ` +[ + "ModuleError: Module Error (from \`replaced original path\`): +/test/fixtures/url/url.css:1:1: '@import' rules are not allowed here and will not be processed", +] +`; + +exports[`'exportType' option should work with 'css-style-sheet' value and urls: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../src/runtime/api.js"; +import ___CSS_LOADER_GET_URL_IMPORT___ from "../../../src/runtime/getUrl.js"; +var ___CSS_LOADER_URL_IMPORT_0___ = new URL("./img.png", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_1___ = new URL("package/img.png", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_2___ = new URL("./other-img.png", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_3___ = new URL("./img img.png", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_4___ = new URL("/img.png", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_5___ = new URL("data:image/png;base64,AAA", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_6___ = new URL("data:image/svg+xml;charset=utf-8,", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_7___ = new URL("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2042%2026%27%20fill%3D%27%2523007aff%27%3E%3Crect%20width%3D%274%27%20height%3D%274%27%2F%3E%3Crect%20x%3D%278%27%20y%3D%271%27%20width%3D%2734%27%20height%3D%272%27%2F%3E%3Crect%20y%3D%2711%27%20width%3D%274%27%20height%3D%274%27%2F%3E%3Crect%20x%3D%278%27%20y%3D%2712%27%20width%3D%2734%27%20height%3D%272%27%2F%3E%3Crect%20y%3D%2722%27%20width%3D%274%27%20height%3D%274%27%2F%3E%3Crect%20x%3D%278%27%20y%3D%2723%27%20width%3D%2734%27%20height%3D%272%27%2F%3E%3C%2Fsvg%3E", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_8___ = new URL("data:image/svg+xml;charset=utf-8,#filter", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_9___ = new URL("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%5C%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%5C%22%3E%3Cfilter%20id%3D%5C%22filter%5C%22%3E%3CfeGaussianBlur%20in%3D%5C%22SourceAlpha%5C%22%20stdDeviation%3D%5C%220%5C%22%20%2F%3E%3CfeOffset%20dx%3D%5C%221%5C%22%20dy%3D%5C%222%5C%22%20result%3D%5C%22offsetblur%5C%22%20%2F%3E%3CfeFlood%20flood-color%3D%5C%22rgba%28255%2C255%2C255%2C1%29%5C%22%20%2F%3E%3CfeComposite%20in2%3D%5C%22offsetblur%5C%22%20operator%3D%5C%22in%5C%22%20%2F%3E%3CfeMerge%3E%3CfeMergeNode%20%2F%3E%3CfeMergeNode%20in%3D%5C%22SourceGraphic%5C%22%20%2F%3E%3C%2FfeMerge%3E%3C%2Ffilter%3E%3C%2Fsvg%3E%23filter", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_10___ = new URL("./font.woff", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_11___ = new URL("./font.woff2", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_12___ = new URL("./font.eot", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_13___ = new URL("package/font.ttf", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_14___ = new URL("./font with spaces.eot", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_15___ = new URL("./font.svg", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_16___ = new URL("./font.woff2?foo=bar", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_17___ = new URL("./img1x.png", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_18___ = new URL("./img2x.png", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_19___ = new URL("./img.png?foo", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_20___ = new URL("./img.png?foo=bar", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_21___ = new URL("./img.png?", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_22___ = new URL("img-simple.png", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_23___ = new URL("/url/img-simple.png", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_24___ = new URL("../url/img-simple.png", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_25___ = new URL("aliasesImg/img.png", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_26___ = new URL("./nested/img.png", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_27___ = new URL("nested/img.png", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_28___ = new URL("./img3x.png", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_29___ = new URL("./img1x.png?foo=bar", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_30___ = new URL("./img'img.png", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_31___ = new URL("./img'''img.png", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_32___ = new URL("./img(img.png", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_33___ = new URL("./img)img.png", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_34___ = new URL("./img'() img.png", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_35___ = new URL("img.png", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_36___ = new URL("./something.png", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_37___ = new URL("./something.png?foo=bar", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_38___ = new URL("./something.png?bar=foo", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_39___ = new URL("./something.png?foo=1&bar=2", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_40___ = new URL("./something.png?foo=2&bar=1", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_41___ = new URL("data:image/svg+xml;charset=UTF-8,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22utf-8%22%3F%3E%0A%3C%21DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%0A%3Csvg%20version%3D%221.1%22%20id%3D%22Layer_1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20x%3D%220px%22%20y%3D%220px%22%0A%09%20width%3D%22191px%22%20height%3D%22191px%22%20viewBox%3D%220%200%20191%20191%22%20enable-background%3D%22new%200%200%20191%20191%22%20xml%3Aspace%3D%22preserve%22%3E%0A%3Cpath%20fill%3D%22%23636363%22%20d%3D%22M95.5%2C0C42.8%2C0%2C0%2C42.8%2C0%2C95.5S42.8%2C191%2C95.5%2C191S191%2C148.2%2C191%2C95.5S148.2%2C0%2C95.5%2C0z%20M95.5%2C187.6%0A%09c-50.848%2C0-92.1-41.25-92.1-92.1c0-50.848%2C41.252-92.1%2C92.1-92.1c50.85%2C0%2C92.1%2C41.252%2C92.1%2C92.1%0A%09C187.6%2C146.35%2C146.35%2C187.6%2C95.5%2C187.6z%22%2F%3E%0A%3Cg%3E%0A%09%3Cpath%20fill%3D%22%23636363%22%20d%3D%22M92.9%2C10v8.6H91v-6.5c-0.1%2C0.1-0.2%2C0.2-0.4%2C0.3c-0.2%2C0.1-0.3%2C0.2-0.4%2C0.2c-0.1%2C0-0.3%2C0.1-0.5%2C0.2%0A%09%09c-0.2%2C0.1-0.3%2C0.1-0.5%2C0.1v-1.6c0.5-0.1%2C0.9-0.3%2C1.4-0.5c0.5-0.2%2C0.8-0.5%2C1.2-0.7h1.1V10z%22%2F%3E%0A%09%3Cpath%20fill%3D%22%23636363%22%20d%3D%22M97.1%2C17.1h3.602v1.5h-5.6V18c0-0.4%2C0.1-0.8%2C0.2-1.2c0.1-0.4%2C0.3-0.6%2C0.5-0.9c0.2-0.3%2C0.5-0.5%2C0.7-0.7%0A%09%09c0.2-0.2%2C0.5-0.4%2C0.7-0.6c0.199-0.2%2C0.5-0.3%2C0.6-0.5c0.102-0.2%2C0.301-0.3%2C0.5-0.5c0.2-0.2%2C0.2-0.3%2C0.301-0.5%0A%09%09c0.101-0.2%2C0.101-0.3%2C0.101-0.5c0-0.4-0.101-0.6-0.3-0.8c-0.2-0.2-0.4-0.3-0.801-0.3c-0.699%2C0-1.399%2C0.3-2.101%2C0.9v-1.6%0A%09%09c0.7-0.5%2C1.5-0.7%2C2.5-0.7c0.399%2C0%2C0.8%2C0.1%2C1.101%2C0.2c0.301%2C0.1%2C0.601%2C0.3%2C0.899%2C0.5c0.3%2C0.2%2C0.399%2C0.5%2C0.5%2C0.8%0A%09%09c0.101%2C0.3%2C0.2%2C0.6%2C0.2%2C1s-0.102%2C0.7-0.2%2C1c-0.099%2C0.3-0.3%2C0.6-0.5%2C0.8c-0.2%2C0.2-0.399%2C0.5-0.7%2C0.7c-0.3%2C0.2-0.5%2C0.4-0.8%2C0.6%0A%09%09c-0.2%2C0.1-0.399%2C0.3-0.5%2C0.4s-0.3%2C0.3-0.5%2C0.4s-0.2%2C0.3-0.3%2C0.4C97.1%2C17%2C97.1%2C17%2C97.1%2C17.1z%22%2F%3E%0A%3C%2Fg%3E%0A%3Cg%3E%0A%09%3Cpath%20fill%3D%22%23636363%22%20d%3D%22M15%2C95.4c0%2C0.7-0.1%2C1.4-0.2%2C2c-0.1%2C0.6-0.4%2C1.1-0.7%2C1.5C13.8%2C99.3%2C13.4%2C99.6%2C12.9%2C99.8s-1%2C0.3-1.5%2C0.3%0A%09%09c-0.7%2C0-1.3-0.1-1.8-0.3v-1.5c0.4%2C0.3%2C1%2C0.4%2C1.6%2C0.4c0.6%2C0%2C1.1-0.2%2C1.5-0.7c0.4-0.5%2C0.5-1.1%2C0.5-1.9l0%2C0%0A%09%09C12.8%2C96.7%2C12.3%2C96.9%2C11.5%2C96.9c-0.3%2C0-0.7-0.102-1-0.2c-0.3-0.101-0.5-0.3-0.8-0.5c-0.3-0.2-0.4-0.5-0.5-0.8%0A%09%09c-0.1-0.3-0.2-0.7-0.2-1c0-0.4%2C0.1-0.8%2C0.2-1.2c0.1-0.4%2C0.3-0.7%2C0.6-0.9c0.3-0.2%2C0.6-0.5%2C0.9-0.6c0.3-0.1%2C0.8-0.2%2C1.2-0.2%0A%09%09c0.5%2C0%2C0.9%2C0.1%2C1.2%2C0.3c0.3%2C0.2%2C0.7%2C0.4%2C0.9%2C0.8s0.5%2C0.7%2C0.6%2C1.2S15%2C94.8%2C15%2C95.4z%20M13.1%2C94.4c0-0.2%2C0-0.4-0.1-0.6%0A%09%09c-0.1-0.2-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.2-0.4-0.3c-0.2-0.1-0.3-0.1-0.5-0.1c-0.2%2C0-0.3%2C0-0.4%2C0.1s-0.3%2C0.2-0.3%2C0.3%0A%09%09c0%2C0.1-0.2%2C0.3-0.2%2C0.4c0%2C0.1-0.1%2C0.4-0.1%2C0.6c0%2C0.2%2C0%2C0.4%2C0.1%2C0.6c0.1%2C0.2%2C0.1%2C0.3%2C0.2%2C0.4c0.1%2C0.1%2C0.2%2C0.2%2C0.4%2C0.3%0A%09%09c0.2%2C0.1%2C0.3%2C0.1%2C0.5%2C0.1c0.2%2C0%2C0.3%2C0%2C0.4-0.1s0.2-0.2%2C0.3-0.3c0.1-0.1%2C0.2-0.2%2C0.2-0.4C13%2C94.7%2C13.1%2C94.6%2C13.1%2C94.4z%22%2F%3E%0A%3C%2Fg%3E%0A%3Cg%3E%0A%09%3Cpath%20fill%3D%22%23636363%22%20d%3D%22M176%2C99.7V98.1c0.6%2C0.4%2C1.2%2C0.602%2C2%2C0.602c0.5%2C0%2C0.8-0.102%2C1.1-0.301c0.301-0.199%2C0.4-0.5%2C0.4-0.801%0A%09%09c0-0.398-0.2-0.699-0.5-0.898c-0.3-0.2-0.8-0.301-1.3-0.301h-0.802V95h0.701c1.101%2C0%2C1.601-0.4%2C1.601-1.1c0-0.7-0.4-1-1.302-1%0A%09%09c-0.6%2C0-1.1%2C0.2-1.6%2C0.5v-1.5c0.6-0.3%2C1.301-0.4%2C2.1-0.4c0.9%2C0%2C1.5%2C0.2%2C2%2C0.6s0.701%2C0.9%2C0.701%2C1.5c0%2C1.1-0.601%2C1.8-1.701%2C2.1l0%2C0%0A%09%09c0.602%2C0.1%2C1.102%2C0.3%2C1.4%2C0.6s0.5%2C0.8%2C0.5%2C1.3c0%2C0.801-0.3%2C1.4-0.9%2C1.9c-0.6%2C0.5-1.398%2C0.7-2.398%2C0.7%0A%09%09C177.2%2C100.1%2C176.5%2C100%2C176%2C99.7z%22%2F%3E%0A%3C%2Fg%3E%0A%3Cg%3E%0A%09%3Cpath%20fill%3D%22%23636363%22%20d%3D%22M98.5%2C179.102c0%2C0.398-0.1%2C0.799-0.2%2C1.199C98.2%2C180.7%2C98%2C181%2C97.7%2C181.2s-0.601%2C0.5-0.9%2C0.601%0A%09%09c-0.3%2C0.1-0.7%2C0.199-1.2%2C0.199c-0.5%2C0-0.9-0.1-1.3-0.3c-0.4-0.2-0.7-0.399-0.9-0.8c-0.2-0.4-0.5-0.7-0.6-1.2%0A%09%09c-0.1-0.5-0.2-1-0.2-1.601c0-0.699%2C0.1-1.399%2C0.3-2c0.2-0.601%2C0.4-1.101%2C0.8-1.5c0.4-0.399%2C0.7-0.699%2C1.2-1c0.5-0.3%2C1-0.3%2C1.6-0.3%0A%09%09c0.6%2C0%2C1.2%2C0.101%2C1.5%2C0.199v1.5c-0.4-0.199-0.9-0.399-1.4-0.399c-0.3%2C0-0.6%2C0.101-0.8%2C0.2c-0.2%2C0.101-0.5%2C0.3-0.7%2C0.5%0A%09%09c-0.2%2C0.199-0.3%2C0.5-0.4%2C0.8c-0.1%2C0.301-0.2%2C0.7-0.2%2C1.101l0%2C0c0.4-0.601%2C1-0.8%2C1.8-0.8c0.3%2C0%2C0.7%2C0.1%2C0.9%2C0.199%0A%09%09c0.2%2C0.101%2C0.5%2C0.301%2C0.7%2C0.5c0.199%2C0.2%2C0.398%2C0.5%2C0.5%2C0.801C98.5%2C178.2%2C98.5%2C178.7%2C98.5%2C179.102z%20M96.7%2C179.2%0A%09%09c0-0.899-0.4-1.399-1.1-1.399c-0.2%2C0-0.3%2C0-0.5%2C0.1c-0.2%2C0.101-0.3%2C0.201-0.4%2C0.301c-0.1%2C0.101-0.2%2C0.199-0.2%2C0.4%0A%09%09c0%2C0.199-0.1%2C0.299-0.1%2C0.5c0%2C0.199%2C0%2C0.398%2C0.1%2C0.6s0.1%2C0.3%2C0.2%2C0.5c0.1%2C0.199%2C0.2%2C0.199%2C0.4%2C0.3c0.2%2C0.101%2C0.3%2C0.101%2C0.5%2C0.101%0A%09%09c0.2%2C0%2C0.3%2C0%2C0.5-0.101c0.2-0.101%2C0.301-0.199%2C0.301-0.3c0-0.1%2C0.199-0.301%2C0.199-0.399C96.6%2C179.7%2C96.7%2C179.4%2C96.7%2C179.2z%22%2F%3E%0A%3C%2Fg%3E%0A%3Ccircle%20fill%3D%22%23636363%22%20cx%3D%2295%22%20cy%3D%2295%22%20r%3D%227%22%2F%3E%0A%3C%2Fsvg%3E%0A", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_42___ = new URL("/guide/img/banWord/addCoinDialogTitleBg.png", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_43___ = new URL("!!../../helpers/url-loader.js?esModule=false!package/img-single.png?ignore-asset-modules", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_44___ = new URL("nested/other.png", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_45___ = new URL("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27%3e%3cpath fill=%27none%27 stroke=%27%23343a40%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27 stroke-width=%272%27 d=%27M2 5l6 6 6-6%27/%3e%3c/svg%3e", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_46___ = new URL("data:image/svg+xml;utf8,", import.meta.url); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); +var ___CSS_LOADER_URL_REPLACEMENT_1___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___, { hash: "#hash" }); +var ___CSS_LOADER_URL_REPLACEMENT_2___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_1___); +var ___CSS_LOADER_URL_REPLACEMENT_3___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_2___); +var ___CSS_LOADER_URL_REPLACEMENT_4___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_3___); +var ___CSS_LOADER_URL_REPLACEMENT_5___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_4___); +var ___CSS_LOADER_URL_REPLACEMENT_6___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_5___); +var ___CSS_LOADER_URL_REPLACEMENT_7___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_6___); +var ___CSS_LOADER_URL_REPLACEMENT_8___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_7___); +var ___CSS_LOADER_URL_REPLACEMENT_9___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_8___); +var ___CSS_LOADER_URL_REPLACEMENT_10___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_9___); +var ___CSS_LOADER_URL_REPLACEMENT_11___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_10___); +var ___CSS_LOADER_URL_REPLACEMENT_12___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_11___); +var ___CSS_LOADER_URL_REPLACEMENT_13___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_12___); +var ___CSS_LOADER_URL_REPLACEMENT_14___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_13___); +var ___CSS_LOADER_URL_REPLACEMENT_15___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_14___); +var ___CSS_LOADER_URL_REPLACEMENT_16___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_15___, { hash: "#svgFontName" }); +var ___CSS_LOADER_URL_REPLACEMENT_17___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_16___); +var ___CSS_LOADER_URL_REPLACEMENT_18___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_12___, { hash: "?#iefix" }); +var ___CSS_LOADER_URL_REPLACEMENT_19___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_14___, { hash: "?#iefix" }); +var ___CSS_LOADER_URL_REPLACEMENT_20___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_17___); +var ___CSS_LOADER_URL_REPLACEMENT_21___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_18___); +var ___CSS_LOADER_URL_REPLACEMENT_22___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_19___); +var ___CSS_LOADER_URL_REPLACEMENT_23___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_20___); +var ___CSS_LOADER_URL_REPLACEMENT_24___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_20___, { hash: "#hash" }); +var ___CSS_LOADER_URL_REPLACEMENT_25___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_21___); +var ___CSS_LOADER_URL_REPLACEMENT_26___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_22___); +var ___CSS_LOADER_URL_REPLACEMENT_27___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_23___); +var ___CSS_LOADER_URL_REPLACEMENT_28___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_24___); +var ___CSS_LOADER_URL_REPLACEMENT_29___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_25___); +var ___CSS_LOADER_URL_REPLACEMENT_30___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_26___); +var ___CSS_LOADER_URL_REPLACEMENT_31___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_27___); +var ___CSS_LOADER_URL_REPLACEMENT_32___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_17___, { needQuotes: true }); +var ___CSS_LOADER_URL_REPLACEMENT_33___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_18___, { needQuotes: true }); +var ___CSS_LOADER_URL_REPLACEMENT_34___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_3___, { needQuotes: true }); +var ___CSS_LOADER_URL_REPLACEMENT_35___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_28___, { needQuotes: true }); +var ___CSS_LOADER_URL_REPLACEMENT_36___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_29___, { needQuotes: true }); +var ___CSS_LOADER_URL_REPLACEMENT_37___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_17___, { hash: "#hash", needQuotes: true }); +var ___CSS_LOADER_URL_REPLACEMENT_38___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_17___, { hash: "?#iefix", needQuotes: true }); +var ___CSS_LOADER_URL_REPLACEMENT_39___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_28___); +var ___CSS_LOADER_URL_REPLACEMENT_40___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_30___); +var ___CSS_LOADER_URL_REPLACEMENT_41___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_31___); +var ___CSS_LOADER_URL_REPLACEMENT_42___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_32___); +var ___CSS_LOADER_URL_REPLACEMENT_43___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_33___); +var ___CSS_LOADER_URL_REPLACEMENT_44___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_34___); +var ___CSS_LOADER_URL_REPLACEMENT_45___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_35___); +var ___CSS_LOADER_URL_REPLACEMENT_46___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_36___); +var ___CSS_LOADER_URL_REPLACEMENT_47___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_37___); +var ___CSS_LOADER_URL_REPLACEMENT_48___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_37___, { hash: "#hash" }); +var ___CSS_LOADER_URL_REPLACEMENT_49___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_38___); +var ___CSS_LOADER_URL_REPLACEMENT_50___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_37___, { hash: "#foo" }); +var ___CSS_LOADER_URL_REPLACEMENT_51___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_38___, { hash: "#bar" }); +var ___CSS_LOADER_URL_REPLACEMENT_52___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_39___); +var ___CSS_LOADER_URL_REPLACEMENT_53___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_40___); +var ___CSS_LOADER_URL_REPLACEMENT_54___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_41___); +var ___CSS_LOADER_URL_REPLACEMENT_55___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_42___); +var ___CSS_LOADER_URL_REPLACEMENT_56___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_43___); +var ___CSS_LOADER_URL_REPLACEMENT_57___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_44___); +var ___CSS_LOADER_URL_REPLACEMENT_58___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_45___); +var ___CSS_LOADER_URL_REPLACEMENT_59___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_46___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`@import "./imported.css"; + +.class { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} + +.class { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} + +.class { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} + +.class { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_1___}); +} + +.class { + background: url( + \${___CSS_LOADER_URL_REPLACEMENT_0___} + ); +} + +.class { + background: green url( \${___CSS_LOADER_URL_REPLACEMENT_0___} ) xyz; +} + +.class { + background: green url( \${___CSS_LOADER_URL_REPLACEMENT_0___} ) xyz; +} + +.class { + background: green url( \${___CSS_LOADER_URL_REPLACEMENT_0___} ) xyz; +} + +.class { + background: green url(\${___CSS_LOADER_URL_REPLACEMENT_2___}) url(\${___CSS_LOADER_URL_REPLACEMENT_3___}) xyz; +} + +.class { + background: green url( \${___CSS_LOADER_URL_REPLACEMENT_4___} ) xyz; +} + +.class { + background: green url( \${___CSS_LOADER_URL_REPLACEMENT_4___} ) xyz; +} + +.class { + background: green url(\${___CSS_LOADER_URL_REPLACEMENT_5___}) xyz; +} + +.class { + background: green url(\${___CSS_LOADER_URL_REPLACEMENT_6___}) url(http://example.com/image.jpg) url(//example.com/image.png) xyz; +} + +.class { + background-image: url(\${___CSS_LOADER_URL_REPLACEMENT_7___}); +} + +.class { + background-image: url(\${___CSS_LOADER_URL_REPLACEMENT_8___}); +} + +.class { + filter: url(\${___CSS_LOADER_URL_REPLACEMENT_9___}); +} + +.class { + filter: url(\${___CSS_LOADER_URL_REPLACEMENT_10___}); +} + +.highlight { + filter: url(#highlight); +} + +.highlight { + filter: url('#line-marker'); +} + +@font-face { + src: url(\${___CSS_LOADER_URL_REPLACEMENT_11___}) format('woff'), + url(\${___CSS_LOADER_URL_REPLACEMENT_12___}) format('woff2'), + url(\${___CSS_LOADER_URL_REPLACEMENT_13___}) format('eot'), + url(\${___CSS_LOADER_URL_REPLACEMENT_14___}) format('truetype'), + url(\${___CSS_LOADER_URL_REPLACEMENT_15___}) format("embedded-opentype"), + url(\${___CSS_LOADER_URL_REPLACEMENT_16___}) format('svg'), + url(\${___CSS_LOADER_URL_REPLACEMENT_17___}) format('woff2'), + url(\${___CSS_LOADER_URL_REPLACEMENT_18___}) format('embedded-opentype'), + url(\${___CSS_LOADER_URL_REPLACEMENT_19___}) format('embedded-opentype'); +} + +@media (min-width: 500px) { + body { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); + } +} + +a { + content: "do not use url(path)"; +} + +b { + content: 'do not "use" url(path)'; +} + +@keyframes anim { + background: green url(\${___CSS_LOADER_URL_REPLACEMENT_0___}) xyz; +} + +.a { + background-image: -webkit-image-set(url(\${___CSS_LOADER_URL_REPLACEMENT_20___}) 1x, url(\${___CSS_LOADER_URL_REPLACEMENT_21___}) 2x) +} + +.a { + background-image: image-set(url(\${___CSS_LOADER_URL_REPLACEMENT_20___}) 1x, url(\${___CSS_LOADER_URL_REPLACEMENT_21___}) 2x) +} + +.class { + background: green url() xyz; +} + +.class { + background: green url('') xyz; +} + +.class { + background: green url("") xyz; +} + +.class { + background: green url(' ') xyz; +} + +.class { + background: green url( + ) xyz; +} + +.class { + background: green url(https://raw.githubusercontent.com/webpack/media/master/logo/icon.png) xyz; +} + +.class { + background: green url(//raw.githubusercontent.com/webpack/media/master/logo/icon.png) xyz; +} + +.class { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_22___}); +} + +.class { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_23___}); +} + +.class { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_24___}); +} + +.class { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_24___}); +} + +.class { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_25___}); +} + +.class { + background-image: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}) url(\${___CSS_LOADER_URL_REPLACEMENT_7___}) url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} + +.class { + background: ___CSS_LOADER_URL___; + background: ___CSS_LOADER_URL___INDEX___; + background: ___CSS_LOADER_URL___99999___; + background: ___CSS_LOADER_IMPORT___; + background: ___CSS_LOADER_IMPORT___INDEX___; + background: ___CSS_LOADER_IMPORT___99999___; +} + +.pure-url { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_26___}); +} + +.root-relative { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_27___}); +} + +.above-below { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_28___}); +} + +.tilde { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_2___}); +} + +.aliases { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_29___}) ; +} + +a { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_30___}); +} + +a { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_31___}); +} + +@font-face { + src: url("//at.alicdn.com/t/font_515771_emcns5054x3whfr.eot"); +} + +.class { + /* Broken */ + background-image: -webkit-image-set(); + background-image: -webkit-image-set(''); + background-image: image-set(); + background-image: image-set(''); + background-image: image-set(""); + background-image: image-set("" 1x); + background-image: image-set(url()); + background-image: image-set( + url() + ); + background-image: image-set(URL()); + background-image: image-set(url('')); + background-image: image-set(url("")); + background-image: image-set(url('') 1x); + background-image: image-set(1x); + background-image: image-set( + 1x + ); + background: image-set(calc(1rem + 1px) 1x); + + /* Strings */ + background-image: -webkit-image-set(\${___CSS_LOADER_URL_REPLACEMENT_32___} 1x, \${___CSS_LOADER_URL_REPLACEMENT_33___} 2x); + background-image: image-set(\${___CSS_LOADER_URL_REPLACEMENT_32___} 1x); + background-image: image-set(\${___CSS_LOADER_URL_REPLACEMENT_32___} 1x, \${___CSS_LOADER_URL_REPLACEMENT_33___} 2x); + background-image: image-set(\${___CSS_LOADER_URL_REPLACEMENT_34___} 1x, \${___CSS_LOADER_URL_REPLACEMENT_34___} 2x); + background-image: image-set(\${___CSS_LOADER_URL_REPLACEMENT_32___} 1x, \${___CSS_LOADER_URL_REPLACEMENT_33___} 2x), + image-set(\${___CSS_LOADER_URL_REPLACEMENT_32___} 1x, \${___CSS_LOADER_URL_REPLACEMENT_33___} 2x); + background-image: image-set( + \${___CSS_LOADER_URL_REPLACEMENT_32___} 1x, + \${___CSS_LOADER_URL_REPLACEMENT_33___} 2x, + \${___CSS_LOADER_URL_REPLACEMENT_35___} 600dpi + ); + background-image: image-set(\${___CSS_LOADER_URL_REPLACEMENT_36___} 1x); + background-image: image-set(\${___CSS_LOADER_URL_REPLACEMENT_37___} 1x); + background-image: image-set(\${___CSS_LOADER_URL_REPLACEMENT_38___} 1x); + + /* With \\\`url\\\` function */ + background-image: -webkit-image-set(url(\${___CSS_LOADER_URL_REPLACEMENT_20___}) 1x, url(\${___CSS_LOADER_URL_REPLACEMENT_21___}) 2x); + background-image: -webkit-image-set(url(\${___CSS_LOADER_URL_REPLACEMENT_20___}) 1x); + background-image: -webkit-image-set( + url(\${___CSS_LOADER_URL_REPLACEMENT_20___}) 1x + ); + background-image: image-set(url(\${___CSS_LOADER_URL_REPLACEMENT_20___}) 1x); + background-image: image-set( + url(\${___CSS_LOADER_URL_REPLACEMENT_20___}) 1x + ); + background-image: image-set(url(\${___CSS_LOADER_URL_REPLACEMENT_20___}) 1x, url(\${___CSS_LOADER_URL_REPLACEMENT_21___}) 2x); + background-image: image-set( + url(\${___CSS_LOADER_URL_REPLACEMENT_20___}) 1x, + url(\${___CSS_LOADER_URL_REPLACEMENT_21___}) 2x, + url(\${___CSS_LOADER_URL_REPLACEMENT_39___}) 600dpi + ); + background-image: image-set(url(\${___CSS_LOADER_URL_REPLACEMENT_4___}) 1x, url(\${___CSS_LOADER_URL_REPLACEMENT_4___}) 2x); + + background-image: image-set(url(\${___CSS_LOADER_URL_REPLACEMENT_20___}) 1x, \${___CSS_LOADER_URL_REPLACEMENT_33___} 2x); +} + +.class { + /* Not allowed on windows */ + /* background: url(./img\\\\"img.png); */ + background: url(\${___CSS_LOADER_URL_REPLACEMENT_40___}); + background: url(\${___CSS_LOADER_URL_REPLACEMENT_41___}); + background: url(\${___CSS_LOADER_URL_REPLACEMENT_42___}); + background: url(\${___CSS_LOADER_URL_REPLACEMENT_43___}); + background: url(\${___CSS_LOADER_URL_REPLACEMENT_4___}); + background: url(\${___CSS_LOADER_URL_REPLACEMENT_44___}); + + background-image: image-set( + /* Not allowed on windows */ + /* url(./img\\\\"img.png) 1x, */ + url(\${___CSS_LOADER_URL_REPLACEMENT_41___}) 2x, + url(\${___CSS_LOADER_URL_REPLACEMENT_40___}) 3x, + url(\${___CSS_LOADER_URL_REPLACEMENT_42___}) 4x, + url(\${___CSS_LOADER_URL_REPLACEMENT_43___}) 5x, + url(\${___CSS_LOADER_URL_REPLACEMENT_4___}) 6x, + url(\${___CSS_LOADER_URL_REPLACEMENT_44___}) 7x + ); +} + +.class-class-class { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_41___}); + background: url(\${___CSS_LOADER_URL_REPLACEMENT_44___}); + background: url(\${___CSS_LOADER_URL_REPLACEMENT_40___}); + background: url(\${___CSS_LOADER_URL_REPLACEMENT_42___}); + background: url(\${___CSS_LOADER_URL_REPLACEMENT_43___}); + background: url(\${___CSS_LOADER_URL_REPLACEMENT_4___}); + background: url(\${___CSS_LOADER_URL_REPLACEMENT_4___}); +} + +/* Comment */ + +.class.class.class { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_42___}); + background: url(\${___CSS_LOADER_URL_REPLACEMENT_42___}); + background: url(\${___CSS_LOADER_URL_REPLACEMENT_42___}); + background: url(\${___CSS_LOADER_URL_REPLACEMENT_42___}); +} + +.other-test-case { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_41___}); + background: url(\${___CSS_LOADER_URL_REPLACEMENT_44___}); + background: url(\${___CSS_LOADER_URL_REPLACEMENT_40___}); + background: url(\${___CSS_LOADER_URL_REPLACEMENT_42___}); + background: url(\${___CSS_LOADER_URL_REPLACEMENT_43___}); + background: url(\${___CSS_LOADER_URL_REPLACEMENT_4___}); + background: url(\${___CSS_LOADER_URL_REPLACEMENT_41___}); + background: url(\${___CSS_LOADER_URL_REPLACEMENT_44___}); + background: url(\${___CSS_LOADER_URL_REPLACEMENT_40___}); + background: url(\${___CSS_LOADER_URL_REPLACEMENT_42___}); + background: url(\${___CSS_LOADER_URL_REPLACEMENT_43___}); + background: url(\${___CSS_LOADER_URL_REPLACEMENT_4___}); +} + +.qqq { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_45___}); +} + +.www { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_41___}); + background: url(\${___CSS_LOADER_URL_REPLACEMENT_44___}); + background: url(\${___CSS_LOADER_URL_REPLACEMENT_40___}); + background: url(\${___CSS_LOADER_URL_REPLACEMENT_42___}); + background: url(\${___CSS_LOADER_URL_REPLACEMENT_43___}); + background: url(\${___CSS_LOADER_URL_REPLACEMENT_4___}); + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); + background: url(\${___CSS_LOADER_URL_REPLACEMENT_40___}); + background: url(\${___CSS_LOADER_URL_REPLACEMENT_44___}); + background: url(\${___CSS_LOADER_URL_REPLACEMENT_44___}); +} + +.class { + /* Should be one import */ + background: url(\${___CSS_LOADER_URL_REPLACEMENT_46___}); + background: url(\${___CSS_LOADER_URL_REPLACEMENT_46___}); + + background: url(\${___CSS_LOADER_URL_REPLACEMENT_47___}); + background: url(\${___CSS_LOADER_URL_REPLACEMENT_47___}); + + background: url(\${___CSS_LOADER_URL_REPLACEMENT_48___}); + background: url(\${___CSS_LOADER_URL_REPLACEMENT_48___}); + + /* Should be two imports */ + background: url(\${___CSS_LOADER_URL_REPLACEMENT_47___}); + background: url(\${___CSS_LOADER_URL_REPLACEMENT_49___}); + + background: url(\${___CSS_LOADER_URL_REPLACEMENT_50___}); + background: url(\${___CSS_LOADER_URL_REPLACEMENT_51___}); + + background: url(\${___CSS_LOADER_URL_REPLACEMENT_52___}); + background: url(\${___CSS_LOADER_URL_REPLACEMENT_53___}); +} + +.base { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_54___}) 50% 50%/191px no-repeat; +} + +.strange { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} + +.my-background { + background-image: url(\${___CSS_LOADER_URL_REPLACEMENT_55___}); +} + +.class { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}, 'foo', './img.png', url('./img.png')); + background-image: image-set(url(\${___CSS_LOADER_URL_REPLACEMENT_0___}, 'foo', './img.png', url('./img.png')) 1x, url(\${___CSS_LOADER_URL_REPLACEMENT_21___}) 2x); +} + +.button { + background-image: url('data:image/svg+xml;utf8,'); +} + +/* We need to use \\\`resourceQuery: /inline/\\\` */ +/* Hard to test on webpack v4 */ +.qqq { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_56___}) +} + +.class { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_45___}); +} + +.class { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_45___}); +} + +/** Prefer relative **/ +.class { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_31___}); +} + +/** Prefer from modules **/ +.class { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_57___}); +} + +.class { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_2___}); +} + +.foo { + background-image: url(\${___CSS_LOADER_URL_REPLACEMENT_58___}); +} + +.bar { + background-image: url(\${___CSS_LOADER_URL_REPLACEMENT_59___}); +} +\`, ""]); +// Exports +var ___CSS_LOADER_STYLE_SHEET___ = new CSSStyleSheet(); +___CSS_LOADER_STYLE_SHEET___.replaceSync(___CSS_LOADER_EXPORT___.toString()); +export default ___CSS_LOADER_STYLE_SHEET___; +" +`; + +exports[`'exportType' option should work with 'css-style-sheet' value and urls: result 1`] = ` +CSSStyleSheet { + "text": "@import "./imported.css"; + +.class { + background: url(file:///webpack/public/path/img.png); +} + +.class { + background: url(file:///webpack/public/path/img.png); +} + +.class { + background: url(file:///webpack/public/path/img.png); +} + +.class { + background: url(file:///webpack/public/path/img.png#hash); +} + +.class { + background: url( + file:///webpack/public/path/img.png + ); +} + +.class { + background: green url( file:///webpack/public/path/img.png ) xyz; +} + +.class { + background: green url( file:///webpack/public/path/img.png ) xyz; +} + +.class { + background: green url( file:///webpack/public/path/img.png ) xyz; +} + +.class { + background: green url(file:///webpack/public/path/img.png) url(file:///webpack/public/path/other-img.png) xyz; +} + +.class { + background: green url( "file:///webpack/public/path/img%20img.png" ) xyz; +} + +.class { + background: green url( "file:///webpack/public/path/img%20img.png" ) xyz; +} + +.class { + background: green url(file:///webpack/public/path/img.png) xyz; +} + +.class { + background: green url(data:image/png;base64,AAA) url(http://example.com/image.jpg) url(//example.com/image.png) xyz; +} + +.class { + background-image: url("data:image/svg+xml;charset=utf-8,"); +} + +.class { + background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2042%2026%27%20fill%3D%27%2523007aff%27%3E%3Crect%20width%3D%274%27%20height%3D%274%27%2F%3E%3Crect%20x%3D%278%27%20y%3D%271%27%20width%3D%2734%27%20height%3D%272%27%2F%3E%3Crect%20y%3D%2711%27%20width%3D%274%27%20height%3D%274%27%2F%3E%3Crect%20x%3D%278%27%20y%3D%2712%27%20width%3D%2734%27%20height%3D%272%27%2F%3E%3Crect%20y%3D%2722%27%20width%3D%274%27%20height%3D%274%27%2F%3E%3Crect%20x%3D%278%27%20y%3D%2723%27%20width%3D%2734%27%20height%3D%272%27%2F%3E%3C%2Fsvg%3E"); +} + +.class { + filter: url("data:image/svg+xml;charset=utf-8,#filter"); +} + +.class { + filter: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%5C%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%5C%22%3E%3Cfilter%20id%3D%5C%22filter%5C%22%3E%3CfeGaussianBlur%20in%3D%5C%22SourceAlpha%5C%22%20stdDeviation%3D%5C%220%5C%22%20%2F%3E%3CfeOffset%20dx%3D%5C%221%5C%22%20dy%3D%5C%222%5C%22%20result%3D%5C%22offsetblur%5C%22%20%2F%3E%3CfeFlood%20flood-color%3D%5C%22rgba%28255%2C255%2C255%2C1%29%5C%22%20%2F%3E%3CfeComposite%20in2%3D%5C%22offsetblur%5C%22%20operator%3D%5C%22in%5C%22%20%2F%3E%3CfeMerge%3E%3CfeMergeNode%20%2F%3E%3CfeMergeNode%20in%3D%5C%22SourceGraphic%5C%22%20%2F%3E%3C%2FfeMerge%3E%3C%2Ffilter%3E%3C%2Fsvg%3E%23filter"); +} + +.highlight { + filter: url(#highlight); +} + +.highlight { + filter: url('#line-marker'); +} + +@font-face { + src: url(file:///webpack/public/path/font.woff) format('woff'), + url(file:///webpack/public/path/font.woff2) format('woff2'), + url(file:///webpack/public/path/font.eot) format('eot'), + url(file:///webpack/public/path/font.ttf) format('truetype'), + url("file:///webpack/public/path/font%20with%20spaces.eot") format("embedded-opentype"), + url(file:///webpack/public/path/font.svg#svgFontName) format('svg'), + url(file:///webpack/public/path/font.woff2) format('woff2'), + url(file:///webpack/public/path/font.eot?#iefix) format('embedded-opentype'), + url("file:///webpack/public/path/font%20with%20spaces.eot?#iefix") format('embedded-opentype'); +} + +@media (min-width: 500px) { + body { + background: url(file:///webpack/public/path/img.png); + } +} + +a { + content: "do not use url(path)"; +} + +b { + content: 'do not "use" url(path)'; +} + +@keyframes anim { + background: green url(file:///webpack/public/path/img.png) xyz; +} + +.a { + background-image: -webkit-image-set(url(file:///webpack/public/path/img1x.png) 1x, url(file:///webpack/public/path/img2x.png) 2x) +} + +.a { + background-image: image-set(url(file:///webpack/public/path/img1x.png) 1x, url(file:///webpack/public/path/img2x.png) 2x) +} + +.class { + background: green url() xyz; +} + +.class { + background: green url('') xyz; +} + +.class { + background: green url("") xyz; +} + +.class { + background: green url(' ') xyz; +} + +.class { + background: green url( + ) xyz; +} + +.class { + background: green url(https://raw.githubusercontent.com/webpack/media/master/logo/icon.png) xyz; +} + +.class { + background: green url(//raw.githubusercontent.com/webpack/media/master/logo/icon.png) xyz; +} + +.class { + background: url(file:///webpack/public/path/img.png); +} + +.class { + background: url(file:///webpack/public/path/img.png); +} + +.class { + background: url(file:///webpack/public/path/img.png#hash); +} + +.class { + background: url(file:///webpack/public/path/img.png#hash); +} + +.class { + background: url(file:///webpack/public/path/img.png); +} + +.class { + background-image: url(file:///webpack/public/path/img.png) url("data:image/svg+xml;charset=utf-8,") url(file:///webpack/public/path/img.png); +} + +.class { + background: ___CSS_LOADER_URL___; + background: ___CSS_LOADER_URL___INDEX___; + background: ___CSS_LOADER_URL___99999___; + background: ___CSS_LOADER_IMPORT___; + background: ___CSS_LOADER_IMPORT___INDEX___; + background: ___CSS_LOADER_IMPORT___99999___; +} + +.pure-url { + background: url(file:///webpack/public/path/img-simple.png); +} + +.root-relative { + background: url(file:///webpack/public/path/img-simple.png); +} + +.above-below { + background: url(file:///webpack/public/path/img-simple.png); +} + +.tilde { + background: url(file:///webpack/public/path/img.png); +} + +.aliases { + background: url(file:///webpack/public/path/img.png) ; +} + +a { + background: url(file:///webpack/public/path/img.png); +} + +a { + background: url(file:///webpack/public/path/img.png); +} + +@font-face { + src: url("//at.alicdn.com/t/font_515771_emcns5054x3whfr.eot"); +} + +.class { + /* Broken */ + background-image: -webkit-image-set(); + background-image: -webkit-image-set(''); + background-image: image-set(); + background-image: image-set(''); + background-image: image-set(""); + background-image: image-set("" 1x); + background-image: image-set(url()); + background-image: image-set( + url() + ); + background-image: image-set(URL()); + background-image: image-set(url('')); + background-image: image-set(url("")); + background-image: image-set(url('') 1x); + background-image: image-set(1x); + background-image: image-set( + 1x + ); + background: image-set(calc(1rem + 1px) 1x); + + /* Strings */ + background-image: -webkit-image-set("file:///webpack/public/path/img1x.png" 1x, "file:///webpack/public/path/img2x.png" 2x); + background-image: image-set("file:///webpack/public/path/img1x.png" 1x); + background-image: image-set("file:///webpack/public/path/img1x.png" 1x, "file:///webpack/public/path/img2x.png" 2x); + background-image: image-set("file:///webpack/public/path/img%20img.png" 1x, "file:///webpack/public/path/img%20img.png" 2x); + background-image: image-set("file:///webpack/public/path/img1x.png" 1x, "file:///webpack/public/path/img2x.png" 2x), + image-set("file:///webpack/public/path/img1x.png" 1x, "file:///webpack/public/path/img2x.png" 2x); + background-image: image-set( + "file:///webpack/public/path/img1x.png" 1x, + "file:///webpack/public/path/img2x.png" 2x, + "file:///webpack/public/path/img3x.png" 600dpi + ); + background-image: image-set("file:///webpack/public/path/img1x.png" 1x); + background-image: image-set("file:///webpack/public/path/img1x.png#hash" 1x); + background-image: image-set("file:///webpack/public/path/img1x.png?#iefix" 1x); + + /* With \`url\` function */ + background-image: -webkit-image-set(url(file:///webpack/public/path/img1x.png) 1x, url(file:///webpack/public/path/img2x.png) 2x); + background-image: -webkit-image-set(url(file:///webpack/public/path/img1x.png) 1x); + background-image: -webkit-image-set( + url(file:///webpack/public/path/img1x.png) 1x + ); + background-image: image-set(url(file:///webpack/public/path/img1x.png) 1x); + background-image: image-set( + url(file:///webpack/public/path/img1x.png) 1x + ); + background-image: image-set(url(file:///webpack/public/path/img1x.png) 1x, url(file:///webpack/public/path/img2x.png) 2x); + background-image: image-set( + url(file:///webpack/public/path/img1x.png) 1x, + url(file:///webpack/public/path/img2x.png) 2x, + url(file:///webpack/public/path/img3x.png) 600dpi + ); + background-image: image-set(url("file:///webpack/public/path/img%20img.png") 1x, url("file:///webpack/public/path/img%20img.png") 2x); + + background-image: image-set(url(file:///webpack/public/path/img1x.png) 1x, "file:///webpack/public/path/img2x.png" 2x); +} + +.class { + /* Not allowed on windows */ + /* background: url(./img\\"img.png); */ + background: url("file:///webpack/public/path/img'img.png"); + background: url("file:///webpack/public/path/img'''img.png"); + background: url("file:///webpack/public/path/img(img.png"); + background: url("file:///webpack/public/path/img)img.png"); + background: url("file:///webpack/public/path/img%20img.png"); + background: url("file:///webpack/public/path/img'()%20img.png"); + + background-image: image-set( + /* Not allowed on windows */ + /* url(./img\\"img.png) 1x, */ + url("file:///webpack/public/path/img'''img.png") 2x, + url("file:///webpack/public/path/img'img.png") 3x, + url("file:///webpack/public/path/img(img.png") 4x, + url("file:///webpack/public/path/img)img.png") 5x, + url("file:///webpack/public/path/img%20img.png") 6x, + url("file:///webpack/public/path/img'()%20img.png") 7x + ); +} + +.class-class-class { + background: url("file:///webpack/public/path/img'''img.png"); + background: url("file:///webpack/public/path/img'()%20img.png"); + background: url("file:///webpack/public/path/img'img.png"); + background: url("file:///webpack/public/path/img(img.png"); + background: url("file:///webpack/public/path/img)img.png"); + background: url("file:///webpack/public/path/img%20img.png"); + background: url("file:///webpack/public/path/img%20img.png"); +} + +/* Comment */ + +.class.class.class { + background: url("file:///webpack/public/path/img(img.png"); + background: url("file:///webpack/public/path/img(img.png"); + background: url("file:///webpack/public/path/img(img.png"); + background: url("file:///webpack/public/path/img(img.png"); +} + +.other-test-case { + background: url("file:///webpack/public/path/img'''img.png"); + background: url("file:///webpack/public/path/img'()%20img.png"); + background: url("file:///webpack/public/path/img'img.png"); + background: url("file:///webpack/public/path/img(img.png"); + background: url("file:///webpack/public/path/img)img.png"); + background: url("file:///webpack/public/path/img%20img.png"); + background: url("file:///webpack/public/path/img'''img.png"); + background: url("file:///webpack/public/path/img'()%20img.png"); + background: url("file:///webpack/public/path/img'img.png"); + background: url("file:///webpack/public/path/img(img.png"); + background: url("file:///webpack/public/path/img)img.png"); + background: url("file:///webpack/public/path/img%20img.png"); +} + +.qqq { + background: url(file:///webpack/public/path/img.png); +} + +.www { + background: url("file:///webpack/public/path/img'''img.png"); + background: url("file:///webpack/public/path/img'()%20img.png"); + background: url("file:///webpack/public/path/img'img.png"); + background: url("file:///webpack/public/path/img(img.png"); + background: url("file:///webpack/public/path/img)img.png"); + background: url("file:///webpack/public/path/img%20img.png"); + background: url(file:///webpack/public/path/img.png); + background: url(file:///webpack/public/path/img.png); + background: url("file:///webpack/public/path/img'img.png"); + background: url("file:///webpack/public/path/img'()%20img.png"); + background: url("file:///webpack/public/path/img'()%20img.png"); +} + +.class { + /* Should be one import */ + background: url(file:///webpack/public/path/something.png); + background: url(file:///webpack/public/path/something.png); + + background: url(file:///webpack/public/path/something.png); + background: url(file:///webpack/public/path/something.png); + + background: url(file:///webpack/public/path/something.png#hash); + background: url(file:///webpack/public/path/something.png#hash); + + /* Should be two imports */ + background: url(file:///webpack/public/path/something.png); + background: url(file:///webpack/public/path/something.png); + + background: url(file:///webpack/public/path/something.png#foo); + background: url(file:///webpack/public/path/something.png#bar); + + background: url(file:///webpack/public/path/something.png); + background: url(file:///webpack/public/path/something.png); +} + +.base { + background: url("data:image/svg+xml;charset=UTF-8,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22utf-8%22%3F%3E%0A%3C%21DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%0A%3Csvg%20version%3D%221.1%22%20id%3D%22Layer_1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20x%3D%220px%22%20y%3D%220px%22%0A%09%20width%3D%22191px%22%20height%3D%22191px%22%20viewBox%3D%220%200%20191%20191%22%20enable-background%3D%22new%200%200%20191%20191%22%20xml%3Aspace%3D%22preserve%22%3E%0A%3Cpath%20fill%3D%22%23636363%22%20d%3D%22M95.5%2C0C42.8%2C0%2C0%2C42.8%2C0%2C95.5S42.8%2C191%2C95.5%2C191S191%2C148.2%2C191%2C95.5S148.2%2C0%2C95.5%2C0z%20M95.5%2C187.6%0A%09c-50.848%2C0-92.1-41.25-92.1-92.1c0-50.848%2C41.252-92.1%2C92.1-92.1c50.85%2C0%2C92.1%2C41.252%2C92.1%2C92.1%0A%09C187.6%2C146.35%2C146.35%2C187.6%2C95.5%2C187.6z%22%2F%3E%0A%3Cg%3E%0A%09%3Cpath%20fill%3D%22%23636363%22%20d%3D%22M92.9%2C10v8.6H91v-6.5c-0.1%2C0.1-0.2%2C0.2-0.4%2C0.3c-0.2%2C0.1-0.3%2C0.2-0.4%2C0.2c-0.1%2C0-0.3%2C0.1-0.5%2C0.2%0A%09%09c-0.2%2C0.1-0.3%2C0.1-0.5%2C0.1v-1.6c0.5-0.1%2C0.9-0.3%2C1.4-0.5c0.5-0.2%2C0.8-0.5%2C1.2-0.7h1.1V10z%22%2F%3E%0A%09%3Cpath%20fill%3D%22%23636363%22%20d%3D%22M97.1%2C17.1h3.602v1.5h-5.6V18c0-0.4%2C0.1-0.8%2C0.2-1.2c0.1-0.4%2C0.3-0.6%2C0.5-0.9c0.2-0.3%2C0.5-0.5%2C0.7-0.7%0A%09%09c0.2-0.2%2C0.5-0.4%2C0.7-0.6c0.199-0.2%2C0.5-0.3%2C0.6-0.5c0.102-0.2%2C0.301-0.3%2C0.5-0.5c0.2-0.2%2C0.2-0.3%2C0.301-0.5%0A%09%09c0.101-0.2%2C0.101-0.3%2C0.101-0.5c0-0.4-0.101-0.6-0.3-0.8c-0.2-0.2-0.4-0.3-0.801-0.3c-0.699%2C0-1.399%2C0.3-2.101%2C0.9v-1.6%0A%09%09c0.7-0.5%2C1.5-0.7%2C2.5-0.7c0.399%2C0%2C0.8%2C0.1%2C1.101%2C0.2c0.301%2C0.1%2C0.601%2C0.3%2C0.899%2C0.5c0.3%2C0.2%2C0.399%2C0.5%2C0.5%2C0.8%0A%09%09c0.101%2C0.3%2C0.2%2C0.6%2C0.2%2C1s-0.102%2C0.7-0.2%2C1c-0.099%2C0.3-0.3%2C0.6-0.5%2C0.8c-0.2%2C0.2-0.399%2C0.5-0.7%2C0.7c-0.3%2C0.2-0.5%2C0.4-0.8%2C0.6%0A%09%09c-0.2%2C0.1-0.399%2C0.3-0.5%2C0.4s-0.3%2C0.3-0.5%2C0.4s-0.2%2C0.3-0.3%2C0.4C97.1%2C17%2C97.1%2C17%2C97.1%2C17.1z%22%2F%3E%0A%3C%2Fg%3E%0A%3Cg%3E%0A%09%3Cpath%20fill%3D%22%23636363%22%20d%3D%22M15%2C95.4c0%2C0.7-0.1%2C1.4-0.2%2C2c-0.1%2C0.6-0.4%2C1.1-0.7%2C1.5C13.8%2C99.3%2C13.4%2C99.6%2C12.9%2C99.8s-1%2C0.3-1.5%2C0.3%0A%09%09c-0.7%2C0-1.3-0.1-1.8-0.3v-1.5c0.4%2C0.3%2C1%2C0.4%2C1.6%2C0.4c0.6%2C0%2C1.1-0.2%2C1.5-0.7c0.4-0.5%2C0.5-1.1%2C0.5-1.9l0%2C0%0A%09%09C12.8%2C96.7%2C12.3%2C96.9%2C11.5%2C96.9c-0.3%2C0-0.7-0.102-1-0.2c-0.3-0.101-0.5-0.3-0.8-0.5c-0.3-0.2-0.4-0.5-0.5-0.8%0A%09%09c-0.1-0.3-0.2-0.7-0.2-1c0-0.4%2C0.1-0.8%2C0.2-1.2c0.1-0.4%2C0.3-0.7%2C0.6-0.9c0.3-0.2%2C0.6-0.5%2C0.9-0.6c0.3-0.1%2C0.8-0.2%2C1.2-0.2%0A%09%09c0.5%2C0%2C0.9%2C0.1%2C1.2%2C0.3c0.3%2C0.2%2C0.7%2C0.4%2C0.9%2C0.8s0.5%2C0.7%2C0.6%2C1.2S15%2C94.8%2C15%2C95.4z%20M13.1%2C94.4c0-0.2%2C0-0.4-0.1-0.6%0A%09%09c-0.1-0.2-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.2-0.4-0.3c-0.2-0.1-0.3-0.1-0.5-0.1c-0.2%2C0-0.3%2C0-0.4%2C0.1s-0.3%2C0.2-0.3%2C0.3%0A%09%09c0%2C0.1-0.2%2C0.3-0.2%2C0.4c0%2C0.1-0.1%2C0.4-0.1%2C0.6c0%2C0.2%2C0%2C0.4%2C0.1%2C0.6c0.1%2C0.2%2C0.1%2C0.3%2C0.2%2C0.4c0.1%2C0.1%2C0.2%2C0.2%2C0.4%2C0.3%0A%09%09c0.2%2C0.1%2C0.3%2C0.1%2C0.5%2C0.1c0.2%2C0%2C0.3%2C0%2C0.4-0.1s0.2-0.2%2C0.3-0.3c0.1-0.1%2C0.2-0.2%2C0.2-0.4C13%2C94.7%2C13.1%2C94.6%2C13.1%2C94.4z%22%2F%3E%0A%3C%2Fg%3E%0A%3Cg%3E%0A%09%3Cpath%20fill%3D%22%23636363%22%20d%3D%22M176%2C99.7V98.1c0.6%2C0.4%2C1.2%2C0.602%2C2%2C0.602c0.5%2C0%2C0.8-0.102%2C1.1-0.301c0.301-0.199%2C0.4-0.5%2C0.4-0.801%0A%09%09c0-0.398-0.2-0.699-0.5-0.898c-0.3-0.2-0.8-0.301-1.3-0.301h-0.802V95h0.701c1.101%2C0%2C1.601-0.4%2C1.601-1.1c0-0.7-0.4-1-1.302-1%0A%09%09c-0.6%2C0-1.1%2C0.2-1.6%2C0.5v-1.5c0.6-0.3%2C1.301-0.4%2C2.1-0.4c0.9%2C0%2C1.5%2C0.2%2C2%2C0.6s0.701%2C0.9%2C0.701%2C1.5c0%2C1.1-0.601%2C1.8-1.701%2C2.1l0%2C0%0A%09%09c0.602%2C0.1%2C1.102%2C0.3%2C1.4%2C0.6s0.5%2C0.8%2C0.5%2C1.3c0%2C0.801-0.3%2C1.4-0.9%2C1.9c-0.6%2C0.5-1.398%2C0.7-2.398%2C0.7%0A%09%09C177.2%2C100.1%2C176.5%2C100%2C176%2C99.7z%22%2F%3E%0A%3C%2Fg%3E%0A%3Cg%3E%0A%09%3Cpath%20fill%3D%22%23636363%22%20d%3D%22M98.5%2C179.102c0%2C0.398-0.1%2C0.799-0.2%2C1.199C98.2%2C180.7%2C98%2C181%2C97.7%2C181.2s-0.601%2C0.5-0.9%2C0.601%0A%09%09c-0.3%2C0.1-0.7%2C0.199-1.2%2C0.199c-0.5%2C0-0.9-0.1-1.3-0.3c-0.4-0.2-0.7-0.399-0.9-0.8c-0.2-0.4-0.5-0.7-0.6-1.2%0A%09%09c-0.1-0.5-0.2-1-0.2-1.601c0-0.699%2C0.1-1.399%2C0.3-2c0.2-0.601%2C0.4-1.101%2C0.8-1.5c0.4-0.399%2C0.7-0.699%2C1.2-1c0.5-0.3%2C1-0.3%2C1.6-0.3%0A%09%09c0.6%2C0%2C1.2%2C0.101%2C1.5%2C0.199v1.5c-0.4-0.199-0.9-0.399-1.4-0.399c-0.3%2C0-0.6%2C0.101-0.8%2C0.2c-0.2%2C0.101-0.5%2C0.3-0.7%2C0.5%0A%09%09c-0.2%2C0.199-0.3%2C0.5-0.4%2C0.8c-0.1%2C0.301-0.2%2C0.7-0.2%2C1.101l0%2C0c0.4-0.601%2C1-0.8%2C1.8-0.8c0.3%2C0%2C0.7%2C0.1%2C0.9%2C0.199%0A%09%09c0.2%2C0.101%2C0.5%2C0.301%2C0.7%2C0.5c0.199%2C0.2%2C0.398%2C0.5%2C0.5%2C0.801C98.5%2C178.2%2C98.5%2C178.7%2C98.5%2C179.102z%20M96.7%2C179.2%0A%09%09c0-0.899-0.4-1.399-1.1-1.399c-0.2%2C0-0.3%2C0-0.5%2C0.1c-0.2%2C0.101-0.3%2C0.201-0.4%2C0.301c-0.1%2C0.101-0.2%2C0.199-0.2%2C0.4%0A%09%09c0%2C0.199-0.1%2C0.299-0.1%2C0.5c0%2C0.199%2C0%2C0.398%2C0.1%2C0.6s0.1%2C0.3%2C0.2%2C0.5c0.1%2C0.199%2C0.2%2C0.199%2C0.4%2C0.3c0.2%2C0.101%2C0.3%2C0.101%2C0.5%2C0.101%0A%09%09c0.2%2C0%2C0.3%2C0%2C0.5-0.101c0.2-0.101%2C0.301-0.199%2C0.301-0.3c0-0.1%2C0.199-0.301%2C0.199-0.399C96.6%2C179.7%2C96.7%2C179.4%2C96.7%2C179.2z%22%2F%3E%0A%3C%2Fg%3E%0A%3Ccircle%20fill%3D%22%23636363%22%20cx%3D%2295%22%20cy%3D%2295%22%20r%3D%227%22%2F%3E%0A%3C%2Fsvg%3E%0A") 50% 50%/191px no-repeat; +} + +.strange { + background: url(file:///webpack/public/path/img.png); +} + +.my-background { + background-image: url(file:///webpack/public/path/img.png); +} + +.class { + background: url(file:///webpack/public/path/img.png, 'foo', './img.png', url('./img.png')); + background-image: image-set(url(file:///webpack/public/path/img.png, 'foo', './img.png', url('./img.png')) 1x, url(file:///webpack/public/path/img2x.png) 2x); +} + +.button { + background-image: url('data:image/svg+xml;utf8,'); +} + +/* We need to use \`resourceQuery: /inline/\` */ +/* Hard to test on webpack v4 */ +.qqq { + background: url(file:///webpack/public/path/custom-img.png) +} + +.class { + background: url(file:///webpack/public/path/img.png); +} + +.class { + background: url(file:///webpack/public/path/img.png); +} + +/** Prefer relative **/ +.class { + background: url(file:///webpack/public/path/img.png); +} + +/** Prefer from modules **/ +.class { + background: url(file:///webpack/public/path/other.png); +} + +.class { + background: url(file:///webpack/public/path/img.png); +} + +.foo { + background-image: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27%3e%3cpath fill=%27none%27 stroke=%27%23343a40%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27 stroke-width=%272%27 d=%27M2 5l6 6 6-6%27/%3e%3c/svg%3e"); +} + +.bar { + background-image: url("data:image/svg+xml;utf8,"); +} +", +} +`; + +exports[`'exportType' option should work with 'css-style-sheet' value and urls: warnings 1`] = ` +[ + "ModuleWarning: Module Warning (from \`replaced original path\`): +(120:3) from "postcss-url-parser" plugin: Unable to find uri in 'background: green url() xyz' + +Code: + background: green url() xyz +", + "ModuleWarning: Module Warning (from \`replaced original path\`): +(124:3) from "postcss-url-parser" plugin: Unable to find uri in 'background: green url('') xyz' + +Code: + background: green url('') xyz +", + "ModuleWarning: Module Warning (from \`replaced original path\`): +(128:3) from "postcss-url-parser" plugin: Unable to find uri in 'background: green url("") xyz' + +Code: + background: green url("") xyz +", + "ModuleWarning: Module Warning (from \`replaced original path\`): +(132:3) from "postcss-url-parser" plugin: Unable to find uri in 'background: green url(' ') xyz' + +Code: + background: green url(' ') xyz +", + "ModuleWarning: Module Warning (from \`replaced original path\`): +(136:3) from "postcss-url-parser" plugin: Unable to find uri in 'background: green url( + ) xyz' + +Code: + background: green url( + ) xyz +", + "ModuleWarning: Module Warning (from \`replaced original path\`): +(216:3) from "postcss-url-parser" plugin: Unable to find uri in 'background-image: -webkit-image-set('')' + +Code: + background-image: -webkit-image-set('') +", + "ModuleWarning: Module Warning (from \`replaced original path\`): +(218:3) from "postcss-url-parser" plugin: Unable to find uri in 'background-image: image-set('')' + +Code: + background-image: image-set('') +", + "ModuleWarning: Module Warning (from \`replaced original path\`): +(219:3) from "postcss-url-parser" plugin: Unable to find uri in 'background-image: image-set("")' + +Code: + background-image: image-set("") +", + "ModuleWarning: Module Warning (from \`replaced original path\`): +(220:3) from "postcss-url-parser" plugin: Unable to find uri in 'background-image: image-set("" 1x)' + +Code: + background-image: image-set("" 1x) +", + "ModuleWarning: Module Warning (from \`replaced original path\`): +(221:3) from "postcss-url-parser" plugin: Unable to find uri in 'background-image: image-set(url())' + +Code: + background-image: image-set(url()) +", + "ModuleWarning: Module Warning (from \`replaced original path\`): +(222:3) from "postcss-url-parser" plugin: Unable to find uri in 'background-image: image-set( + url() + )' + +Code: + background-image: image-set( + url() + ) +", + "ModuleWarning: Module Warning (from \`replaced original path\`): +(225:3) from "postcss-url-parser" plugin: Unable to find uri in 'background-image: image-set(URL())' + +Code: + background-image: image-set(URL()) +", + "ModuleWarning: Module Warning (from \`replaced original path\`): +(226:3) from "postcss-url-parser" plugin: Unable to find uri in 'background-image: image-set(url(''))' + +Code: + background-image: image-set(url('')) +", + "ModuleWarning: Module Warning (from \`replaced original path\`): +(227:3) from "postcss-url-parser" plugin: Unable to find uri in 'background-image: image-set(url(""))' + +Code: + background-image: image-set(url("")) +", + "ModuleWarning: Module Warning (from \`replaced original path\`): +(228:3) from "postcss-url-parser" plugin: Unable to find uri in 'background-image: image-set(url('') 1x)' + +Code: + background-image: image-set(url('') 1x) +", +] +`; + +exports[`'exportType' option should work with 'css-style-sheet' value and with 'sass-loader': errors 1`] = `[]`; + +exports[`'exportType' option should work with 'css-style-sheet' value and with 'sass-loader': module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../src/runtime/api.js"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`body { + font: 100% Helvetica, sans-serif; + color: #333; +}\`, ""]); +// Exports +var ___CSS_LOADER_STYLE_SHEET___ = new CSSStyleSheet(); +___CSS_LOADER_STYLE_SHEET___.replaceSync(___CSS_LOADER_EXPORT___.toString()); +export default ___CSS_LOADER_STYLE_SHEET___; +" +`; + +exports[`'exportType' option should work with 'css-style-sheet' value and with 'sass-loader': result 1`] = ` +CSSStyleSheet { + "text": "body { + font: 100% Helvetica, sans-serif; + color: #333; +}", +} +`; + +exports[`'exportType' option should work with 'css-style-sheet' value and with 'sass-loader': warnings 1`] = ` +[ + "ModuleWarning: Module Warning (from \`replaced original path\`): +Deprecation The legacy JS API is deprecated and will be removed in Dart Sass 2.0.0. + +More info: https://sass-lang.com/d/legacy-js-api", +] +`; + +exports[`'exportType' option should work with 'css-style-sheet' value: errors 1`] = `[]`; + +exports[`'exportType' option should work with 'css-style-sheet' value: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../src/runtime/api.js"; +import ___CSS_LOADER_GET_URL_IMPORT___ from "../../src/runtime/getUrl.js"; +var ___CSS_LOADER_URL_IMPORT_0___ = new URL("./url/img.png", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_1___ = new URL("data:img/jpg;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAhxJREFUSA3tk71rU1EYxnMTEoJUkowWwdJ2akEHBfGjCiIF6ZylVUKSm2TqZLGI+A/oIu2UXm8C4lAyF4SWji0tdFLo1Eo7VN0SaBEhH7e/Nz0nPTfGOjiaCyfPc5734zlfCQT6X/8E/vUErL81KBaL9y3LSnued5PcITjUOwR3gsFg2bbtjYt6/NGgXC4P1et1l2aPLmpAbD0SidjpdPqgV15PA9d17zQajU8UxHQRK/4G35Q5pveAK8LlI1ZjPMnlcltnyvnvbwaO41xvtVqy7YHztMACq5xnlb9EY3dRdvcGo1kj5wR+t1AofDG0gM+A875E8DNjRCexsrV8Pj9ZqVQitVrtqejxePxjMpmss5hVTB4buXvMb2DyU2tBTRS+BjvNlVYUpPl7iuVO3Gq1uoQx1FtSOW1gPgp5ZWrdBtNmUDgv5asgxQ8F1af5vhY0YjyjuWC3wTszKJz7GBOkcFlQfW2ONq4FjWi+Hj6DRCKxQOK2TlY4x92EuYd5dvMAbYIzfikau3pu5tJ8KxaLLfo0cyKci7tK4TZjUMcoXAmHwzle0Q/RaC5P1GFMyVx9R9Fo9HYqlTrSgqDvFelAqVQa5hmuMR/WGtjAaBdjwBoDQ0ZsnwVMZjKZ9n0Zem8DSeDPdrnZbL6F2l3NOvUYNZk4oVDoRTabPe4EDNJzB0ZcjAYxeoZ2i3FNxQ7BHYw/cB/fldaH//UETgHHO8S44KbfXgAAAABJRU5ErkJggg==", import.meta.url); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); +var ___CSS_LOADER_URL_REPLACEMENT_1___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_1___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`@charset "UTF-8"; + +/* Comment */ + +.class { + color: red; + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} + +.class-duplicate-url { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} + +:root { + --foo: 1px; + --bar: 2px; +} + +.class { a: b c d; } + +.two {} + +.u-m\\\\+ { a: b c d; } + +.class { content: "\\\\F10C" } + +@media only screen and (max-width: 600px) { + body { + background-color: lightblue; + } +} + +.class { + content: "\\\\2193"; + content: "\\\\2193\\\\2193"; + content: "\\\\2193 \\\\2193"; + content: "\\\\2193\\\\2193\\\\2193"; + content: "\\\\2193 \\\\2193 \\\\2193"; +} + +.-top {} +.\\\\-top {} + +#\\\\#test {} + +.grid { + display: flex; + flex-wrap: wrap; +} +.grid.\\\\-top { + align-items: flex-start; +} +.grid.-top { + align-items: flex-start; +} +.grid.\\\\-middle { + align-items: center; +} +.grid.\\\\-bottom { + align-items: flex-end; +} + +.u-m\\\\00002b {} + +.u-m00002b {} + +#u-m\\\\+ {} + +body { + font-family: '微软雅黑'; /* some chinese font name */ +} + +.myStyle { + content: '\\\\e901'; +} + +.myStyle { + content: '\\\\E901'; +} + +.♫ {} + +.\\\\3A \\\\\\\`\\\\( {} /* matches elements with class=":\\\`(" */ +.\\\\31 a2b3c {} /* matches elements with class="1a2b3c" */ +#\\\\#fake-id {} /* matches the element with id="#fake-id" */ +#-a-b-c- {} /* matches the element with id="-a-b-c-" */ +#© {} /* matches the element with id="©" */ + +:root { + --title-align: center; + --sr-only: { + position: absolute; + width: 1px; + height: 1px; + padding: 0; + overflow: hidden; + clip: rect(0,0,0,0); + white-space: nowrap; + clip-path: inset(50%); + border: 0; + }; +} + +.test { + content: "\\\\2014\\\\A0"; + content: "\\\\2014 \\\\A0"; + content: "\\\\A0 \\\\2014"; + content: "\\\\A0\\\\2014"; + margin-top: 1px\\\\9; + background-color: #000\\\\9; +} + +.light.on .bulb:before{ + content: '💡'; +} + +.base64 { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_1___}); +} + +a[href=''] { + color: red; +} + +a[href='' i] { + color: red; +} + +a[href=""] { + color: blue; +} + +a[href="" i] { + color: blue; +} +\`, ""]); +// Exports +var ___CSS_LOADER_STYLE_SHEET___ = new CSSStyleSheet(); +___CSS_LOADER_STYLE_SHEET___.replaceSync(___CSS_LOADER_EXPORT___.toString()); +export default ___CSS_LOADER_STYLE_SHEET___; +" +`; + +exports[`'exportType' option should work with 'css-style-sheet' value: result 1`] = ` +CSSStyleSheet { + "text": "@charset "UTF-8"; + +/* Comment */ + +.class { + color: red; + background: url(file:///webpack/public/path/img.png); +} + +.class-duplicate-url { + background: url(file:///webpack/public/path/img.png); +} + +:root { + --foo: 1px; + --bar: 2px; +} + +.class { a: b c d; } + +.two {} + +.u-m\\+ { a: b c d; } + +.class { content: "\\F10C" } + +@media only screen and (max-width: 600px) { + body { + background-color: lightblue; + } +} + +.class { + content: "\\2193"; + content: "\\2193\\2193"; + content: "\\2193 \\2193"; + content: "\\2193\\2193\\2193"; + content: "\\2193 \\2193 \\2193"; +} + +.-top {} +.\\-top {} + +#\\#test {} + +.grid { + display: flex; + flex-wrap: wrap; +} +.grid.\\-top { + align-items: flex-start; +} +.grid.-top { + align-items: flex-start; +} +.grid.\\-middle { + align-items: center; +} +.grid.\\-bottom { + align-items: flex-end; +} + +.u-m\\00002b {} + +.u-m00002b {} + +#u-m\\+ {} + +body { + font-family: '微软雅黑'; /* some chinese font name */ +} + +.myStyle { + content: '\\e901'; +} + +.myStyle { + content: '\\E901'; +} + +.♫ {} + +.\\3A \\\`\\( {} /* matches elements with class=":\`(" */ +.\\31 a2b3c {} /* matches elements with class="1a2b3c" */ +#\\#fake-id {} /* matches the element with id="#fake-id" */ +#-a-b-c- {} /* matches the element with id="-a-b-c-" */ +#© {} /* matches the element with id="©" */ + +:root { + --title-align: center; + --sr-only: { + position: absolute; + width: 1px; + height: 1px; + padding: 0; + overflow: hidden; + clip: rect(0,0,0,0); + white-space: nowrap; + clip-path: inset(50%); + border: 0; + }; +} + +.test { + content: "\\2014\\A0"; + content: "\\2014 \\A0"; + content: "\\A0 \\2014"; + content: "\\A0\\2014"; + margin-top: 1px\\9; + background-color: #000\\9; +} + +.light.on .bulb:before{ + content: '💡'; +} + +.base64 { + background: url(data:img/jpg;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAhxJREFUSA3tk71rU1EYxnMTEoJUkowWwdJ2akEHBfGjCiIF6ZylVUKSm2TqZLGI+A/oIu2UXm8C4lAyF4SWji0tdFLo1Eo7VN0SaBEhH7e/Nz0nPTfGOjiaCyfPc5734zlfCQT6X/8E/vUErL81KBaL9y3LSnued5PcITjUOwR3gsFg2bbtjYt6/NGgXC4P1et1l2aPLmpAbD0SidjpdPqgV15PA9d17zQajU8UxHQRK/4G35Q5pveAK8LlI1ZjPMnlcltnyvnvbwaO41xvtVqy7YHztMACq5xnlb9EY3dRdvcGo1kj5wR+t1AofDG0gM+A875E8DNjRCexsrV8Pj9ZqVQitVrtqejxePxjMpmss5hVTB4buXvMb2DyU2tBTRS+BjvNlVYUpPl7iuVO3Gq1uoQx1FtSOW1gPgp5ZWrdBtNmUDgv5asgxQ8F1af5vhY0YjyjuWC3wTszKJz7GBOkcFlQfW2ONq4FjWi+Hj6DRCKxQOK2TlY4x92EuYd5dvMAbYIzfikau3pu5tJ8KxaLLfo0cyKci7tK4TZjUMcoXAmHwzle0Q/RaC5P1GFMyVx9R9Fo9HYqlTrSgqDvFelAqVQa5hmuMR/WGtjAaBdjwBoDQ0ZsnwVMZjKZ9n0Zem8DSeDPdrnZbL6F2l3NOvUYNZk4oVDoRTabPe4EDNJzB0ZcjAYxeoZ2i3FNxQ7BHYw/cB/fldaH//UETgHHO8S44KbfXgAAAABJRU5ErkJggg==); +} + +a[href=''] { + color: red; +} + +a[href='' i] { + color: red; +} + +a[href=""] { + color: blue; +} + +a[href="" i] { + color: blue; +} +", +} +`; + +exports[`'exportType' option should work with 'css-style-sheet' value: warnings 1`] = `[]`; + +exports[`'exportType' option should work with 'string' value and CSS modules: errors 1`] = `[]`; + +exports[`'exportType' option should work with 'string' value and CSS modules: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../src/runtime/api.js"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`.dvYI1gdIOPlJqjwAWOo8 { + color: red; +} +\`, ""]); +// Exports +var _1 = \`dvYI1gdIOPlJqjwAWOo8\`; +export { _1 as "some-class" }; +export default ___CSS_LOADER_EXPORT___.toString(); +" +`; + +exports[`'exportType' option should work with 'string' value and CSS modules: result 1`] = ` +{ + "css": ".dvYI1gdIOPlJqjwAWOo8 { + color: red; +} +", + "locals": { + "someClass": "dvYI1gdIOPlJqjwAWOo8", + }, +} +`; + +exports[`'exportType' option should work with 'string' value and CSS modules: warnings 1`] = `[]`; + +exports[`'exportType' option should work with 'string' value and generate source maps: errors 1`] = `[]`; + +exports[`'exportType' option should work with 'string' value and generate source maps: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from "../../src/runtime/sourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../src/runtime/api.js"; +import ___CSS_LOADER_GET_URL_IMPORT___ from "../../src/runtime/getUrl.js"; +var ___CSS_LOADER_URL_IMPORT_0___ = new URL("./url/img.png", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_1___ = new URL("data:img/jpg;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAhxJREFUSA3tk71rU1EYxnMTEoJUkowWwdJ2akEHBfGjCiIF6ZylVUKSm2TqZLGI+A/oIu2UXm8C4lAyF4SWji0tdFLo1Eo7VN0SaBEhH7e/Nz0nPTfGOjiaCyfPc5734zlfCQT6X/8E/vUErL81KBaL9y3LSnued5PcITjUOwR3gsFg2bbtjYt6/NGgXC4P1et1l2aPLmpAbD0SidjpdPqgV15PA9d17zQajU8UxHQRK/4G35Q5pveAK8LlI1ZjPMnlcltnyvnvbwaO41xvtVqy7YHztMACq5xnlb9EY3dRdvcGo1kj5wR+t1AofDG0gM+A875E8DNjRCexsrV8Pj9ZqVQitVrtqejxePxjMpmss5hVTB4buXvMb2DyU2tBTRS+BjvNlVYUpPl7iuVO3Gq1uoQx1FtSOW1gPgp5ZWrdBtNmUDgv5asgxQ8F1af5vhY0YjyjuWC3wTszKJz7GBOkcFlQfW2ONq4FjWi+Hj6DRCKxQOK2TlY4x92EuYd5dvMAbYIzfikau3pu5tJ8KxaLLfo0cyKci7tK4TZjUMcoXAmHwzle0Q/RaC5P1GFMyVx9R9Fo9HYqlTrSgqDvFelAqVQa5hmuMR/WGtjAaBdjwBoDQ0ZsnwVMZjKZ9n0Zem8DSeDPdrnZbL6F2l3NOvUYNZk4oVDoRTabPe4EDNJzB0ZcjAYxeoZ2i3FNxQ7BHYw/cB/fldaH//UETgHHO8S44KbfXgAAAABJRU5ErkJggg==", import.meta.url); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___); +var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); +var ___CSS_LOADER_URL_REPLACEMENT_1___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_1___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`@charset "UTF-8"; + +/* Comment */ + +.class { + color: red; + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} + +.class-duplicate-url { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} + +:root { + --foo: 1px; + --bar: 2px; +} + +.class { a: b c d; } + +.two {} + +.u-m\\\\+ { a: b c d; } + +.class { content: "\\\\F10C" } + +@media only screen and (max-width: 600px) { + body { + background-color: lightblue; + } +} + +.class { + content: "\\\\2193"; + content: "\\\\2193\\\\2193"; + content: "\\\\2193 \\\\2193"; + content: "\\\\2193\\\\2193\\\\2193"; + content: "\\\\2193 \\\\2193 \\\\2193"; +} + +.-top {} +.\\\\-top {} + +#\\\\#test {} + +.grid { + display: flex; + flex-wrap: wrap; +} +.grid.\\\\-top { + align-items: flex-start; +} +.grid.-top { + align-items: flex-start; +} +.grid.\\\\-middle { + align-items: center; +} +.grid.\\\\-bottom { + align-items: flex-end; +} + +.u-m\\\\00002b {} + +.u-m00002b {} + +#u-m\\\\+ {} + +body { + font-family: '微软雅黑'; /* some chinese font name */ +} + +.myStyle { + content: '\\\\e901'; +} + +.myStyle { + content: '\\\\E901'; +} + +.♫ {} + +.\\\\3A \\\\\\\`\\\\( {} /* matches elements with class=":\\\`(" */ +.\\\\31 a2b3c {} /* matches elements with class="1a2b3c" */ +#\\\\#fake-id {} /* matches the element with id="#fake-id" */ +#-a-b-c- {} /* matches the element with id="-a-b-c-" */ +#© {} /* matches the element with id="©" */ + +:root { + --title-align: center; + --sr-only: { + position: absolute; + width: 1px; + height: 1px; + padding: 0; + overflow: hidden; + clip: rect(0,0,0,0); + white-space: nowrap; + clip-path: inset(50%); + border: 0; + }; +} + +.test { + content: "\\\\2014\\\\A0"; + content: "\\\\2014 \\\\A0"; + content: "\\\\A0 \\\\2014"; + content: "\\\\A0\\\\2014"; + margin-top: 1px\\\\9; + background-color: #000\\\\9; +} + +.light.on .bulb:before{ + content: '💡'; +} + +.base64 { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_1___}); +} + +a[href=''] { + color: red; +} + +a[href='' i] { + color: red; +} + +a[href=""] { + color: blue; +} + +a[href="" i] { + color: blue; +} +\`, "",{"version":3,"sources":["webpack://./basic-css-style-sheet.css"],"names":[],"mappings":"AAAA,gBAAgB;;AAEhB,YAAY;;AAEZ;EACE,UAAU;EACV,mDAAgC;AAClC;;AAEA;EACE,mDAAgC;AAClC;;AAEA;EACE,UAAU;EACV,UAAU;AACZ;;AAEA,SAAS,QAAQ,EAAE;;AAEnB,MAAM;;AAEN,SAAS,QAAQ,EAAE;;AAEnB,SAAS,iBAAiB;;AAE1B;EACE;IACE,2BAA2B;EAC7B;AACF;;AAEA;EACE,gBAAgB;EAChB,qBAAqB;EACrB,sBAAsB;EACtB,0BAA0B;EAC1B,4BAA4B;AAC9B;;AAEA,OAAO;AACP,QAAQ;;AAER,SAAS;;AAET;EACE,aAAa;EACb,eAAe;AACjB;AACA;EACE,uBAAuB;AACzB;AACA;EACE,uBAAuB;AACzB;AACA;EACE,mBAAmB;AACrB;AACA;EACE,qBAAqB;AACvB;;AAEA,aAAa;;AAEb,YAAY;;AAEZ,QAAQ;;AAER;EACE,mBAAmB,EAAE,2BAA2B;AAClD;;AAEA;EACE,gBAAgB;AAClB;;AAEA;EACE,gBAAgB;AAClB;;AAEA,IAAI;;AAEJ,WAAW,EAAE,sCAAsC;AACnD,YAAY,EAAE,yCAAyC;AACvD,YAAY,EAAE,2CAA2C;AACzD,UAAU,EAAE,0CAA0C;AACtD,IAAI,EAAE,oCAAoC;;AAE1C;EACE,qBAAqB;EACrB;;;;;;;;;;GAUC;AACH;;AAEA;EACE,mBAAmB;EACnB,oBAAoB;EACpB,oBAAoB;EACpB,mBAAmB;EACnB,iBAAiB;EACjB,wBAAwB;AAC1B;;AAEA;EACE,aAAa;AACf;;AAEA;EACE,mDAAq1B;AACv1B;;AAEA;EACE,UAAU;AACZ;;AAEA;EACE,UAAU;AACZ;;AAEA;EACE,WAAW;AACb;;AAEA;EACE,WAAW;AACb","sourcesContent":["@charset \\"UTF-8\\";\\n\\n/* Comment */\\n\\n.class {\\n color: red;\\n background: url(\\"./url/img.png\\");\\n}\\n\\n.class-duplicate-url {\\n background: url(\\"./url/img.png\\");\\n}\\n\\n:root {\\n --foo: 1px;\\n --bar: 2px;\\n}\\n\\n.class { a: b c d; }\\n\\n.two {}\\n\\n.u-m\\\\+ { a: b c d; }\\n\\n.class { content: \\"\\\\F10C\\" }\\n\\n@media only screen and (max-width: 600px) {\\n body {\\n background-color: lightblue;\\n }\\n}\\n\\n.class {\\n content: \\"\\\\2193\\";\\n content: \\"\\\\2193\\\\2193\\";\\n content: \\"\\\\2193 \\\\2193\\";\\n content: \\"\\\\2193\\\\2193\\\\2193\\";\\n content: \\"\\\\2193 \\\\2193 \\\\2193\\";\\n}\\n\\n.-top {}\\n.\\\\-top {}\\n\\n#\\\\#test {}\\n\\n.grid {\\n display: flex;\\n flex-wrap: wrap;\\n}\\n.grid.\\\\-top {\\n align-items: flex-start;\\n}\\n.grid.-top {\\n align-items: flex-start;\\n}\\n.grid.\\\\-middle {\\n align-items: center;\\n}\\n.grid.\\\\-bottom {\\n align-items: flex-end;\\n}\\n\\n.u-m\\\\00002b {}\\n\\n.u-m00002b {}\\n\\n#u-m\\\\+ {}\\n\\nbody {\\n font-family: '微软雅黑'; /* some chinese font name */\\n}\\n\\n.myStyle {\\n content: '\\\\e901';\\n}\\n\\n.myStyle {\\n content: '\\\\E901';\\n}\\n\\n.♫ {}\\n\\n.\\\\3A \\\\\`\\\\( {} /* matches elements with class=\\":\`(\\" */\\n.\\\\31 a2b3c {} /* matches elements with class=\\"1a2b3c\\" */\\n#\\\\#fake-id {} /* matches the element with id=\\"#fake-id\\" */\\n#-a-b-c- {} /* matches the element with id=\\"-a-b-c-\\" */\\n#© {} /* matches the element with id=\\"©\\" */\\n\\n:root {\\n --title-align: center;\\n --sr-only: {\\n position: absolute;\\n width: 1px;\\n height: 1px;\\n padding: 0;\\n overflow: hidden;\\n clip: rect(0,0,0,0);\\n white-space: nowrap;\\n clip-path: inset(50%);\\n border: 0;\\n };\\n}\\n\\n.test {\\n content: \\"\\\\2014\\\\A0\\";\\n content: \\"\\\\2014 \\\\A0\\";\\n content: \\"\\\\A0 \\\\2014\\";\\n content: \\"\\\\A0\\\\2014\\";\\n margin-top: 1px\\\\9;\\n background-color: #000\\\\9;\\n}\\n\\n.light.on .bulb:before{\\n content: '💡';\\n}\\n\\n.base64 {\\n background: url(data:img/jpg;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAhxJREFUSA3tk71rU1EYxnMTEoJUkowWwdJ2akEHBfGjCiIF6ZylVUKSm2TqZLGI+A/oIu2UXm8C4lAyF4SWji0tdFLo1Eo7VN0SaBEhH7e/Nz0nPTfGOjiaCyfPc5734zlfCQT6X/8E/vUErL81KBaL9y3LSnued5PcITjUOwR3gsFg2bbtjYt6/NGgXC4P1et1l2aPLmpAbD0SidjpdPqgV15PA9d17zQajU8UxHQRK/4G35Q5pveAK8LlI1ZjPMnlcltnyvnvbwaO41xvtVqy7YHztMACq5xnlb9EY3dRdvcGo1kj5wR+t1AofDG0gM+A875E8DNjRCexsrV8Pj9ZqVQitVrtqejxePxjMpmss5hVTB4buXvMb2DyU2tBTRS+BjvNlVYUpPl7iuVO3Gq1uoQx1FtSOW1gPgp5ZWrdBtNmUDgv5asgxQ8F1af5vhY0YjyjuWC3wTszKJz7GBOkcFlQfW2ONq4FjWi+Hj6DRCKxQOK2TlY4x92EuYd5dvMAbYIzfikau3pu5tJ8KxaLLfo0cyKci7tK4TZjUMcoXAmHwzle0Q/RaC5P1GFMyVx9R9Fo9HYqlTrSgqDvFelAqVQa5hmuMR/WGtjAaBdjwBoDQ0ZsnwVMZjKZ9n0Zem8DSeDPdrnZbL6F2l3NOvUYNZk4oVDoRTabPe4EDNJzB0ZcjAYxeoZ2i3FNxQ7BHYw/cB/fldaH//UETgHHO8S44KbfXgAAAABJRU5ErkJggg==);\\n}\\n\\na[href=''] {\\n color: red;\\n}\\n\\na[href='' i] {\\n color: red;\\n}\\n\\na[href=\\"\\"] {\\n color: blue;\\n}\\n\\na[href=\\"\\" i] {\\n color: blue;\\n}\\n"],"sourceRoot":""}]); +// Exports +export default ___CSS_LOADER_EXPORT___.toString(); +" +`; + +exports[`'exportType' option should work with 'string' value and generate source maps: result 1`] = ` +"@charset "UTF-8"; + +/* Comment */ + +.class { + color: red; + background: url(replaced_file_protocol_/webpack/public/path/img.png); +} + +.class-duplicate-url { + background: url(replaced_file_protocol_/webpack/public/path/img.png); +} + +:root { + --foo: 1px; + --bar: 2px; +} + +.class { a: b c d; } + +.two {} + +.u-m\\+ { a: b c d; } + +.class { content: "\\F10C" } + +@media only screen and (max-width: 600px) { + body { + background-color: lightblue; + } +} + +.class { + content: "\\2193"; + content: "\\2193\\2193"; + content: "\\2193 \\2193"; + content: "\\2193\\2193\\2193"; + content: "\\2193 \\2193 \\2193"; +} + +.-top {} +.\\-top {} + +#\\#test {} + +.grid { + display: flex; + flex-wrap: wrap; +} +.grid.\\-top { + align-items: flex-start; +} +.grid.-top { + align-items: flex-start; +} +.grid.\\-middle { + align-items: center; +} +.grid.\\-bottom { + align-items: flex-end; +} + +.u-m\\00002b {} + +.u-m00002b {} + +#u-m\\+ {} + +body { + font-family: '微软雅黑'; /* some chinese font name */ +} + +.myStyle { + content: '\\e901'; +} + +.myStyle { + content: '\\E901'; +} + +.♫ {} + +.\\3A \\\`\\( {} /* matches elements with class=":\`(" */ +.\\31 a2b3c {} /* matches elements with class="1a2b3c" */ +#\\#fake-id {} /* matches the element with id="#fake-id" */ +#-a-b-c- {} /* matches the element with id="-a-b-c-" */ +#© {} /* matches the element with id="©" */ + +:root { + --title-align: center; + --sr-only: { + position: absolute; + width: 1px; + height: 1px; + padding: 0; + overflow: hidden; + clip: rect(0,0,0,0); + white-space: nowrap; + clip-path: inset(50%); + border: 0; + }; +} + +.test { + content: "\\2014\\A0"; + content: "\\2014 \\A0"; + content: "\\A0 \\2014"; + content: "\\A0\\2014"; + margin-top: 1px\\9; + background-color: #000\\9; +} + +.light.on .bulb:before{ + content: '💡'; +} + +.base64 { + background: url(data:img/jpg;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAhxJREFUSA3tk71rU1EYxnMTEoJUkowWwdJ2akEHBfGjCiIF6ZylVUKSm2TqZLGI+A/oIu2UXm8C4lAyF4SWji0tdFLo1Eo7VN0SaBEhH7e/Nz0nPTfGOjiaCyfPc5734zlfCQT6X/8E/vUErL81KBaL9y3LSnued5PcITjUOwR3gsFg2bbtjYt6/NGgXC4P1et1l2aPLmpAbD0SidjpdPqgV15PA9d17zQajU8UxHQRK/4G35Q5pveAK8LlI1ZjPMnlcltnyvnvbwaO41xvtVqy7YHztMACq5xnlb9EY3dRdvcGo1kj5wR+t1AofDG0gM+A875E8DNjRCexsrV8Pj9ZqVQitVrtqejxePxjMpmss5hVTB4buXvMb2DyU2tBTRS+BjvNlVYUpPl7iuVO3Gq1uoQx1FtSOW1gPgp5ZWrdBtNmUDgv5asgxQ8F1af5vhY0YjyjuWC3wTszKJz7GBOkcFlQfW2ONq4FjWi+Hj6DRCKxQOK2TlY4x92EuYd5dvMAbYIzfikau3pu5tJ8KxaLLfo0cyKci7tK4TZjUMcoXAmHwzle0Q/RaC5P1GFMyVx9R9Fo9HYqlTrSgqDvFelAqVQa5hmuMR/WGtjAaBdjwBoDQ0ZsnwVMZjKZ9n0Zem8DSeDPdrnZbL6F2l3NOvUYNZk4oVDoRTabPe4EDNJzB0ZcjAYxeoZ2i3FNxQ7BHYw/cB/fldaH//UETgHHO8S44KbfXgAAAABJRU5ErkJggg==); +} + +a[href=''] { + color: red; +} + +a[href='' i] { + color: red; +} + +a[href=""] { + color: blue; +} + +a[href="" i] { + color: blue; +} + +/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8uL2Jhc2ljLWNzcy1zdHlsZS1zaGVldC5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsZ0JBQWdCOztBQUVoQixZQUFZOztBQUVaO0VBQ0UsVUFBVTtFQUNWLG1EQUFnQztBQUNsQzs7QUFFQTtFQUNFLG1EQUFnQztBQUNsQzs7QUFFQTtFQUNFLFVBQVU7RUFDVixVQUFVO0FBQ1o7O0FBRUEsU0FBUyxRQUFRLEVBQUU7O0FBRW5CLE1BQU07O0FBRU4sU0FBUyxRQUFRLEVBQUU7O0FBRW5CLFNBQVMsaUJBQWlCOztBQUUxQjtFQUNFO0lBQ0UsMkJBQTJCO0VBQzdCO0FBQ0Y7O0FBRUE7RUFDRSxnQkFBZ0I7RUFDaEIscUJBQXFCO0VBQ3JCLHNCQUFzQjtFQUN0QiwwQkFBMEI7RUFDMUIsNEJBQTRCO0FBQzlCOztBQUVBLE9BQU87QUFDUCxRQUFROztBQUVSLFNBQVM7O0FBRVQ7RUFDRSxhQUFhO0VBQ2IsZUFBZTtBQUNqQjtBQUNBO0VBQ0UsdUJBQXVCO0FBQ3pCO0FBQ0E7RUFDRSx1QkFBdUI7QUFDekI7QUFDQTtFQUNFLG1CQUFtQjtBQUNyQjtBQUNBO0VBQ0UscUJBQXFCO0FBQ3ZCOztBQUVBLGFBQWE7O0FBRWIsWUFBWTs7QUFFWixRQUFROztBQUVSO0VBQ0UsbUJBQW1CLEVBQUUsMkJBQTJCO0FBQ2xEOztBQUVBO0VBQ0UsZ0JBQWdCO0FBQ2xCOztBQUVBO0VBQ0UsZ0JBQWdCO0FBQ2xCOztBQUVBLElBQUk7O0FBRUosV0FBVyxFQUFFLHNDQUFzQztBQUNuRCxZQUFZLEVBQUUseUNBQXlDO0FBQ3ZELFlBQVksRUFBRSwyQ0FBMkM7QUFDekQsVUFBVSxFQUFFLDBDQUEwQztBQUN0RCxJQUFJLEVBQUUsb0NBQW9DOztBQUUxQztFQUNFLHFCQUFxQjtFQUNyQjs7Ozs7Ozs7OztHQVVDO0FBQ0g7O0FBRUE7RUFDRSxtQkFBbUI7RUFDbkIsb0JBQW9CO0VBQ3BCLG9CQUFvQjtFQUNwQixtQkFBbUI7RUFDbkIsaUJBQWlCO0VBQ2pCLHdCQUF3QjtBQUMxQjs7QUFFQTtFQUNFLGFBQWE7QUFDZjs7QUFFQTtFQUNFLG1EQUFxMUI7QUFDdjFCOztBQUVBO0VBQ0UsVUFBVTtBQUNaOztBQUVBO0VBQ0UsVUFBVTtBQUNaOztBQUVBO0VBQ0UsV0FBVztBQUNiOztBQUVBO0VBQ0UsV0FBVztBQUNiIiwic291cmNlc0NvbnRlbnQiOlsiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vKiBDb21tZW50ICovXG5cbi5jbGFzcyB7XG4gIGNvbG9yOiByZWQ7XG4gIGJhY2tncm91bmQ6IHVybChcIi4vdXJsL2ltZy5wbmdcIik7XG59XG5cbi5jbGFzcy1kdXBsaWNhdGUtdXJsIHtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi91cmwvaW1nLnBuZ1wiKTtcbn1cblxuOnJvb3Qge1xuICAtLWZvbzogMXB4O1xuICAtLWJhcjogMnB4O1xufVxuXG4uY2xhc3MgeyBhOiBiIGMgZDsgfVxuXG4udHdvIHt9XG5cbi51LW1cXCsgeyBhOiBiIGMgZDsgfVxuXG4uY2xhc3MgeyBjb250ZW50OiBcIlxcRjEwQ1wiIH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MDBweCkge1xuICBib2R5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGJsdWU7XG4gIH1cbn1cblxuLmNsYXNzIHtcbiAgY29udGVudDogXCJcXDIxOTNcIjtcbiAgY29udGVudDogXCJcXDIxOTNcXDIxOTNcIjtcbiAgY29udGVudDogXCJcXDIxOTMgXFwyMTkzXCI7XG4gIGNvbnRlbnQ6IFwiXFwyMTkzXFwyMTkzXFwyMTkzXCI7XG4gIGNvbnRlbnQ6IFwiXFwyMTkzIFxcMjE5MyBcXDIxOTNcIjtcbn1cblxuLi10b3Age31cbi5cXC10b3Age31cblxuI1xcI3Rlc3Qge31cblxuLmdyaWQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG4uZ3JpZC5cXC10b3Age1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbn1cbi5ncmlkLi10b3Age1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbn1cbi5ncmlkLlxcLW1pZGRsZSB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4uZ3JpZC5cXC1ib3R0b20ge1xuICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG59XG5cbi51LW1cXDAwMDAyYiB7fVxuXG4udS1tMDAwMDJiIHt9XG5cbiN1LW1cXCsge31cblxuYm9keSB7XG4gIGZvbnQtZmFtaWx5OiAnw6XCvsKuw6jCvcKvw6nCm8KFw6nCu8KRJzsgLyogc29tZSBjaGluZXNlIGZvbnQgbmFtZSAqL1xufVxuXG4ubXlTdHlsZSB7XG4gIGNvbnRlbnQ6ICdcXGU5MDEnO1xufVxuXG4ubXlTdHlsZSB7XG4gIGNvbnRlbnQ6ICdcXEU5MDEnO1xufVxuXG4uw6LCmcKrIHt9XG5cbi5cXDNBIFxcYFxcKCB7fSAvKiBtYXRjaGVzIGVsZW1lbnRzIHdpdGggY2xhc3M9XCI6YChcIiAqL1xuLlxcMzEgYTJiM2Mge30gLyogbWF0Y2hlcyBlbGVtZW50cyB3aXRoIGNsYXNzPVwiMWEyYjNjXCIgKi9cbiNcXCNmYWtlLWlkIHt9IC8qIG1hdGNoZXMgdGhlIGVsZW1lbnQgd2l0aCBpZD1cIiNmYWtlLWlkXCIgKi9cbiMtYS1iLWMtIHt9IC8qIG1hdGNoZXMgdGhlIGVsZW1lbnQgd2l0aCBpZD1cIi1hLWItYy1cIiAqL1xuI8OCwqkge30gLyogbWF0Y2hlcyB0aGUgZWxlbWVudCB3aXRoIGlkPVwiw4LCqVwiICovXG5cbjpyb290IHtcbiAgLS10aXRsZS1hbGlnbjogY2VudGVyO1xuICAtLXNyLW9ubHk6IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDFweDtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgY2xpcDogcmVjdCgwLDAsMCwwKTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIGNsaXAtcGF0aDogaW5zZXQoNTAlKTtcbiAgICBib3JkZXI6IDA7XG4gIH07XG59XG5cbi50ZXN0IHtcbiAgY29udGVudDogXCJcXDIwMTRcXEEwXCI7XG4gIGNvbnRlbnQ6IFwiXFwyMDE0IFxcQTBcIjtcbiAgY29udGVudDogXCJcXEEwIFxcMjAxNFwiO1xuICBjb250ZW50OiBcIlxcQTBcXDIwMTRcIjtcbiAgbWFyZ2luLXRvcDogMXB4XFw5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwXFw5O1xufVxuXG4ubGlnaHQub24gLmJ1bGI6YmVmb3Jle1xuICBjb250ZW50OiAnw7DCn8KSwqEnO1xufVxuXG4uYmFzZTY0IHtcbiAgYmFja2dyb3VuZDogdXJsKGRhdGE6aW1nL2pwZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUJnQUFBQVlDQVlBQUFEZ2R6MzRBQUFBQVhOU1IwSUFyczRjNlFBQUFoeEpSRUZVU0EzdGs3MXJVMUVZeG5NVEVvSlVrb3dXd2RKMmFrRUhCZkdqQ2lJRjZaeWxWVUtTbTJUcVpMR0krQS9vSXUyVVhtOEM0bEF5RjRTV2ppMHRkRkxvMUVvN1ZOMFNhQkVoSDdlL056MG5QVGZHT2ppYUN5ZlBjNTczNHpsZkNRVDZYLzhFL3ZVRXJMODFLQmFMOXkzTFNudWVkNVBjSVRqVU93UjNnc0ZnMmJidGpZdDYvTkdnWEM0UDFldDFsMmFQTG1wQWJEMFNpZGpwZFBxZ1YxNVBBOWQxN3pRYWpVOFV4SFFSSy80RzM1UTVwdmVBSzhMbEkxWmpQTW5sY2x0bnl2bnZid2FPNDF4dnRWcXk3WUh6dE1BQ3E1eG5sYjlFWTNkUmR2Y0dvMWtqNXdSK3QxQW9mREcwZ00rQTg3NUU4RE5qUkNleHNyVjhQajlacVZRaXRWcnRxZWp4ZVB4ak1wbXNzNWhWVEI0YnVYdk1iMkR5VTJ0QlRSUytCanZObFZZVXBQbDdpdVZPM0dxMXVvUXgxRnRTT1cxZ1BncDVaV3JkQnRObVVEZ3Y1YXNneFE4RjFhZjV2aFkwWWp5anVXQzN3VHN6S0p6N0dCT2tjRmxRZlcyT05xNEZqV2krSGo2RFJDS3hRT0syVGxZNHg5MkV1WWQ1ZHZNQWJZSXpmaWthdTNwdTV0SjhLeGFMTGZvMGN5S2NpN3RLNFRaalVNY29YQW1Id3psZTBRL1JhQzVQMUdGTXlWeDlSOUZvOUhZcWxUclNncUR2RmVsQXFWUWE1aG11TVIvV0d0akFhQmRqd0JvRFEwWnNud1ZNWmpLWjluMFplbThEU2VEUGRyblpiTDZGMmwzTk92VVlOWms0b1ZEb1JUYWJQZTRFRE5KekIwWmNqQVl4ZW9aMmkzRk54UTdCSFl3L2NCL2ZsZGFILy9VRVRnSEhPOFM0NEtiZlhnQUFBQUJKUlU1RXJrSmdnZz09KTtcbn1cblxuYVtocmVmPScnXSB7XG4gIGNvbG9yOiByZWQ7XG59XG5cbmFbaHJlZj0nJyBpXSB7XG4gIGNvbG9yOiByZWQ7XG59XG5cbmFbaHJlZj1cIlwiXSB7XG4gIGNvbG9yOiBibHVlO1xufVxuXG5hW2hyZWY9XCJcIiBpXSB7XG4gIGNvbG9yOiBibHVlO1xufVxuIl0sInNvdXJjZVJvb3QiOiIifQ== */" +`; + +exports[`'exportType' option should work with 'string' value and generate source maps: warnings 1`] = `[]`; + +exports[`'exportType' option should work with 'string' value: errors 1`] = `[]`; + +exports[`'exportType' option should work with 'string' value: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../src/runtime/api.js"; +import ___CSS_LOADER_GET_URL_IMPORT___ from "../../src/runtime/getUrl.js"; +var ___CSS_LOADER_URL_IMPORT_0___ = new URL("./url/img.png", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_1___ = new URL("data:img/jpg;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAhxJREFUSA3tk71rU1EYxnMTEoJUkowWwdJ2akEHBfGjCiIF6ZylVUKSm2TqZLGI+A/oIu2UXm8C4lAyF4SWji0tdFLo1Eo7VN0SaBEhH7e/Nz0nPTfGOjiaCyfPc5734zlfCQT6X/8E/vUErL81KBaL9y3LSnued5PcITjUOwR3gsFg2bbtjYt6/NGgXC4P1et1l2aPLmpAbD0SidjpdPqgV15PA9d17zQajU8UxHQRK/4G35Q5pveAK8LlI1ZjPMnlcltnyvnvbwaO41xvtVqy7YHztMACq5xnlb9EY3dRdvcGo1kj5wR+t1AofDG0gM+A875E8DNjRCexsrV8Pj9ZqVQitVrtqejxePxjMpmss5hVTB4buXvMb2DyU2tBTRS+BjvNlVYUpPl7iuVO3Gq1uoQx1FtSOW1gPgp5ZWrdBtNmUDgv5asgxQ8F1af5vhY0YjyjuWC3wTszKJz7GBOkcFlQfW2ONq4FjWi+Hj6DRCKxQOK2TlY4x92EuYd5dvMAbYIzfikau3pu5tJ8KxaLLfo0cyKci7tK4TZjUMcoXAmHwzle0Q/RaC5P1GFMyVx9R9Fo9HYqlTrSgqDvFelAqVQa5hmuMR/WGtjAaBdjwBoDQ0ZsnwVMZjKZ9n0Zem8DSeDPdrnZbL6F2l3NOvUYNZk4oVDoRTabPe4EDNJzB0ZcjAYxeoZ2i3FNxQ7BHYw/cB/fldaH//UETgHHO8S44KbfXgAAAABJRU5ErkJggg==", import.meta.url); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); +var ___CSS_LOADER_URL_REPLACEMENT_1___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_1___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`@charset "UTF-8"; + +/* Comment */ + +.class { + color: red; + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} + +.class-duplicate-url { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} + +:root { + --foo: 1px; + --bar: 2px; +} + +.class { a: b c d; } + +.two {} + +.u-m\\\\+ { a: b c d; } + +.class { content: "\\\\F10C" } + +@media only screen and (max-width: 600px) { + body { + background-color: lightblue; + } +} + +.class { + content: "\\\\2193"; + content: "\\\\2193\\\\2193"; + content: "\\\\2193 \\\\2193"; + content: "\\\\2193\\\\2193\\\\2193"; + content: "\\\\2193 \\\\2193 \\\\2193"; +} + +.-top {} +.\\\\-top {} + +#\\\\#test {} + +.grid { + display: flex; + flex-wrap: wrap; +} +.grid.\\\\-top { + align-items: flex-start; +} +.grid.-top { + align-items: flex-start; +} +.grid.\\\\-middle { + align-items: center; +} +.grid.\\\\-bottom { + align-items: flex-end; +} + +.u-m\\\\00002b {} + +.u-m00002b {} + +#u-m\\\\+ {} + +body { + font-family: '微软雅黑'; /* some chinese font name */ +} + +.myStyle { + content: '\\\\e901'; +} + +.myStyle { + content: '\\\\E901'; +} + +.♫ {} + +.\\\\3A \\\\\\\`\\\\( {} /* matches elements with class=":\\\`(" */ +.\\\\31 a2b3c {} /* matches elements with class="1a2b3c" */ +#\\\\#fake-id {} /* matches the element with id="#fake-id" */ +#-a-b-c- {} /* matches the element with id="-a-b-c-" */ +#© {} /* matches the element with id="©" */ + +:root { + --title-align: center; + --sr-only: { + position: absolute; + width: 1px; + height: 1px; + padding: 0; + overflow: hidden; + clip: rect(0,0,0,0); + white-space: nowrap; + clip-path: inset(50%); + border: 0; + }; +} + +.test { + content: "\\\\2014\\\\A0"; + content: "\\\\2014 \\\\A0"; + content: "\\\\A0 \\\\2014"; + content: "\\\\A0\\\\2014"; + margin-top: 1px\\\\9; + background-color: #000\\\\9; +} + +.light.on .bulb:before{ + content: '💡'; +} + +.base64 { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_1___}); +} + +a[href=''] { + color: red; +} + +a[href='' i] { + color: red; +} + +a[href=""] { + color: blue; +} + +a[href="" i] { + color: blue; +} +\`, ""]); +// Exports +export default ___CSS_LOADER_EXPORT___.toString(); +" +`; + +exports[`'exportType' option should work with 'string' value: result 1`] = ` +"@charset "UTF-8"; + +/* Comment */ + +.class { + color: red; + background: url(replaced_file_protocol_/webpack/public/path/img.png); +} + +.class-duplicate-url { + background: url(replaced_file_protocol_/webpack/public/path/img.png); +} + +:root { + --foo: 1px; + --bar: 2px; +} + +.class { a: b c d; } + +.two {} + +.u-m\\+ { a: b c d; } + +.class { content: "\\F10C" } + +@media only screen and (max-width: 600px) { + body { + background-color: lightblue; + } +} + +.class { + content: "\\2193"; + content: "\\2193\\2193"; + content: "\\2193 \\2193"; + content: "\\2193\\2193\\2193"; + content: "\\2193 \\2193 \\2193"; +} + +.-top {} +.\\-top {} + +#\\#test {} + +.grid { + display: flex; + flex-wrap: wrap; +} +.grid.\\-top { + align-items: flex-start; +} +.grid.-top { + align-items: flex-start; +} +.grid.\\-middle { + align-items: center; +} +.grid.\\-bottom { + align-items: flex-end; +} + +.u-m\\00002b {} + +.u-m00002b {} + +#u-m\\+ {} + +body { + font-family: '微软雅黑'; /* some chinese font name */ +} + +.myStyle { + content: '\\e901'; +} + +.myStyle { + content: '\\E901'; +} + +.♫ {} + +.\\3A \\\`\\( {} /* matches elements with class=":\`(" */ +.\\31 a2b3c {} /* matches elements with class="1a2b3c" */ +#\\#fake-id {} /* matches the element with id="#fake-id" */ +#-a-b-c- {} /* matches the element with id="-a-b-c-" */ +#© {} /* matches the element with id="©" */ + +:root { + --title-align: center; + --sr-only: { + position: absolute; + width: 1px; + height: 1px; + padding: 0; + overflow: hidden; + clip: rect(0,0,0,0); + white-space: nowrap; + clip-path: inset(50%); + border: 0; + }; +} + +.test { + content: "\\2014\\A0"; + content: "\\2014 \\A0"; + content: "\\A0 \\2014"; + content: "\\A0\\2014"; + margin-top: 1px\\9; + background-color: #000\\9; +} + +.light.on .bulb:before{ + content: '💡'; +} + +.base64 { + background: url(data:img/jpg;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAhxJREFUSA3tk71rU1EYxnMTEoJUkowWwdJ2akEHBfGjCiIF6ZylVUKSm2TqZLGI+A/oIu2UXm8C4lAyF4SWji0tdFLo1Eo7VN0SaBEhH7e/Nz0nPTfGOjiaCyfPc5734zlfCQT6X/8E/vUErL81KBaL9y3LSnued5PcITjUOwR3gsFg2bbtjYt6/NGgXC4P1et1l2aPLmpAbD0SidjpdPqgV15PA9d17zQajU8UxHQRK/4G35Q5pveAK8LlI1ZjPMnlcltnyvnvbwaO41xvtVqy7YHztMACq5xnlb9EY3dRdvcGo1kj5wR+t1AofDG0gM+A875E8DNjRCexsrV8Pj9ZqVQitVrtqejxePxjMpmss5hVTB4buXvMb2DyU2tBTRS+BjvNlVYUpPl7iuVO3Gq1uoQx1FtSOW1gPgp5ZWrdBtNmUDgv5asgxQ8F1af5vhY0YjyjuWC3wTszKJz7GBOkcFlQfW2ONq4FjWi+Hj6DRCKxQOK2TlY4x92EuYd5dvMAbYIzfikau3pu5tJ8KxaLLfo0cyKci7tK4TZjUMcoXAmHwzle0Q/RaC5P1GFMyVx9R9Fo9HYqlTrSgqDvFelAqVQa5hmuMR/WGtjAaBdjwBoDQ0ZsnwVMZjKZ9n0Zem8DSeDPdrnZbL6F2l3NOvUYNZk4oVDoRTabPe4EDNJzB0ZcjAYxeoZ2i3FNxQ7BHYw/cB/fldaH//UETgHHO8S44KbfXgAAAABJRU5ErkJggg==); +} + +a[href=''] { + color: red; +} + +a[href='' i] { + color: red; +} + +a[href=""] { + color: blue; +} + +a[href="" i] { + color: blue; +} +" +`; + +exports[`'exportType' option should work with 'string' value: warnings 1`] = `[]`; + +exports[`'exportType' option should work with CSS modules and the 'exportOnlyLocals' option: errors 1`] = `[]`; + +exports[`'exportType' option should work with CSS modules and the 'exportOnlyLocals' option: module 1`] = ` +"// Imports +import * as ___CSS_LOADER_ICSS_IMPORT_0____NAMED___ from "-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./values.css"; +import * as ___CSS_LOADER_ICSS_IMPORT_1____NAMED___ from "-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./something.css"; +import * as ___CSS_LOADER_ICSS_IMPORT_2____NAMED___ from "-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./imported-simple.css"; +import * as ___CSS_LOADER_ICSS_IMPORT_3____NAMED___ from "-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./relative.css"; +import * as ___CSS_LOADER_ICSS_IMPORT_4____NAMED___ from "-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./top-relative.css"; +import * as ___CSS_LOADER_ICSS_IMPORT_5____NAMED___ from "-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!../issue-861/node_modules/package/style.css"; +import * as ___CSS_LOADER_ICSS_IMPORT_6____NAMED___ from "-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./alias.css"; +import * as ___CSS_LOADER_ICSS_IMPORT_7____NAMED___ from "-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!sass-loader!./scss-file.scss"; +// Exports +var _1 = \`\${___CSS_LOADER_ICSS_IMPORT_0____NAMED___["v-def"]}\`; +export { _1 as "v-def" }; +var _2 = \`\${___CSS_LOADER_ICSS_IMPORT_0____NAMED___["v-other"]}\`; +export { _2 as "v-other" }; +var _3 = \`\${___CSS_LOADER_ICSS_IMPORT_0____NAMED___["s-white"]}\`; +export { _3 as "s-white" }; +var _4 = \`\${___CSS_LOADER_ICSS_IMPORT_0____NAMED___["m-small"]}\`; +export { _4 as "m-small" }; +var _5 = \`\${___CSS_LOADER_ICSS_IMPORT_1____NAMED___["v-something"]}\`; +export { _5 as "v-something" }; +var _6 = \`blue\`; +export { _6 as "v-foo" }; +var _7 = \`block\`; +export { _7 as "v-bar" }; +var _8 = \`#BF4040\`; +export { _8 as "v-primary" }; +var _9 = \`black-selector\`; +export { _9 as "s-black" }; +var _a = \`(min-width: 960px)\`; +export { _a as "m-large" }; +var _b = \`validIdent\`; +export { _b as "v-ident" }; +var _c = \`left\`; +export { _c as "v-pre-defined-ident" }; +var _d = \`'content'\`; +export { _d as "v-string" }; +var _e = \`''\`; +export { _e as "v-string-1" }; +var _f = \`url(https://www.exammple.com/images/my-background.png)\`; +export { _f as "v-url" }; +var _10 = \`url('https://www.exammple.com/images/my-background.png')\`; +export { _10 as "v-url-1" }; +var _11 = \`url("https://www.exammple.com/images/my-background.png")\`; +export { _11 as "v-url-2" }; +var _12 = \`100\`; +export { _12 as "v-integer" }; +var _13 = \`-100\`; +export { _13 as "v-integer-1" }; +var _14 = \`+100\`; +export { _14 as "v-integer-2" }; +var _15 = \`.60\`; +export { _15 as "v-number" }; +var _16 = \`-456.8\`; +export { _16 as "v-number-1" }; +var _17 = \`-3.4e-2\`; +export { _17 as "v-number-2" }; +var _18 = \`12px\`; +export { _18 as "v-dimension" }; +var _19 = \`100%\`; +export { _19 as "v-percentage" }; +var _1a = \`#fff\`; +export { _1a as "v-hex" }; +var _1b = \` /* comment */\`; +export { _1b as "v-comment" }; +var _1c = \`rgb(0,0,0)\`; +export { _1c as "v-function" }; +var _1d = \`U+0025-00FF\`; +export { _1d as "v-unicode-range" }; +export var ghi = \`ozGmfTedr1GnFJDWqNUH\`; +var _1e = \`zchqshjqLbPAHaRvIBET\`; +export { _1e as "my-class" }; +export var other = \`WZBxXqS2GytaA3IBhhnd\`; +var _1f = \`W51zcAMuJMsNFi1CXgWr\`; +export { _1f as "other-other" }; +export var green = \`KEl5ZxzNkpjfWorrBglC\`; +export var foo = \`ecAEWh2vww9pNEdyj9Jn\`; +export var simple = \`CBlowYk8qiAgWWzFeXRA \${___CSS_LOADER_ICSS_IMPORT_2____NAMED___["imported-simple"]}\`; +export var relative = \`c_NHnDcX1bd_kuxgsuYi \${___CSS_LOADER_ICSS_IMPORT_3____NAMED___["imported-relative"]}\`; +var _20 = \`S0Kwou8pVmsENtBP3hYm \${___CSS_LOADER_ICSS_IMPORT_4____NAMED___["imported-relative"]}\`; +export { _20 as "top-relative" }; +var _21 = \`rq663Pq_zV0CjpwttvK4 \${___CSS_LOADER_ICSS_IMPORT_5____NAMED___["imported-module"]}\`; +export { _21 as "my-module" }; +export var alias = \`fadRMHArJofp7sWEbPVR \${___CSS_LOADER_ICSS_IMPORT_6____NAMED___["imported-alias"]}\`; +var _22 = \`sg1HlXqlWy6l6_Wm5iA7 \${___CSS_LOADER_ICSS_IMPORT_6____NAMED___["imported-alias"]}\`; +export { _22 as "alias-duplicate" }; +var _23 = \`bnRUswvicYag6u0SPnvI\`; +export { _23 as "primary-selector" }; +var _24 = \`kEJRwpukB2OtmkGTknbU\`; +export { _24 as "black-selector" }; +export var header = \`hY2PI5vC9ABuJY1nkWnf\`; +export var foobarbaz = \`q8mv0HutzqdsVWjl8mAz\`; +export var url = \`xajoqP1d3SwrjJ4WEM8g\`; +export var main = \`Ix5nEHiVOsWuWxdx0twz \${___CSS_LOADER_ICSS_IMPORT_7____NAMED___["scssClass"]}\`; +" +`; + +exports[`'exportType' option should work with CSS modules and the 'exportOnlyLocals' option: result 1`] = ` +{ + "named": { + "alias": "fadRMHArJofp7sWEbPVR dnhKs1AYKq4KodZdfzcx", + "alias-duplicate": "sg1HlXqlWy6l6_Wm5iA7 dnhKs1AYKq4KodZdfzcx", + "black-selector": "kEJRwpukB2OtmkGTknbU", + "foo": "ecAEWh2vww9pNEdyj9Jn", + "foobarbaz": "q8mv0HutzqdsVWjl8mAz", + "ghi": "ozGmfTedr1GnFJDWqNUH", + "green": "KEl5ZxzNkpjfWorrBglC", + "header": "hY2PI5vC9ABuJY1nkWnf", + "m-large": "(min-width: 960px)", + "m-small": "(min-width: 320px)", + "main": "Ix5nEHiVOsWuWxdx0twz oNU7JF6MtPAFrlrthaOD", + "my-class": "zchqshjqLbPAHaRvIBET", + "my-module": "rq663Pq_zV0CjpwttvK4 q49Ogfvno__tAgAiYJcD", + "other": "WZBxXqS2GytaA3IBhhnd", + "other-other": "W51zcAMuJMsNFi1CXgWr", + "primary-selector": "bnRUswvicYag6u0SPnvI", + "relative": "c_NHnDcX1bd_kuxgsuYi o0pMg4suYQOIzdBIQJv1", + "s-black": "black-selector", + "s-white": "white", + "simple": "CBlowYk8qiAgWWzFeXRA pCAAqHK9Lcplw9QM7Rj0", + "top-relative": "S0Kwou8pVmsENtBP3hYm l9CmW32NEl99tuNLdbzp", + "url": "xajoqP1d3SwrjJ4WEM8g", + "v-bar": "block", + "v-comment": " /* comment */", + "v-def": "red", + "v-dimension": "12px", + "v-foo": "blue", + "v-function": "rgb(0,0,0)", + "v-hex": "#fff", + "v-ident": "validIdent", + "v-integer": "100", + "v-integer-1": "-100", + "v-integer-2": "+100", + "v-number": ".60", + "v-number-1": "-456.8", + "v-number-2": "-3.4e-2", + "v-other": "green", + "v-percentage": "100%", + "v-pre-defined-ident": "left", + "v-primary": "#BF4040", + "v-something": "2112moon", + "v-string": "'content'", + "v-string-1": "''", + "v-unicode-range": "U+0025-00FF", + "v-url": "url(https://www.exammple.com/images/my-background.png)", + "v-url-1": "url('https://www.exammple.com/images/my-background.png')", + "v-url-2": "url("https://www.exammple.com/images/my-background.png")", + }, +} +`; + +exports[`'exportType' option should work with CSS modules and the 'exportOnlyLocals' option: warnings 1`] = ` +[ + "ModuleWarning: Module Warning (from \`replaced original path\`): +Deprecation The legacy JS API is deprecated and will be removed in Dart Sass 2.0.0. + +More info: https://sass-lang.com/d/legacy-js-api", +] +`; diff --git a/test/__snapshots__/icss.test.js.snap b/test/__snapshots__/icss.test.js.snap deleted file mode 100644 index 7dfd9713..00000000 --- a/test/__snapshots__/icss.test.js.snap +++ /dev/null @@ -1,313 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`ICSS show work with the case "duplicate-export": errors 1`] = `Array []`; - -exports[`ICSS show work with the case "duplicate-export": module 1`] = ` -"// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../../../src/runtime/api.js\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -// Module -exports.push([module.id, \\"\\\\n\\", \\"\\"]); -// Exports -exports.locals = { - \\"_test\\": \\"_right_value\\" -}; -module.exports = exports; -" -`; - -exports[`ICSS show work with the case "duplicate-export": result 1`] = ` -Array [ - Array [ - "./icss/tests-cases/duplicate-export/source.css", - " -", - "", - ], -] -`; - -exports[`ICSS show work with the case "duplicate-export": warnings 1`] = `Array []`; - -exports[`ICSS show work with the case "duplicate-export-in-multiple-export": errors 1`] = `Array []`; - -exports[`ICSS show work with the case "duplicate-export-in-multiple-export": module 1`] = ` -"// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../../../src/runtime/api.js\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -// Module -exports.push([module.id, \\"\\\\n\\", \\"\\"]); -// Exports -exports.locals = { - \\"_test\\": \\"_right_value\\" -}; -module.exports = exports; -" -`; - -exports[`ICSS show work with the case "duplicate-export-in-multiple-export": result 1`] = ` -Array [ - Array [ - "./icss/tests-cases/duplicate-export-in-multiple-export/source.css", - " -", - "", - ], -] -`; - -exports[`ICSS show work with the case "duplicate-export-in-multiple-export": warnings 1`] = `Array []`; - -exports[`ICSS show work with the case "empty-export": errors 1`] = `Array []`; - -exports[`ICSS show work with the case "empty-export": module 1`] = ` -"// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../../../src/runtime/api.js\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -// Module -exports.push([module.id, \\"\\\\n\\", \\"\\"]); -// Exports -module.exports = exports; -" -`; - -exports[`ICSS show work with the case "empty-export": result 1`] = ` -Array [ - Array [ - "./icss/tests-cases/empty-export/source.css", - " -", - "", - ], -] -`; - -exports[`ICSS show work with the case "empty-export": warnings 1`] = `Array []`; - -exports[`ICSS show work with the case "empty-import": errors 1`] = `Array []`; - -exports[`ICSS show work with the case "empty-import": module 1`] = ` -"// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../../../src/runtime/api.js\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -// Module -exports.push([module.id, \\"\\\\n\\", \\"\\"]); -// Exports -module.exports = exports; -" -`; - -exports[`ICSS show work with the case "empty-import": result 1`] = ` -Array [ - Array [ - "./icss/tests-cases/empty-import/source.css", - " -", - "", - ], -] -`; - -exports[`ICSS show work with the case "empty-import": warnings 1`] = `Array []`; - -exports[`ICSS show work with the case "export": errors 1`] = `Array []`; - -exports[`ICSS show work with the case "export": module 1`] = ` -"// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../../../src/runtime/api.js\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -// Module -exports.push([module.id, \\"\\\\n\\", \\"\\"]); -// Exports -exports.locals = { - \\"_test\\": \\"_test\\" -}; -module.exports = exports; -" -`; - -exports[`ICSS show work with the case "export": result 1`] = ` -Array [ - Array [ - "./icss/tests-cases/export/source.css", - " -", - "", - ], -] -`; - -exports[`ICSS show work with the case "export": warnings 1`] = `Array []`; - -exports[`ICSS show work with the case "export-reserved-keywords": errors 1`] = `Array []`; - -exports[`ICSS show work with the case "export-reserved-keywords": module 1`] = ` -"// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../../../src/runtime/api.js\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -// Module -exports.push([module.id, \\"\\\\n\\", \\"\\"]); -// Exports -exports.locals = { - \\"constructor\\": \\"constructor\\", - \\"toString\\": \\"toString\\" -}; -module.exports = exports; -" -`; - -exports[`ICSS show work with the case "export-reserved-keywords": result 1`] = ` -Array [ - Array [ - "./icss/tests-cases/export-reserved-keywords/source.css", - " -", - "", - ], -] -`; - -exports[`ICSS show work with the case "export-reserved-keywords": warnings 1`] = `Array []`; - -exports[`ICSS show work with the case "import": errors 1`] = `Array []`; - -exports[`ICSS show work with the case "import": module 1`] = ` -"// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../../../src/runtime/api.js\\"); -var ___CSS_LOADER_ICSS_IMPORT_0___ = require(\\"-!../../../../../src/index.js??[ident]!./vars.css\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -exports.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); -// Module -exports.push([module.id, \\".className {\\\\n color: \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"primary-color\\"] + \\";\\\\n}\\\\n\\", \\"\\"]); -// Exports -exports.locals = { - \\"primary-color\\": \\"\\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"primary-color\\"] + \\"\\" -}; -module.exports = exports; -" -`; - -exports[`ICSS show work with the case "import": result 1`] = ` -Array [ - Array [ - "../../src/index.js?[ident]!./icss/tests-cases/import/vars.css", - " -", - "", - ], - Array [ - "./icss/tests-cases/import/source.css", - ".className { - color: red; -} -", - "", - ], -] -`; - -exports[`ICSS show work with the case "import": warnings 1`] = `Array []`; - -exports[`ICSS show work with the case "import-reserved-keywords": errors 1`] = `Array []`; - -exports[`ICSS show work with the case "import-reserved-keywords": module 1`] = ` -"// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../../../src/runtime/api.js\\"); -var ___CSS_LOADER_ICSS_IMPORT_0___ = require(\\"-!../../../../../src/index.js??[ident]!./vars.css\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -exports.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); -// Module -exports.push([module.id, \\".className {\\\\n color: \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"primary-color\\"] + \\";\\\\n display: \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"secondary-color\\"] + \\";\\\\n}\\\\n\\", \\"\\"]); -// Exports -exports.locals = { - \\"primary-color\\": \\"\\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"primary-color\\"] + \\"\\", - \\"secondary-color\\": \\"\\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"secondary-color\\"] + \\"\\" -}; -module.exports = exports; -" -`; - -exports[`ICSS show work with the case "import-reserved-keywords": result 1`] = ` -Array [ - Array [ - "../../src/index.js?[ident]!./icss/tests-cases/import-reserved-keywords/vars.css", - " -", - "", - ], - Array [ - "./icss/tests-cases/import-reserved-keywords/source.css", - ".className { - color: red; - display: block; -} -", - "", - ], -] -`; - -exports[`ICSS show work with the case "import-reserved-keywords": warnings 1`] = `Array []`; - -exports[`ICSS show work with the case "multiple-export": errors 1`] = `Array []`; - -exports[`ICSS show work with the case "multiple-export": module 1`] = ` -"// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../../../src/runtime/api.js\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -// Module -exports.push([module.id, \\"\\\\n\\", \\"\\"]); -// Exports -exports.locals = { - \\"_test\\": \\"_test\\", - \\"_foo\\": \\"_bar\\" -}; -module.exports = exports; -" -`; - -exports[`ICSS show work with the case "multiple-export": result 1`] = ` -Array [ - Array [ - "./icss/tests-cases/multiple-export/source.css", - " -", - "", - ], -] -`; - -exports[`ICSS show work with the case "multiple-export": warnings 1`] = `Array []`; - -exports[`ICSS show work with the case "multiple-keys-values-in-export": errors 1`] = `Array []`; - -exports[`ICSS show work with the case "multiple-keys-values-in-export": module 1`] = ` -"// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../../../src/runtime/api.js\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -// Module -exports.push([module.id, \\"\\\\n\\", \\"\\"]); -// Exports -exports.locals = { - \\"_test\\": \\"_test\\", - \\"_test1\\": \\"1\\", - \\"_test2\\": \\"'string'\\", - \\"_test3\\": \\"1px 2px 3px\\", - \\"_test4\\": \\"1px 2px 3px, 1px 2px 3px\\" -}; -module.exports = exports; -" -`; - -exports[`ICSS show work with the case "multiple-keys-values-in-export": result 1`] = ` -Array [ - Array [ - "./icss/tests-cases/multiple-keys-values-in-export/source.css", - " -", - "", - ], -] -`; - -exports[`ICSS show work with the case "multiple-keys-values-in-export": warnings 1`] = `Array []`; diff --git a/test/__snapshots__/import-option.test.js.snap b/test/__snapshots__/import-option.test.js.snap index 746eca20..f0aa2ca8 100644 --- a/test/__snapshots__/import-option.test.js.snap +++ b/test/__snapshots__/import-option.test.js.snap @@ -1,144 +1,185 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP -exports[`"import" option should keep original order: errors 1`] = `Array []`; +exports[`"import" option should jeep order of imports with 'webpackIgnore': errors 1`] = `[]`; + +exports[`"import" option should jeep order of imports with 'webpackIgnore': module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../src/runtime/api.js"; +import ___CSS_LOADER_AT_RULE_IMPORT_0___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./test.css"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(/assets/themes.css);"]); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`/*! /* webpackIgnore: true */ + +body { + background: red; +} +\`, ""]); +// Exports +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"import" option should jeep order of imports with 'webpackIgnore': result 1`] = ` +"@import url(/assets/themes.css);.test { + a: a; +} +/*! /* webpackIgnore: true */ + +body { + background: red; +} +" +`; + +exports[`"import" option should jeep order of imports with 'webpackIgnore': warnings 1`] = `[]`; + +exports[`"import" option should keep original order: errors 1`] = `[]`; exports[`"import" option should keep original order: module 1`] = ` "// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../src/runtime/api.js\\"); -var ___CSS_LOADER_AT_RULE_IMPORT_0___ = require(\\"-!../../../src/index.js??[ident]!./order-1.css\\"); -var ___CSS_LOADER_AT_RULE_IMPORT_1___ = require(\\"-!../../../src/index.js??[ident]!./order-2.css\\"); -var ___CSS_LOADER_AT_RULE_IMPORT_2___ = require(\\"-!../../../src/index.js??[ident]!./order-3.css\\"); -var ___CSS_LOADER_AT_RULE_IMPORT_3___ = require(\\"-!../../../src/index.js??[ident]!./order-4.css\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___); -exports.push([module.id, \\"@import url(http://example.com/style.css);\\"]); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_1___); -exports.push([module.id, \\"@import url(http://example.com/style.css);\\"]); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___); -exports.push([module.id, \\"@import url(http://example.com/style.css);\\"]); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_1___, \\"screen and (min-width: 2000px)\\"); -exports.push([module.id, \\"@import url(http://example.com/style.css);\\"]); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_2___); -exports.push([module.id, \\"@import url(http://example.com/style.css);\\"]); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_3___, \\"screen\\"); +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../src/runtime/api.js"; +import ___CSS_LOADER_AT_RULE_IMPORT_0___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./order-1.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_1___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./order-2.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_2___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./order-3.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_3___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./order-4.css"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(http://example.com/style.css);"]); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_1___); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(http://example.com/style.css);"]); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(http://example.com/style.css);"]); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_1___, "screen and (min-width: 2000px)"); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(http://example.com/style.css);"]); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_2___); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(http://example.com/style.css);"]); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_3___, "screen"); // Module -exports.push([module.id, \\"div {\\\\n width: 100%;\\\\n height: 200px;\\\\n}\\\\n\\", \\"\\"]); +___CSS_LOADER_EXPORT___.push([module.id, \`div { + width: 100%; + height: 200px; +} +\`, ""]); // Exports -module.exports = exports; +export default ___CSS_LOADER_EXPORT___; " `; exports[`"import" option should keep original order: result 1`] = ` -Array [ - Array [ - "../../src/index.js?[ident]!./import/order-1.css", +[ + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./import/order-1.css", ".order-1 { color: red; } ", "", ], - Array [ + [ "./import/order.css", "@import url(http://example.com/style.css);", ], - Array [ - "../../src/index.js?[ident]!./import/order-2.css", + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./import/order-2.css", ".order-2 { color: red; } ", "", ], - Array [ + [ "./import/order.css", "@import url(http://example.com/style.css);", ], - Array [ - "../../src/index.js?[ident]!./import/order-1.css", + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./import/order-1.css", ".order-1 { color: red; } ", "", ], - Array [ + [ "./import/order.css", "@import url(http://example.com/style.css);", ], - Array [ - "../../src/index.js?[ident]!./import/order-2.css", + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./import/order-2.css", ".order-2 { color: red; } ", "screen and (min-width: 2000px)", ], - Array [ + [ "./import/order.css", "@import url(http://example.com/style.css);", ], - Array [ - "../../src/index.js?[ident]!./import/order-3-1.css", + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./import/order-3-1.css", ".order-3-1 { color: white; } ", "screen and (orientation:landscape)", ], - Array [ - "../../src/index.js?[ident]!./import/order-3.css", + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./import/order-3.css", ".order-3 { color: red; } ", "", ], - Array [ + [ "./import/order.css", "@import url(http://example.com/style.css);", ], - Array [ - "../../src/index.js?[ident]!./import/order-4-1.css", - ".order-4-1 { + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./import/order-4-1.css", + "@media (min-width: 1000px) {.order-4-1 { color: red; } -", - "screen and (min-width: 1000px)", +}", + "screen", ], - Array [ - "../../src/index.js?[ident]!./import/order-4-2-1.css", - ".order-4-2-1 { + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./import/order-4-2-1.css", + "@media (min-width: 2000px) {.order-4-2-1 { color: red; } -", - "screen and (min-width: 2000px)", +}", + "screen", ], - Array [ - "../../src/index.js?[ident]!./import/order-4-2-2.css", - ".order-4-2-2 { + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./import/order-4-2-2.css", + "@media (min-width: 2000px) {@media (orientation:landscape) {.order-4-2-2 { color: red; } -", - "screen and (min-width: 2000px) and (orientation:landscape)", +}}", + "screen", ], - Array [ - "../../src/index.js?[ident]!./import/order-4-2.css", - ".order-4-2 { + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./import/order-4-2.css", + "@media (min-width: 2000px) {.order-4-2 { color: red; } -", - "screen and (min-width: 2000px)", +}", + "screen", ], - Array [ - "../../src/index.js?[ident]!./import/order-4.css", + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./import/order-4.css", ".order-4 { color: red; } ", "screen", ], - Array [ + [ "./import/order.css", "div { width: 100%; @@ -150,258 +191,562 @@ Array [ ] `; -exports[`"import" option should keep original order: warnings 1`] = `Array []`; +exports[`"import" option should keep original order: warnings 1`] = `[]`; -exports[`"import" option should work when "Function": errors 1`] = `Array []`; +exports[`"import" option should resolve "file" protocol: errors 1`] = `[]`; -exports[`"import" option should work when "Function": module 1`] = ` +exports[`"import" option should resolve "file" protocol: module 1`] = ` "// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../src/runtime/api.js\\"); -var ___CSS_LOADER_AT_RULE_IMPORT_0___ = require(\\"-!../../../src/index.js??[ident]!./test-media.css\\"); -var ___CSS_LOADER_AT_RULE_IMPORT_1___ = require(\\"-!../../../src/index.js??[ident]!./test-other.css\\"); -var ___CSS_LOADER_AT_RULE_IMPORT_2___ = require(\\"-!../../../src/index.js??[ident]!./query.css?foo=1&bar=1\\"); -var ___CSS_LOADER_AT_RULE_IMPORT_3___ = require(\\"-!../../../src/index.js??[ident]!./other-query.css?foo=1&bar=1#hash\\"); -var ___CSS_LOADER_AT_RULE_IMPORT_4___ = require(\\"-!../../../src/index.js??[ident]!./relative.css\\"); -var ___CSS_LOADER_AT_RULE_IMPORT_5___ = require(\\"-!../../../src/index.js??[ident]!../import/top-relative.css\\"); -var ___CSS_LOADER_AT_RULE_IMPORT_6___ = require(\\"-!../../../src/index.js??[ident]!package/tilde.css\\"); -var ___CSS_LOADER_AT_RULE_IMPORT_7___ = require(\\"-!../../../src/index.js??[ident]!aliasesImport/alias.css\\"); -var ___CSS_LOADER_AT_RULE_IMPORT_8___ = require(\\"-!../../../src/index.js??[ident]!./url.css\\"); -var ___CSS_LOADER_AT_RULE_IMPORT_9___ = require(\\"-!../../../src/index.js??[ident]!./te'st.css\\"); -var ___CSS_LOADER_GET_URL_IMPORT___ = require(\\"../../../src/runtime/getUrl.js\\"); -var ___CSS_LOADER_URL_IMPORT_0___ = require(\\"./img.png\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___, \\"screen and (orientation:landscape)\\"); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_1___, \\"(min-width: 100px)\\"); -exports.push([module.id, \\"@import url(http://example.com/style.css);\\"]); -exports.push([module.id, \\"@import url(http://example.com/style.css);\\"]); -exports.push([module.id, \\"@import url(http://example.com/style.css#hash);\\"]); -exports.push([module.id, \\"@import url(http://example.com/style.css?#hash);\\"]); -exports.push([module.id, \\"@import url(http://example.com/style.css?foo=bar#hash);\\"]); -exports.push([module.id, \\"@import url(http://example.com/other-style.css);\\", \\"screen and (orientation:landscape)\\"]); -exports.push([module.id, \\"@import url(http://example.com/other-style.css);\\", \\"screen and (orientation:landscape)\\"]); -exports.push([module.id, \\"@import url(//example.com/style.css);\\"]); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_2___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_3___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_3___, \\"screen and (orientation:landscape)\\"); -exports.push([module.id, \\"@import url(https://fonts.googleapis.com/css?family=Roboto);\\"]); -exports.push([module.id, \\"@import url(https://fonts.googleapis.com/css?family=Noto+Sans+TC);\\"]); -exports.push([module.id, \\"@import url(https://fonts.googleapis.com/css?family=Noto+Sans+TC|Roboto);\\"]); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_4___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_5___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_6___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_7___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_8___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_9___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_9___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_9___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_9___); -var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../src/runtime/api.js"; +import ___CSS_LOADER_AT_RULE_IMPORT_0___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./test.css"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); // Module -exports.push([module.id, \\"@import url(test.css);\\\\n@import url('test.css');\\\\n@import url(\\\\\\"test.css\\\\\\");\\\\n@IMPORT url(test.css);\\\\n@import URL(test.css);\\\\n@import url(test.css );\\\\n@import url( test.css);\\\\n@import url( test.css );\\\\n@import url(\\\\n test.css\\\\n);\\\\n@import url();\\\\n@import url('');\\\\n@import url(\\\\\\"\\\\\\");\\\\n@import \\\\\\"test.css\\\\\\";\\\\n@import 'test.css';\\\\n@import '';\\\\n@import \\\\\\"\\\\\\";\\\\n@import \\\\\\" \\\\\\";\\\\n@import \\\\\\"\\\\n\\\\\\";\\\\n@import url();\\\\n@import url('');\\\\n@import url(\\\\\\"\\\\\\");\\\\n@import url(test.css) screen and (orientation:landscape);\\\\n@import url(test.css) SCREEN AND (ORIENTATION: LANDSCAPE);\\\\n@import url(test.css)screen and (orientation:landscape);\\\\n@import url(test.css) screen and (orientation:landscape);\\\\n@import url(~package/test.css);\\\\n@import ;\\\\n@import foo-bar;\\\\n@import-normalize;\\\\n@import url('http://') :root {}\\\\n\\\\n.class {\\\\n a: b c d;\\\\n}\\\\n\\\\n.foo {\\\\n @import 'path.css';\\\\n}\\\\n\\\\n.background {\\\\n background: url(\\" + ___CSS_LOADER_URL_REPLACEMENT_0___ + \\");\\\\n}\\\\n\\\\n@import url(./test.css);\\\\n\\\\n@import './te\\\\\\\\\\\\nst.css';\\\\n@import './te\\\\\\\\\\\\n\\\\\\\\\\\\n\\\\\\\\\\\\nst.css';\\\\n@import url('./te\\\\\\\\\\\\nst.css');\\\\n@import url('./te\\\\\\\\\\\\n\\\\\\\\\\\\n\\\\\\\\\\\\nst.css');\\\\n@import './test test.css';\\\\n@import url('./test test.css');\\\\n@import './test\\\\\\\\ test.css';\\\\n@import url('./test\\\\\\\\ test.css');\\\\n@import './test%20test.css';\\\\n@import url('./test%20test.css');\\\\n@import './\\\\\\\\74\\\\\\\\65\\\\\\\\73\\\\\\\\74.css';\\\\n@import url('./\\\\\\\\74\\\\\\\\65\\\\\\\\73\\\\\\\\74.css');\\\\n@import './t\\\\\\\\65\\\\\\\\73\\\\\\\\74.css';\\\\n@import url('./t\\\\\\\\65\\\\\\\\73\\\\\\\\74.css');\\\\n@import url(./test\\\\\\\\ test.css);\\\\n@import url(./t\\\\\\\\65st%20test.css);\\\\n@import url('./t\\\\\\\\65st%20test.css');\\\\n@import url(\\\\\\"./t\\\\\\\\65st%20test.css\\\\\\");\\\\n@import \\\\\\"./t\\\\\\\\65st%20test.css\\\\\\";\\\\n@import './t\\\\\\\\65st%20test.css';\\\\n@import url( test.css );\\\\n@import nourl(test.css);\\\\n/* TODO need fix */\\\\n/*@import '\\\\\\\\*/\\\\n/*\\\\\\\\*/\\\\n/*\\\\\\\\*/\\\\n/*';*/\\\\n\\", \\"\\"]); +___CSS_LOADER_EXPORT___.push([module.id, \`\`, ""]); // Exports -module.exports = exports; +export default ___CSS_LOADER_EXPORT___; " `; -exports[`"import" option should work when "Function": result 1`] = ` -Array [ - Array [ - "../../src/index.js?[ident]!./import/test-nested-media.css", - "a { - b: b; +exports[`"import" option should resolve "file" protocol: result 1`] = ` +[ + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./import/test.css", + ".test { + a: a; } ", - "screen and (orientation:landscape) and (min-width: 100px)", + "", ], - Array [ - "../../src/index.js?[ident]!./import/test-media.css", + [ + "./import/import-file-protocol.css", + "", + "", + ], +] +`; + +exports[`"import" option should resolve "file" protocol: warnings 1`] = `[]`; + +exports[`"import" option should resolve absolute path: errors 1`] = `[]`; + +exports[`"import" option should resolve absolute path: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../src/runtime/api.js"; +import ___CSS_LOADER_AT_RULE_IMPORT_0___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./test.css"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`\`, ""]); +// Exports +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"import" option should resolve absolute path: result 1`] = ` +[ + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./import/test.css", ".test { - c: c; + a: a; } ", - "screen and (orientation:landscape)", + "", + ], + [ + "./import/import-absolute.css", + "", + "", ], - Array [ - "../../src/index.js?[ident]!./import/test-other.css", +] +`; + +exports[`"import" option should resolve absolute path: warnings 1`] = `[]`; + +exports[`"import" option should resolve server-relative url relative rootContext: errors 1`] = `[]`; + +exports[`"import" option should resolve server-relative url relative rootContext: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../src/runtime/api.js"; +import ___CSS_LOADER_AT_RULE_IMPORT_0___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./test.css"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`.class { + a: b c d; +} +\`, ""]); +// Exports +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"import" option should resolve server-relative url relative rootContext: result 1`] = ` +[ + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./import/test.css", ".test { - d: d; + a: a; } ", - "(min-width: 100px)", - ], - Array [ - "./import/import.css", - "@import url(http://example.com/style.css);", - ], - Array [ - "./import/import.css", - "@import url(http://example.com/style.css);", - ], - Array [ - "./import/import.css", - "@import url(http://example.com/style.css#hash);", - ], - Array [ - "./import/import.css", - "@import url(http://example.com/style.css?#hash);", - ], - Array [ - "./import/import.css", - "@import url(http://example.com/style.css?foo=bar#hash);", - ], - Array [ - "./import/import.css", - "@import url(http://example.com/other-style.css);", - "screen and (orientation:landscape)", - ], - Array [ - "./import/import.css", - "@import url(http://example.com/other-style.css);", - "screen and (orientation:landscape)", - ], - Array [ - "./import/import.css", - "@import url(//example.com/style.css);", + "", ], - Array [ - "../../src/index.js?[ident]!./import/query.css?foo=1&bar=1", - ".query { - e: e; + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./import/test.css", + ".test { + a: a; } ", "", ], - Array [ - "../../src/index.js?[ident]!./import/other-query.css?foo=1&bar=1#hash", - ".other-query { - f: f; + [ + "./import/import-server-relative-url.css", + ".class { + a: b c d; } ", "", ], - Array [ - "../../src/index.js?[ident]!./import/other-query.css?foo=1&bar=1#hash", - ".other-query { - f: f; +] +`; + +exports[`"import" option should resolve server-relative url relative rootContext: warnings 1`] = `[]`; + +exports[`"import" option should respect conditionNames: errors 1`] = `[]`; + +exports[`"import" option should respect conditionNames: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../src/runtime/api.js"; +import ___CSS_LOADER_AT_RULE_IMPORT_0___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./node_modules/package-with-exports/style.css"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \` +\`, ""]); +// Exports +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"import" option should respect conditionNames: result 1`] = ` +[ + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./import/node_modules/package-with-exports/style.css", + ".load-me { + color: red; } ", - "screen and (orientation:landscape)", - ], - Array [ - "./import/import.css", - "@import url(https://fonts.googleapis.com/css?family=Roboto);", - ], - Array [ - "./import/import.css", - "@import url(https://fonts.googleapis.com/css?family=Noto+Sans+TC);", + "", ], - Array [ - "./import/import.css", - "@import url(https://fonts.googleapis.com/css?family=Noto+Sans+TC|Roboto);", + [ + "./import/import-conditionNames.css", + " +", + "", ], - Array [ - "../../src/index.js?[ident]!./import/relative.css", - ".relative { - color: red; +] +`; + +exports[`"import" option should respect conditionNames: warnings 1`] = `[]`; + +exports[`"import" option should respect style field in package.json: errors 1`] = `[]`; + +exports[`"import" option should respect style field in package.json: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../../../src/runtime/api.js"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`.test { + color: coral; +} +\`, ""]); +// Exports +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"import" option should respect style field in package.json: result 1`] = ` +[ + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./import/node_modules/issue-683-package/test.css", + ".test { + color: coral; } ", "", ], - Array [ - "../../src/index.js?[ident]!./import/top-relative.css", - ".top-relative { + [ + "./import/issue-683.css", + " +", + "", + ], +] +`; + +exports[`"import" option should respect style field in package.json: warnings 1`] = `[]`; + +exports[`"import" option should throw an error on unresolved import: errors 1`] = ` +[ + "ModuleBuildError: Module build failed (from \`replaced original path\`): +Error: Can't resolve 'unresolved-file.css' in '/test/fixtures/import'", +] +`; + +exports[`"import" option should throw an error on unresolved import: warnings 1`] = `[]`; + +exports[`"import" option should work and output media: errors 1`] = `[]`; + +exports[`"import" option should work and output media: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../src/runtime/api.js"; +import ___CSS_LOADER_AT_RULE_IMPORT_0___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./dark.css"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "(prefers-color-scheme: dark)"); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`a { + color: black; +} +\`, ""]); +// Exports +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"import" option should work and output media: result 1`] = ` +"@media (prefers-color-scheme: dark) {a { + color: white; +} +}a { color: black; } +" +`; + +exports[`"import" option should work and output media: warnings 1`] = `[]`; + +exports[`"import" option should work resolve order: local -> node_modules -> alias: errors 1`] = `[]`; + +exports[`"import" option should work resolve order: local -> node_modules -> alias: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../src/runtime/api.js"; +import ___CSS_LOADER_AT_RULE_IMPORT_0___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./test.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_1___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./issue-683.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_2___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./node_modules/package/tilde.css"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_1___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_2___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \` +\`, ""]); +// Exports +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"import" option should work resolve order: local -> node_modules -> alias: result 1`] = ` +[ + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./import/test.css", + ".test { + a: a; +} ", "", ], - Array [ - "../../src/index.js?[ident]!./import/node_modules/package/tilde.css", - ".tilde { - color: yellow; + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./import/node_modules/issue-683-package/test.css", + ".test { + color: coral; } ", "", ], - Array [ - "../../src/index.js?[ident]!./import/alias.css", - ".alias { - color: red; -} + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./import/issue-683.css", + " ", "", ], - Array [ - "../../src/index.js?[ident]!./import/url.css", - ".background-imported { - background: url(/webpack/public/path/img.png); + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./import/node_modules/package/tilde.css", + ".tilde { + color: yellow; } ", "", ], - Array [ - "../../src/index.js?[ident]!./import/te'st.css", - ".strange { - color: red; -} + [ + "./import/import-order.css", + " ", "", ], - Array [ - "../../src/index.js?[ident]!./import/te'st.css", - ".strange { +] +`; + +exports[`"import" option should work resolve order: local -> node_modules -> alias: warnings 1`] = `[]`; + +exports[`"import" option should work when 'import.loaders' not specified: errors 1`] = `[]`; + +exports[`"import" option should work when 'import.loaders' not specified: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../src/runtime/api.js"; +import ___CSS_LOADER_AT_RULE_IMPORT_0___ from "-!../../../src/index.js!./imported.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_1___ from "-!../../../src/index.js!./other-imported.css"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_1___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`.foo { color: red; + color: rgb(0 0 100% / 90%); +} +\`, ""]); +// Exports +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"import" option should work when 'import.loaders' not specified: result 1`] = ` +[ + [ + "../../src/index.js!./nested-import/imported.css", + ".bar { + color: blue; + color: rgb(0 0 100% / 90%); } ", "", ], - Array [ - "../../src/index.js?[ident]!./import/te'st.css", - ".strange { - color: red; + [ + "../../src/index.js!./nested-import/other-imported.css", + ".baz { + color: green; + color: rgb(0 0 100% / 90%); } ", "", ], - Array [ - "../../src/index.js?[ident]!./import/te'st.css", - ".strange { + [ + "./nested-import/source.css", + ".foo { color: red; + color: rgb(0 0 100% / 90%); } ", "", ], - Array [ - "./import/import.css", - "@import url(test.css); -@import url('test.css'); -@import url(\\"test.css\\"); -@IMPORT url(test.css); -@import URL(test.css); -@import url(test.css ); -@import url( test.css); -@import url( test.css ); -@import url( - test.css -); -@import url(); +] +`; + +exports[`"import" option should work when 'import.loaders' not specified: warnings 1`] = `[]`; + +exports[`"import" option should work when not specified and print correct output: errors 1`] = `[]`; + +exports[`"import" option should work when not specified and print correct output: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../src/runtime/api.js"; +import ___CSS_LOADER_AT_RULE_IMPORT_0___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./test.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_1___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./test-media.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_2___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./test-other.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_3___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./node_modules/package/test.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_4___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./query.css?foo=1&bar=1"; +import ___CSS_LOADER_AT_RULE_IMPORT_5___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./other-query.css?foo=1&bar=1#hash"; +import ___CSS_LOADER_AT_RULE_IMPORT_6___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./relative.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_7___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./top-relative.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_8___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./node_modules/package/tilde.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_9___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./alias.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_10___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./url.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_11___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./te'st.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_12___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./test test.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_13___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!!!../../helpers/string-loader.js?esModule=false!./node_modules/package/tilde.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_14___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./test.css?foo=bar"; +import ___CSS_LOADER_AT_RULE_IMPORT_15___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./test.css?foo=bar#hash"; +import ___CSS_LOADER_AT_RULE_IMPORT_16___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./test.css?#hash"; +import ___CSS_LOADER_AT_RULE_IMPORT_17___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./something.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_18___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./something.css?foo=bar"; +import ___CSS_LOADER_AT_RULE_IMPORT_19___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./something.css?foo=bar#hash"; +import ___CSS_LOADER_AT_RULE_IMPORT_20___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./something.css?bar=foo"; +import ___CSS_LOADER_AT_RULE_IMPORT_21___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./something.css?foo=bar#one"; +import ___CSS_LOADER_AT_RULE_IMPORT_22___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./something.css?foo=bar#two"; +import ___CSS_LOADER_AT_RULE_IMPORT_23___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./something.css?foo=1&bar=2"; +import ___CSS_LOADER_AT_RULE_IMPORT_24___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./something.css?foo=2&bar=1"; +import ___CSS_LOADER_AT_RULE_IMPORT_25___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./my.scss"; +import ___CSS_LOADER_AT_RULE_IMPORT_26___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./package/first.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_27___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./node_modules/package/second.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_28___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./import-with-media.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_29___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./deep-import-with-media.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_30___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./import-with-supports.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_31___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./deep-import-with-supports.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_32___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./import-with-supports-and-media.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_33___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./import-deep-with-supports-and-media.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_34___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./import-with-layer.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_35___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./deep-import-with-layer.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_36___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./import-multiple-with-layer.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_37___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./import-with-layer-unnamed.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_38___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./import-unnamed-layer.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_39___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./import-multiple-unnamed-layer.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_40___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./import-with-layer-and-supports.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_41___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./import-with-layer-and-supports-and-media.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_42___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./deep-layer.css"; +import ___CSS_LOADER_GET_URL_IMPORT___ from "../../../src/runtime/getUrl.js"; +var ___CSS_LOADER_URL_IMPORT_0___ = new URL("./img.png", import.meta.url); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "screen and (orientation:landscape)"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "screen and (orientation: landscape)"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "screen and (orientation:landscape)"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "screen and (orientation:landscape)"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_1___, "screen and (orientation:landscape)"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_2___, "(min-width: 100px)"); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(http://example.com/style.css);"]); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(http://example.com/style.css);"]); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(http://example.com/style.css#hash);"]); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(http://example.com/style.css?#hash);"]); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(http://example.com/style.css?foo=bar#hash);"]); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(http://example.com/other-style.css);", "screen and (orientation:landscape)"]); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(http://example.com/other-style.css);", "screen and (orientation:landscape)"]); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(//example.com/style.css);"]); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_3___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_4___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_5___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_5___, "screen and (orientation:landscape)"); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(https://fonts.googleapis.com/css?family=Roboto);"]); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(https://fonts.googleapis.com/css?family=Noto+Sans+TC);"]); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(https://fonts.googleapis.com/css?family=Noto+Sans+TC|Roboto);"]); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_6___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_7___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_8___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_9___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_10___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_11___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_11___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_11___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_11___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_12___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_12___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_12___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_12___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_12___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_12___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_12___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_12___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_12___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_12___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_12___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_12___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_13___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_14___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_15___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_16___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "", false, "display: flex"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "screen and (orientation:landscape)", false, "display: flex"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_17___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_17___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_18___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_18___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_19___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_19___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_18___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_20___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_21___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_22___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_23___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_24___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_25___); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(https://fonts.googleapis.com/css?family=Roboto);"]); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_13___); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(data:text/css;charset=utf-8,a%20%7B%0D%0A%20%20color%3A%20red%3B%0D%0A%7D);"]); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_26___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_27___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "", false, ""); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "", false, "unknown"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "", false, "display: flex"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "", false, "display: flex !important"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "screen and (min-width: 400px)", false, "display: flex"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "", false, undefined, ""); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "", false, undefined, "default"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "screen and (min-width: 400px)", false, "display: flex", "default"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "screen and (min-width: 400px)", false, "display: flex", ""); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "screen and (min-width: 400px)", false, "display: flex", ""); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "", false, undefined, ""); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(http://example.com/style.css);", "screen and (min-width: 400px)", false, "display: flex"]); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "screen and (min-width:400px)", false, "display: flex", "default"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "screen and (min-width: 400px)"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "screen and ( min-width : 400px )", false, "display : flex", "default"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "screen and (min-width: 400px)", false, "display: flex", "default"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "/* comment */ screen/* comment */ and/* comment */ (/* comment */min-width/* comment */: /* comment */400px/* comment */)", false, "/* comment */ /* comment */display/* comment */:/* comment */ flex/* comment */", "/* comment */ /* comment */default/* comment */"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "/* comment */ print and (orientation:landscape)"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "/* comment */ print and (orientation:landscape)"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_28___, "screen and (min-width: 400px)"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_29___, "(prefers-color-scheme: dark)"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_30___, "", false, "display: flex"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_30___, "", false, "((display: flex))"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_31___, "", false, "display: flex"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "", false, "display: grid"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_32___, "screen and (min-width: 400px)", false, "display: flex"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_33___, "screen and (min-width: 400px)", false, "display: flex"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "", false, undefined, "framework"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_34___, "", false, undefined, "framework"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_35___, "", false, undefined, "framework"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_36___, "", false, undefined, "default"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_37___, "", false, undefined, "default"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_38___, "", false, undefined, "base"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_39___, "", false, undefined, "base"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_40___, "", false, "display: flex", "default"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_41___, "screen and (min-width: 400px)", false, "display: flex", "default"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_42___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "unknown(default) unknown(display: flex) unknown"); +var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`@import url(); @import url(''); -@import url(\\"\\"); -@import \\"test.css\\"; -@import 'test.css'; +@import url(""); @import ''; -@import \\"\\"; -@import \\" \\"; -@import \\" -\\"; +@import ""; +@import " "; +@import " +"; @import url(); @import url(''); -@import url(\\"\\"); -@import url(test.css) screen and (orientation:landscape); -@import url(test.css) SCREEN AND (ORIENTATION: LANDSCAPE); -@import url(test.css)screen and (orientation:landscape); -@import url(test.css) screen and (orientation:landscape); -@import url(~package/test.css); +@import url(""); @import ; @import foo-bar; @import-normalize; @@ -416,804 +761,3208 @@ Array [ } .background { - background: url(/webpack/public/path/img.png); + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); } - -@import url(./test.css); - -@import './te\\\\ -st.css'; -@import './te\\\\ -\\\\ -\\\\ -st.css'; -@import url('./te\\\\ -st.css'); -@import url('./te\\\\ +@import nourl(test.css); +@import '\\\\ \\\\ \\\\ -st.css'); -@import './test test.css'; -@import url('./test test.css'); -@import './test\\\\ test.css'; -@import url('./test\\\\ test.css'); -@import './test%20test.css'; -@import url('./test%20test.css'); -@import './\\\\74\\\\65\\\\73\\\\74.css'; -@import url('./\\\\74\\\\65\\\\73\\\\74.css'); -@import './t\\\\65\\\\73\\\\74.css'; -@import url('./t\\\\65\\\\73\\\\74.css'); -@import url(./test\\\\ test.css); -@import url(./t\\\\65st%20test.css); -@import url('./t\\\\65st%20test.css'); -@import url(\\"./t\\\\65st%20test.css\\"); -@import \\"./t\\\\65st%20test.css\\"; -@import './t\\\\65st%20test.css'; -@import url( test.css ); -@import nourl(test.css); -/* TODO need fix */ -/*@import '\\\\*/ -/*\\\\*/ -/*\\\\*/ -/*';*/ -", - "", - ], -] -`; +'; -exports[`"import" option should work when "Function": warnings 1`] = ` -Array [ - "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning - -(105:1) Unable to find uri in \\"@import nourl(test.css)\\"", - "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning - -(12:1) Unable to find uri in \\"@import url()\\"", - "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning - -(13:1) Unable to find uri in \\"@import url('')\\"", - "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning +/* Should be one import and two css modules */ -(14:1) Unable to find uri in \\"@import url(\\"\\")\\"", - "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning +/* Should be one import and two css modules */ -(17:1) Unable to find uri in \\"@import ''\\"", - "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning +/* Should be one import and two css modules */ -(18:1) Unable to find uri in \\"@import \\"\\"\\"", - "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning +/* Should be two import and two css modules */ -(19:1) Unable to find uri in \\"@import \\" \\"\\"", - "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning +/* Should be two import and two css modules */ -(20:1) Unable to find uri in \\"@import \\" -\\"\\"", - "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning +/* Should be two import and two css modules */ +@import url('!!../../helpers/string-loader.js?esModule=false!'); -(22:1) Unable to find uri in \\"@import url()\\"", - "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning +/* Prefer relative */ +\`, ""]); +// Exports +export default ___CSS_LOADER_EXPORT___; +" +`; -(23:1) Unable to find uri in \\"@import url('')\\"", - "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning - -(24:1) Unable to find uri in \\"@import url(\\"\\")\\"", - "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning - -(40:1) Unable to find uri in \\"@import \\"", - "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning - -(41:1) Unable to find uri in \\"@import foo-bar\\"", - "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning - -(43:1) It looks like you didn't end your @import statement correctly. Child nodes are attached to it.", -] -`; - -exports[`"import" option should work when not specified: errors 1`] = `Array []`; - -exports[`"import" option should work when not specified: module 1`] = ` -"// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../src/runtime/api.js\\"); -var ___CSS_LOADER_AT_RULE_IMPORT_0___ = require(\\"-!../../../src/index.js??[ident]!./test.css\\"); -var ___CSS_LOADER_AT_RULE_IMPORT_1___ = require(\\"-!../../../src/index.js??[ident]!./test-media.css\\"); -var ___CSS_LOADER_AT_RULE_IMPORT_2___ = require(\\"-!../../../src/index.js??[ident]!./test-other.css\\"); -var ___CSS_LOADER_AT_RULE_IMPORT_3___ = require(\\"-!../../../src/index.js??[ident]!package/test.css\\"); -var ___CSS_LOADER_AT_RULE_IMPORT_4___ = require(\\"-!../../../src/index.js??[ident]!./query.css?foo=1&bar=1\\"); -var ___CSS_LOADER_AT_RULE_IMPORT_5___ = require(\\"-!../../../src/index.js??[ident]!./other-query.css?foo=1&bar=1#hash\\"); -var ___CSS_LOADER_AT_RULE_IMPORT_6___ = require(\\"-!../../../src/index.js??[ident]!./relative.css\\"); -var ___CSS_LOADER_AT_RULE_IMPORT_7___ = require(\\"-!../../../src/index.js??[ident]!../import/top-relative.css\\"); -var ___CSS_LOADER_AT_RULE_IMPORT_8___ = require(\\"-!../../../src/index.js??[ident]!package/tilde.css\\"); -var ___CSS_LOADER_AT_RULE_IMPORT_9___ = require(\\"-!../../../src/index.js??[ident]!aliasesImport/alias.css\\"); -var ___CSS_LOADER_AT_RULE_IMPORT_10___ = require(\\"-!../../../src/index.js??[ident]!./url.css\\"); -var ___CSS_LOADER_AT_RULE_IMPORT_11___ = require(\\"-!../../../src/index.js??[ident]!./te'st.css\\"); -var ___CSS_LOADER_AT_RULE_IMPORT_12___ = require(\\"-!../../../src/index.js??[ident]!./test test.css\\"); -var ___CSS_LOADER_GET_URL_IMPORT___ = require(\\"../../../src/runtime/getUrl.js\\"); -var ___CSS_LOADER_URL_IMPORT_0___ = require(\\"./img.png\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___, \\"screen and (orientation:landscape)\\"); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___, \\"screen and (orientation: landscape)\\"); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___, \\"screen and (orientation:landscape)\\"); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___, \\"screen and (orientation:landscape)\\"); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_1___, \\"screen and (orientation:landscape)\\"); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_2___, \\"(min-width: 100px)\\"); -exports.push([module.id, \\"@import url(http://example.com/style.css);\\"]); -exports.push([module.id, \\"@import url(http://example.com/style.css);\\"]); -exports.push([module.id, \\"@import url(http://example.com/style.css#hash);\\"]); -exports.push([module.id, \\"@import url(http://example.com/style.css?#hash);\\"]); -exports.push([module.id, \\"@import url(http://example.com/style.css?foo=bar#hash);\\"]); -exports.push([module.id, \\"@import url(http://example.com/other-style.css);\\", \\"screen and (orientation:landscape)\\"]); -exports.push([module.id, \\"@import url(http://example.com/other-style.css);\\", \\"screen and (orientation:landscape)\\"]); -exports.push([module.id, \\"@import url(//example.com/style.css);\\"]); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_3___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_4___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_5___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_5___, \\"screen and (orientation:landscape)\\"); -exports.push([module.id, \\"@import url(https://fonts.googleapis.com/css?family=Roboto);\\"]); -exports.push([module.id, \\"@import url(https://fonts.googleapis.com/css?family=Noto+Sans+TC);\\"]); -exports.push([module.id, \\"@import url(https://fonts.googleapis.com/css?family=Noto+Sans+TC|Roboto);\\"]); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_6___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_7___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_8___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_9___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_10___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_11___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_11___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_11___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_11___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_12___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_12___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_12___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_12___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_12___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_12___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_12___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_12___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_12___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_12___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_12___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_12___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___); -var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); -// Module -exports.push([module.id, \\"@import url();\\\\n@import url('');\\\\n@import url(\\\\\\"\\\\\\");\\\\n@import '';\\\\n@import \\\\\\"\\\\\\";\\\\n@import \\\\\\" \\\\\\";\\\\n@import \\\\\\"\\\\n\\\\\\";\\\\n@import url();\\\\n@import url('');\\\\n@import url(\\\\\\"\\\\\\");\\\\n@import ;\\\\n@import foo-bar;\\\\n@import-normalize;\\\\n@import url('http://') :root {}\\\\n\\\\n.class {\\\\n a: b c d;\\\\n}\\\\n\\\\n.foo {\\\\n @import 'path.css';\\\\n}\\\\n\\\\n.background {\\\\n background: url(\\" + ___CSS_LOADER_URL_REPLACEMENT_0___ + \\");\\\\n}\\\\n@import nourl(test.css);\\\\n/* TODO need fix */\\\\n/*@import '\\\\\\\\*/\\\\n/*\\\\\\\\*/\\\\n/*\\\\\\\\*/\\\\n/*';*/\\\\n\\", \\"\\"]); -// Exports -module.exports = exports; -" -`; - -exports[`"import" option should work when not specified: result 1`] = ` -Array [ - Array [ - "../../src/index.js?[ident]!./import/test.css", - ".test { +exports[`"import" option should work when not specified and print correct output: result 1`] = ` +".test { a: a; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test.css", - ".test { +.test { a: a; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test.css", - ".test { +.test { a: a; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test.css", - ".test { +.test { a: a; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test.css", - ".test { +.test { a: a; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test.css", - ".test { +.test { a: a; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test.css", - ".test { +.test { a: a; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test.css", - ".test { +.test { a: a; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test.css", - ".test { +.test { a: a; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test.css", - ".test { +.test { a: a; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test.css", - ".test { +.test { a: a; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test.css", - ".test { +@media screen and (orientation:landscape) {.test { a: a; } -", - "screen and (orientation:landscape)", - ], - Array [ - "../../src/index.js?[ident]!./import/test.css", - ".test { +}@media screen and (orientation: landscape) {.test { a: a; } -", - "screen and (orientation: landscape)", - ], - Array [ - "../../src/index.js?[ident]!./import/test.css", - ".test { +}@media screen and (orientation:landscape) {.test { a: a; } -", - "screen and (orientation:landscape)", - ], - Array [ - "../../src/index.js?[ident]!./import/test.css", - ".test { +}@media screen and (orientation:landscape) {.test { a: a; } -", - "screen and (orientation:landscape)", - ], - Array [ - "../../src/index.js?[ident]!./import/test-nested-media.css", - "a { +}@media screen and (orientation:landscape) {@media (min-width: 100px) {a { b: b; } -", - "screen and (orientation:landscape) and (min-width: 100px)", - ], - Array [ - "../../src/index.js?[ident]!./import/test-media.css", - ".test { +}}@media screen and (orientation:landscape) {.test { c: c; } -", - "screen and (orientation:landscape)", - ], - Array [ - "../../src/index.js?[ident]!./import/test-other.css", - ".test { +}@media (min-width: 100px) {.test { d: d; } -", - "(min-width: 100px)", - ], - Array [ - "./import/import.css", - "@import url(http://example.com/style.css);", - ], - Array [ - "./import/import.css", - "@import url(http://example.com/style.css);", - ], - Array [ - "./import/import.css", - "@import url(http://example.com/style.css#hash);", - ], - Array [ - "./import/import.css", - "@import url(http://example.com/style.css?#hash);", - ], - Array [ - "./import/import.css", - "@import url(http://example.com/style.css?foo=bar#hash);", - ], - Array [ - "./import/import.css", - "@import url(http://example.com/other-style.css);", - "screen and (orientation:landscape)", - ], - Array [ - "./import/import.css", - "@import url(http://example.com/other-style.css);", - "screen and (orientation:landscape)", - ], - Array [ - "./import/import.css", - "@import url(//example.com/style.css);", - ], - Array [ - "../../src/index.js?[ident]!./import/node_modules/package/test.css", - ".test { +}@import url(http://example.com/style.css);@import url(http://example.com/style.css);@import url(http://example.com/style.css#hash);@import url(http://example.com/style.css?#hash);@import url(http://example.com/style.css?foo=bar#hash);@media screen and (orientation:landscape) {@import url(http://example.com/other-style.css);}@media screen and (orientation:landscape) {@import url(http://example.com/other-style.css);}@import url(//example.com/style.css);.test { d: d } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/query.css?foo=1&bar=1", - ".query { +.query { e: e; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/other-query.css?foo=1&bar=1#hash", - ".other-query { +.other-query { f: f; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/other-query.css?foo=1&bar=1#hash", - ".other-query { +@media screen and (orientation:landscape) {.other-query { f: f; } -", - "screen and (orientation:landscape)", - ], - Array [ - "./import/import.css", - "@import url(https://fonts.googleapis.com/css?family=Roboto);", - ], - Array [ - "./import/import.css", - "@import url(https://fonts.googleapis.com/css?family=Noto+Sans+TC);", - ], - Array [ - "./import/import.css", - "@import url(https://fonts.googleapis.com/css?family=Noto+Sans+TC|Roboto);", - ], - Array [ - "../../src/index.js?[ident]!./import/relative.css", - ".relative { +}@import url(https://fonts.googleapis.com/css?family=Roboto);@import url(https://fonts.googleapis.com/css?family=Noto+Sans+TC);@import url(https://fonts.googleapis.com/css?family=Noto+Sans+TC|Roboto);.relative { color: red; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/top-relative.css", - ".top-relative { +.top-relative { color: black; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/node_modules/package/tilde.css", - ".tilde { +.tilde { color: yellow; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/alias.css", - ".alias { +.alias { color: red; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/url.css", - ".background-imported { - background: url(/webpack/public/path/img.png); +.background-imported { + background: url(replaced_file_protocol_/webpack/public/path/img.png); } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test.css", - ".test { +.test { a: a; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test.css", - ".test { +.test { a: a; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test.css", - ".test { +.test { a: a; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test.css", - ".test { +.test { a: a; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test.css", - ".test { +.test { a: a; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/te'st.css", - ".strange { +.strange { color: red; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/te'st.css", - ".strange { +.strange { color: red; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/te'st.css", - ".strange { +.strange { color: red; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/te'st.css", - ".strange { +.strange { color: red; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test test.css", - ".space { +.space { color: gray; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test test.css", - ".space { +.space { color: gray; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test test.css", - ".space { +.space { color: gray; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test test.css", - ".space { +.space { color: gray; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test test.css", - ".space { +.space { color: gray; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test test.css", - ".space { +.space { color: gray; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test.css", - ".test { +.test { a: a; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test.css", - ".test { +.test { a: a; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test.css", - ".test { +.test { a: a; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test.css", - ".test { +.test { a: a; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test test.css", - ".space { +.space { color: gray; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test test.css", - ".space { +.space { color: gray; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test test.css", - ".space { +.space { color: gray; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test test.css", - ".space { +.space { color: gray; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test test.css", - ".space { +.space { color: gray; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test test.css", - ".space { +.space { color: gray; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test.css", - ".test { +.test { a: a; } -", - "", - ], - Array [ - "./import/import.css", - "@import url(); -@import url(''); -@import url(\\"\\"); -@import ''; -@import \\"\\"; -@import \\" \\"; -@import \\" -\\"; -@import url(); -@import url(''); -@import url(\\"\\"); -@import ; -@import foo-bar; -@import-normalize; -@import url('http://') :root {} - -.class { - a: b c d; +a { color: red };.test { + a: a; } - -.foo { - @import 'path.css'; +.test { + a: a; } - -.background { - background: url(/webpack/public/path/img.png); +.test { + a: a; } -@import nourl(test.css); -/* TODO need fix */ -/*@import '\\\\*/ -/*\\\\*/ -/*\\\\*/ -/*';*/ -", - "", - ], -] -`; - -exports[`"import" option should work when not specified: warnings 1`] = ` -Array [ - "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning - -(105:1) Unable to find uri in \\"@import nourl(test.css)\\"", - "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning - -(12:1) Unable to find uri in \\"@import url()\\"", - "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning - -(13:1) Unable to find uri in \\"@import url('')\\"", - "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning +@supports (display: flex) {.test { + a: a; +} +}@supports (display: flex) {@media screen and (orientation:landscape) {.test { + a: a; +} +}}.my-box { + color: red; +} +.my-box { + color: red; +} +.my-box { + color: red; +} +.my-box { + color: red; +} +.my-box { + color: red; +} +.my-box { + color: red; +} +.my-box { + color: red; +} +.my-box { + color: red; +} +.my-box { + color: red; +} +.my-box { + color: red; +} +.my-box { + color: red; +} +.my-box { + color: red; +} +.test { + a: a; +} +.test { + a: a; +} +.test { + a: a; +} +a { + color: red; +}@import url(https://fonts.googleapis.com/css?family=Roboto);a { color: red };@import url(data:text/css;charset=utf-8,a%20%7B%0D%0A%20%20color%3A%20red%3B%0D%0A%7D);.first { + color: red; +} +.second { + color: red; +} +.test { + a: a; +} +@supports (unknown) {.test { + a: a; +} +}@supports (display: flex) {.test { + a: a; +} +}@supports (display: flex !important) {.test { + a: a; +} +}@supports (display: flex) {@media screen and (min-width: 400px) {.test { + a: a; +} +}}@layer {.test { + a: a; +} +}@layer default {.test { + a: a; +} +}@supports (display: flex) {@media screen and (min-width: 400px) {@layer default {.test { + a: a; +} +}}}@supports (display: flex) {@media screen and (min-width: 400px) {@layer {.test { + a: a; +} +}}}@supports (display: flex) {@media screen and (min-width: 400px) {@layer {.test { + a: a; +} +}}}@layer {.test { + a: a; +} +}@supports (display: flex) {@media screen and (min-width: 400px) {@import url(http://example.com/style.css);}}@supports (display: flex) {@media screen and (min-width:400px) {@layer default {.test { + a: a; +} +}}}@media screen and (min-width: 400px) {.test { + a: a; +} +}@supports (display : flex) {@media screen and ( min-width : 400px ) {@layer default {.test { + a: a; +} +}}}@supports (display: flex) {@media screen and (min-width: 400px) {@layer default {.test { + a: a; +} +}}}@supports (/* comment */ /* comment */display/* comment */:/* comment */ flex/* comment */) {@media /* comment */ screen/* comment */ and/* comment */ (/* comment */min-width/* comment */: /* comment */400px/* comment */) {@layer /* comment */ /* comment */default/* comment */ {.test { + a: a; +} +}}}.test { + a: a; +} +.test { + a: a; +} +@media /* comment */ print and (orientation:landscape) {.test { + a: a; +} +}@media /* comment */ print and (orientation:landscape) {.test { + a: a; +} +}@media screen and (min-width: 400px) {@media screen and (max-width: 1200px) {.test { + a: a; +} +}}@media screen and (min-width: 400px) { +}@media (prefers-color-scheme: dark) {@media screen and (min-width: 400px) {@media screen and (max-width: 1200px) {.test { + a: a; +} +}}}@media (prefers-color-scheme: dark) {@media screen and (min-width: 400px) { +}}@media (prefers-color-scheme: dark) {}@supports (display: flex) {@supports (display: grid) {.test { + a: a; +} +}}@supports (display: flex) {}@supports (((display: flex))) {@supports (display: grid) {.test { + a: a; +} +}}@supports (((display: flex))) {}@supports (display: flex) {@supports (display: block) {@supports (display: grid) {.test { + a: a; +} +}}}@supports (display: flex) {@supports (display: block) {}}@supports (display: flex) {}@supports (display: grid) {.test { + a: a; +} +}@supports (display: flex) {@media screen and (min-width: 400px) {@supports (display: grid) {@media screen and (max-width: 1200px) {.test { + a: a; +} +}}}}@supports (display: flex) {@media screen and (min-width: 400px) {}}@supports (display: flex) {@media screen and (min-width: 400px) {@supports (display: flex) {@media screen and (min-width: 400px) {@supports (display: grid) {@media screen and (max-width: 1200px) {.test { + a: a; +} +}}}}}}@supports (display: flex) {@media screen and (min-width: 400px) {@supports (display: flex) {@media screen and (min-width: 400px) {}}}}@supports (display: flex) {@media screen and (min-width: 400px) {}}@layer framework {.test { + a: a; +} +}@layer framework {@layer base {.test { + a: a; +} +}}@layer framework {@layer base { + .foo { + color: red; + } +} +}@layer framework {@layer form {@layer base {.test { + a: a; +} +}}}@layer framework {@layer form {@layer base { + .foo { + color: red; + } +} +}}@layer framework {@layer form { + .bar { + color: red; + } +} +}@layer default {@layer base {.test { + a: a; +} +}}@layer default {@layer base {.relative { + color: red; +} +}}@layer default {@layer base { + .foo { + color: red; + } +} +}@layer default {@layer {.test { + a: a; +} +}}@layer default {}@layer base {@layer {.test { + a: a; +} +}}@layer base {.foo { + color: red; +} +}@layer base {@layer {.test { + a: a; +} +}}@layer base {@layer {.relative { + color: red; +} +}}@layer base {.foo { + color: red; +} +}@supports (display: flex) {@layer default {@layer base {.test { + a: a; +} +}}}@supports (display: flex) {@layer default {}}@supports (display: flex) {@media screen and (min-width: 400px) {@layer default {@supports (display: grid) {@media screen and (min-width: 900px) {@layer base {.test { + a: a; +} +}}}}}}@supports (display: flex) {@media screen and (min-width: 400px) {@layer default {}}}@layer bootstrap {@layer base {@layer {.relative { + color: red; +} +}}}@layer bootstrap {@layer base {@layer {.test { + a: a; +} +}}}@layer bootstrap {@layer base {/* unnamed wrapper layers around each sub-file */ +}}@layer bootstrap {/* the internal names are hidden from access, subsumed in "base" */}/* Adds additional styles to the bootstrap layer: */ +@layer bootstrap { + .test { + color: red; + } +}@media unknown(default) unknown(display: flex) unknown {.test { + a: a; +} +}@import url(); +@import url(''); +@import url(""); +@import ''; +@import ""; +@import " "; +@import " +"; +@import url(); +@import url(''); +@import url(""); +@import ; +@import foo-bar; +@import-normalize; +@import url('http://') :root {} + +.class { + a: b c d; +} + +.foo { + @import 'path.css'; +} + +.background { + background: url(replaced_file_protocol_/webpack/public/path/img.png); +} +@import nourl(test.css); +@import '\\ +\\ +\\ +'; + +/* Should be one import and two css modules */ + +/* Should be one import and two css modules */ + +/* Should be one import and two css modules */ + +/* Should be two import and two css modules */ + +/* Should be two import and two css modules */ + +/* Should be two import and two css modules */ +@import url('!!../../helpers/string-loader.js?esModule=false!'); + +/* Prefer relative */ +" +`; + +exports[`"import" option should work when not specified and print correct output: warnings 1`] = ` +[ + "ModuleWarning: Module Warning (from \`replaced original path\`): +(105:1) from "postcss-import-parser" plugin: Unable to find uri in "@import nourl(test.css)" + +Code: + @import nourl(test.css) +", + "ModuleWarning: Module Warning (from \`replaced original path\`): +(106:1) from "postcss-import-parser" plugin: Unable to find uri in "@import '\\ +\\ +\\ +'" + +Code: + @import '\\ +\\ +\\ +' +", + "ModuleWarning: Module Warning (from \`replaced original path\`): +(12:1) from "postcss-import-parser" plugin: Unable to find uri in "@import url()" + +Code: + @import url() +", + "ModuleWarning: Module Warning (from \`replaced original path\`): +(13:1) from "postcss-import-parser" plugin: Unable to find uri in "@import url('')" + +Code: + @import url('') +", + "ModuleWarning: Module Warning (from \`replaced original path\`): +(14:1) from "postcss-import-parser" plugin: Unable to find uri in "@import url("")" + +Code: + @import url("") +", + "ModuleWarning: Module Warning (from \`replaced original path\`): +(154:1) from "postcss-import-parser" plugin: Unable to find uri in "@import url('!!../../helpers/string-loader.js?esModule=false!')" + +Code: + @import url('!!../../helpers/string-loader.js?esModule=false!') +", + "ModuleWarning: Module Warning (from \`replaced original path\`): +(17:1) from "postcss-import-parser" plugin: Unable to find uri in "@import ''" + +Code: + @import '' +", + "ModuleWarning: Module Warning (from \`replaced original path\`): +(18:1) from "postcss-import-parser" plugin: Unable to find uri in "@import """ + +Code: + @import "" +", + "ModuleWarning: Module Warning (from \`replaced original path\`): +(19:1) from "postcss-import-parser" plugin: Unable to find uri in "@import " "" + +Code: + @import " " +", + "ModuleWarning: Module Warning (from \`replaced original path\`): +(20:1) from "postcss-import-parser" plugin: Unable to find uri in "@import " +"" + +Code: + @import " +" +", + "ModuleWarning: Module Warning (from \`replaced original path\`): +(22:1) from "postcss-import-parser" plugin: Unable to find uri in "@import url()" + +Code: + @import url() +", + "ModuleWarning: Module Warning (from \`replaced original path\`): +(23:1) from "postcss-import-parser" plugin: Unable to find uri in "@import url('')" + +Code: + @import url('') +", + "ModuleWarning: Module Warning (from \`replaced original path\`): +(24:1) from "postcss-import-parser" plugin: Unable to find uri in "@import url("")" + +Code: + @import url("") +", + "ModuleWarning: Module Warning (from \`replaced original path\`): +(40:1) from "postcss-import-parser" plugin: Unable to find uri in "@import " + +Code: + @import +", + "ModuleWarning: Module Warning (from \`replaced original path\`): +(41:1) from "postcss-import-parser" plugin: Unable to find uri in "@import foo-bar" + +Code: + @import foo-bar +", + "ModuleWarning: Module Warning (from \`replaced original path\`): +(43:1) from "postcss-import-parser" plugin: It looks like you didn't end your @import statement correctly. Child nodes are attached to it. + +Code: + @import url('http://') :root {} +", +] +`; + +exports[`"import" option should work when not specified: errors 1`] = `[]`; + +exports[`"import" option should work when not specified: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../src/runtime/api.js"; +import ___CSS_LOADER_AT_RULE_IMPORT_0___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./test.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_1___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./test-media.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_2___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./test-other.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_3___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./node_modules/package/test.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_4___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./query.css?foo=1&bar=1"; +import ___CSS_LOADER_AT_RULE_IMPORT_5___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./other-query.css?foo=1&bar=1#hash"; +import ___CSS_LOADER_AT_RULE_IMPORT_6___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./relative.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_7___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./top-relative.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_8___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./node_modules/package/tilde.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_9___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./alias.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_10___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./url.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_11___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./te'st.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_12___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./test test.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_13___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!!!../../helpers/string-loader.js?esModule=false!./node_modules/package/tilde.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_14___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./test.css?foo=bar"; +import ___CSS_LOADER_AT_RULE_IMPORT_15___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./test.css?foo=bar#hash"; +import ___CSS_LOADER_AT_RULE_IMPORT_16___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./test.css?#hash"; +import ___CSS_LOADER_AT_RULE_IMPORT_17___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./something.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_18___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./something.css?foo=bar"; +import ___CSS_LOADER_AT_RULE_IMPORT_19___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./something.css?foo=bar#hash"; +import ___CSS_LOADER_AT_RULE_IMPORT_20___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./something.css?bar=foo"; +import ___CSS_LOADER_AT_RULE_IMPORT_21___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./something.css?foo=bar#one"; +import ___CSS_LOADER_AT_RULE_IMPORT_22___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./something.css?foo=bar#two"; +import ___CSS_LOADER_AT_RULE_IMPORT_23___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./something.css?foo=1&bar=2"; +import ___CSS_LOADER_AT_RULE_IMPORT_24___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./something.css?foo=2&bar=1"; +import ___CSS_LOADER_AT_RULE_IMPORT_25___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./my.scss"; +import ___CSS_LOADER_AT_RULE_IMPORT_26___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./package/first.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_27___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./node_modules/package/second.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_28___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./import-with-media.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_29___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./deep-import-with-media.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_30___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./import-with-supports.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_31___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./deep-import-with-supports.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_32___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./import-with-supports-and-media.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_33___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./import-deep-with-supports-and-media.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_34___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./import-with-layer.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_35___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./deep-import-with-layer.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_36___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./import-multiple-with-layer.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_37___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./import-with-layer-unnamed.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_38___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./import-unnamed-layer.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_39___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./import-multiple-unnamed-layer.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_40___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./import-with-layer-and-supports.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_41___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./import-with-layer-and-supports-and-media.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_42___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./deep-layer.css"; +import ___CSS_LOADER_GET_URL_IMPORT___ from "../../../src/runtime/getUrl.js"; +var ___CSS_LOADER_URL_IMPORT_0___ = new URL("./img.png", import.meta.url); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "screen and (orientation:landscape)"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "screen and (orientation: landscape)"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "screen and (orientation:landscape)"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "screen and (orientation:landscape)"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_1___, "screen and (orientation:landscape)"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_2___, "(min-width: 100px)"); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(http://example.com/style.css);"]); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(http://example.com/style.css);"]); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(http://example.com/style.css#hash);"]); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(http://example.com/style.css?#hash);"]); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(http://example.com/style.css?foo=bar#hash);"]); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(http://example.com/other-style.css);", "screen and (orientation:landscape)"]); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(http://example.com/other-style.css);", "screen and (orientation:landscape)"]); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(//example.com/style.css);"]); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_3___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_4___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_5___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_5___, "screen and (orientation:landscape)"); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(https://fonts.googleapis.com/css?family=Roboto);"]); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(https://fonts.googleapis.com/css?family=Noto+Sans+TC);"]); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(https://fonts.googleapis.com/css?family=Noto+Sans+TC|Roboto);"]); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_6___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_7___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_8___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_9___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_10___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_11___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_11___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_11___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_11___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_12___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_12___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_12___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_12___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_12___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_12___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_12___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_12___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_12___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_12___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_12___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_12___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_13___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_14___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_15___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_16___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "", false, "display: flex"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "screen and (orientation:landscape)", false, "display: flex"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_17___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_17___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_18___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_18___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_19___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_19___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_18___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_20___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_21___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_22___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_23___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_24___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_25___); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(https://fonts.googleapis.com/css?family=Roboto);"]); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_13___); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(data:text/css;charset=utf-8,a%20%7B%0D%0A%20%20color%3A%20red%3B%0D%0A%7D);"]); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_26___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_27___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "", false, ""); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "", false, "unknown"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "", false, "display: flex"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "", false, "display: flex !important"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "screen and (min-width: 400px)", false, "display: flex"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "", false, undefined, ""); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "", false, undefined, "default"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "screen and (min-width: 400px)", false, "display: flex", "default"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "screen and (min-width: 400px)", false, "display: flex", ""); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "screen and (min-width: 400px)", false, "display: flex", ""); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "", false, undefined, ""); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(http://example.com/style.css);", "screen and (min-width: 400px)", false, "display: flex"]); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "screen and (min-width:400px)", false, "display: flex", "default"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "screen and (min-width: 400px)"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "screen and ( min-width : 400px )", false, "display : flex", "default"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "screen and (min-width: 400px)", false, "display: flex", "default"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "/* comment */ screen/* comment */ and/* comment */ (/* comment */min-width/* comment */: /* comment */400px/* comment */)", false, "/* comment */ /* comment */display/* comment */:/* comment */ flex/* comment */", "/* comment */ /* comment */default/* comment */"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "/* comment */ print and (orientation:landscape)"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "/* comment */ print and (orientation:landscape)"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_28___, "screen and (min-width: 400px)"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_29___, "(prefers-color-scheme: dark)"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_30___, "", false, "display: flex"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_30___, "", false, "((display: flex))"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_31___, "", false, "display: flex"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "", false, "display: grid"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_32___, "screen and (min-width: 400px)", false, "display: flex"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_33___, "screen and (min-width: 400px)", false, "display: flex"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "", false, undefined, "framework"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_34___, "", false, undefined, "framework"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_35___, "", false, undefined, "framework"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_36___, "", false, undefined, "default"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_37___, "", false, undefined, "default"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_38___, "", false, undefined, "base"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_39___, "", false, undefined, "base"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_40___, "", false, "display: flex", "default"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_41___, "screen and (min-width: 400px)", false, "display: flex", "default"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_42___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "unknown(default) unknown(display: flex) unknown"); +var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`@import url(); +@import url(''); +@import url(""); +@import ''; +@import ""; +@import " "; +@import " +"; +@import url(); +@import url(''); +@import url(""); +@import ; +@import foo-bar; +@import-normalize; +@import url('http://') :root {} + +.class { + a: b c d; +} + +.foo { + @import 'path.css'; +} + +.background { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} +@import nourl(test.css); +@import '\\\\ +\\\\ +\\\\ +'; + +/* Should be one import and two css modules */ + +/* Should be one import and two css modules */ + +/* Should be one import and two css modules */ + +/* Should be two import and two css modules */ + +/* Should be two import and two css modules */ + +/* Should be two import and two css modules */ +@import url('!!../../helpers/string-loader.js?esModule=false!'); + +/* Prefer relative */ +\`, ""]); +// Exports +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"import" option should work when not specified: result 1`] = ` +".test { + a: a; +} +.test { + a: a; +} +.test { + a: a; +} +.test { + a: a; +} +.test { + a: a; +} +.test { + a: a; +} +.test { + a: a; +} +.test { + a: a; +} +.test { + a: a; +} +.test { + a: a; +} +.test { + a: a; +} +@media screen and (orientation:landscape) {.test { + a: a; +} +}@media screen and (orientation: landscape) {.test { + a: a; +} +}@media screen and (orientation:landscape) {.test { + a: a; +} +}@media screen and (orientation:landscape) {.test { + a: a; +} +}@media screen and (orientation:landscape) {@media (min-width: 100px) {a { + b: b; +} +}}@media screen and (orientation:landscape) {.test { + c: c; +} +}@media (min-width: 100px) {.test { + d: d; +} +}@import url(http://example.com/style.css);@import url(http://example.com/style.css);@import url(http://example.com/style.css#hash);@import url(http://example.com/style.css?#hash);@import url(http://example.com/style.css?foo=bar#hash);@media screen and (orientation:landscape) {@import url(http://example.com/other-style.css);}@media screen and (orientation:landscape) {@import url(http://example.com/other-style.css);}@import url(//example.com/style.css);.test { + d: d +} +.query { + e: e; +} +.other-query { + f: f; +} +@media screen and (orientation:landscape) {.other-query { + f: f; +} +}@import url(https://fonts.googleapis.com/css?family=Roboto);@import url(https://fonts.googleapis.com/css?family=Noto+Sans+TC);@import url(https://fonts.googleapis.com/css?family=Noto+Sans+TC|Roboto);.relative { + color: red; +} +.top-relative { + color: black; +} +.tilde { + color: yellow; +} +.alias { + color: red; +} +.background-imported { + background: url(replaced_file_protocol_/webpack/public/path/img.png); +} +.test { + a: a; +} +.test { + a: a; +} +.test { + a: a; +} +.test { + a: a; +} +.test { + a: a; +} +.strange { + color: red; +} +.strange { + color: red; +} +.strange { + color: red; +} +.strange { + color: red; +} +.space { + color: gray; +} +.space { + color: gray; +} +.space { + color: gray; +} +.space { + color: gray; +} +.space { + color: gray; +} +.space { + color: gray; +} +.test { + a: a; +} +.test { + a: a; +} +.test { + a: a; +} +.test { + a: a; +} +.space { + color: gray; +} +.space { + color: gray; +} +.space { + color: gray; +} +.space { + color: gray; +} +.space { + color: gray; +} +.space { + color: gray; +} +.test { + a: a; +} +a { color: red };.test { + a: a; +} +.test { + a: a; +} +.test { + a: a; +} +@supports (display: flex) {.test { + a: a; +} +}@supports (display: flex) {@media screen and (orientation:landscape) {.test { + a: a; +} +}}.my-box { + color: red; +} +.my-box { + color: red; +} +.my-box { + color: red; +} +.my-box { + color: red; +} +.my-box { + color: red; +} +.my-box { + color: red; +} +.my-box { + color: red; +} +.my-box { + color: red; +} +.my-box { + color: red; +} +.my-box { + color: red; +} +.my-box { + color: red; +} +.my-box { + color: red; +} +.test { + a: a; +} +.test { + a: a; +} +.test { + a: a; +} +a { + color: red; +}@import url(https://fonts.googleapis.com/css?family=Roboto);a { color: red };@import url(data:text/css;charset=utf-8,a%20%7B%0D%0A%20%20color%3A%20red%3B%0D%0A%7D);.first { + color: red; +} +.second { + color: red; +} +.test { + a: a; +} +@supports (unknown) {.test { + a: a; +} +}@supports (display: flex) {.test { + a: a; +} +}@supports (display: flex !important) {.test { + a: a; +} +}@supports (display: flex) {@media screen and (min-width: 400px) {.test { + a: a; +} +}}@layer {.test { + a: a; +} +}@layer default {.test { + a: a; +} +}@supports (display: flex) {@media screen and (min-width: 400px) {@layer default {.test { + a: a; +} +}}}@supports (display: flex) {@media screen and (min-width: 400px) {@layer {.test { + a: a; +} +}}}@supports (display: flex) {@media screen and (min-width: 400px) {@layer {.test { + a: a; +} +}}}@layer {.test { + a: a; +} +}@supports (display: flex) {@media screen and (min-width: 400px) {@import url(http://example.com/style.css);}}@supports (display: flex) {@media screen and (min-width:400px) {@layer default {.test { + a: a; +} +}}}@media screen and (min-width: 400px) {.test { + a: a; +} +}@supports (display : flex) {@media screen and ( min-width : 400px ) {@layer default {.test { + a: a; +} +}}}@supports (display: flex) {@media screen and (min-width: 400px) {@layer default {.test { + a: a; +} +}}}@supports (/* comment */ /* comment */display/* comment */:/* comment */ flex/* comment */) {@media /* comment */ screen/* comment */ and/* comment */ (/* comment */min-width/* comment */: /* comment */400px/* comment */) {@layer /* comment */ /* comment */default/* comment */ {.test { + a: a; +} +}}}.test { + a: a; +} +.test { + a: a; +} +@media /* comment */ print and (orientation:landscape) {.test { + a: a; +} +}@media /* comment */ print and (orientation:landscape) {.test { + a: a; +} +}@media screen and (min-width: 400px) {@media screen and (max-width: 1200px) {.test { + a: a; +} +}}@media screen and (min-width: 400px) { +}@media (prefers-color-scheme: dark) {@media screen and (min-width: 400px) {@media screen and (max-width: 1200px) {.test { + a: a; +} +}}}@media (prefers-color-scheme: dark) {@media screen and (min-width: 400px) { +}}@media (prefers-color-scheme: dark) {}@supports (display: flex) {@supports (display: grid) {.test { + a: a; +} +}}@supports (display: flex) {}@supports (((display: flex))) {@supports (display: grid) {.test { + a: a; +} +}}@supports (((display: flex))) {}@supports (display: flex) {@supports (display: block) {@supports (display: grid) {.test { + a: a; +} +}}}@supports (display: flex) {@supports (display: block) {}}@supports (display: flex) {}@supports (display: grid) {.test { + a: a; +} +}@supports (display: flex) {@media screen and (min-width: 400px) {@supports (display: grid) {@media screen and (max-width: 1200px) {.test { + a: a; +} +}}}}@supports (display: flex) {@media screen and (min-width: 400px) {}}@supports (display: flex) {@media screen and (min-width: 400px) {@supports (display: flex) {@media screen and (min-width: 400px) {@supports (display: grid) {@media screen and (max-width: 1200px) {.test { + a: a; +} +}}}}}}@supports (display: flex) {@media screen and (min-width: 400px) {@supports (display: flex) {@media screen and (min-width: 400px) {}}}}@supports (display: flex) {@media screen and (min-width: 400px) {}}@layer framework {.test { + a: a; +} +}@layer framework {@layer base {.test { + a: a; +} +}}@layer framework {@layer base { + .foo { + color: red; + } +} +}@layer framework {@layer form {@layer base {.test { + a: a; +} +}}}@layer framework {@layer form {@layer base { + .foo { + color: red; + } +} +}}@layer framework {@layer form { + .bar { + color: red; + } +} +}@layer default {@layer base {.test { + a: a; +} +}}@layer default {@layer base {.relative { + color: red; +} +}}@layer default {@layer base { + .foo { + color: red; + } +} +}@layer default {@layer {.test { + a: a; +} +}}@layer default {}@layer base {@layer {.test { + a: a; +} +}}@layer base {.foo { + color: red; +} +}@layer base {@layer {.test { + a: a; +} +}}@layer base {@layer {.relative { + color: red; +} +}}@layer base {.foo { + color: red; +} +}@supports (display: flex) {@layer default {@layer base {.test { + a: a; +} +}}}@supports (display: flex) {@layer default {}}@supports (display: flex) {@media screen and (min-width: 400px) {@layer default {@supports (display: grid) {@media screen and (min-width: 900px) {@layer base {.test { + a: a; +} +}}}}}}@supports (display: flex) {@media screen and (min-width: 400px) {@layer default {}}}@layer bootstrap {@layer base {@layer {.relative { + color: red; +} +}}}@layer bootstrap {@layer base {@layer {.test { + a: a; +} +}}}@layer bootstrap {@layer base {/* unnamed wrapper layers around each sub-file */ +}}@layer bootstrap {/* the internal names are hidden from access, subsumed in "base" */}/* Adds additional styles to the bootstrap layer: */ +@layer bootstrap { + .test { + color: red; + } +}@media unknown(default) unknown(display: flex) unknown {.test { + a: a; +} +}@import url(); +@import url(''); +@import url(""); +@import ''; +@import ""; +@import " "; +@import " +"; +@import url(); +@import url(''); +@import url(""); +@import ; +@import foo-bar; +@import-normalize; +@import url('http://') :root {} + +.class { + a: b c d; +} + +.foo { + @import 'path.css'; +} + +.background { + background: url(replaced_file_protocol_/webpack/public/path/img.png); +} +@import nourl(test.css); +@import '\\ +\\ +\\ +'; + +/* Should be one import and two css modules */ + +/* Should be one import and two css modules */ + +/* Should be one import and two css modules */ + +/* Should be two import and two css modules */ + +/* Should be two import and two css modules */ + +/* Should be two import and two css modules */ +@import url('!!../../helpers/string-loader.js?esModule=false!'); + +/* Prefer relative */ +" +`; + +exports[`"import" option should work when not specified: warnings 1`] = ` +[ + "ModuleWarning: Module Warning (from \`replaced original path\`): +(105:1) from "postcss-import-parser" plugin: Unable to find uri in "@import nourl(test.css)" + +Code: + @import nourl(test.css) +", + "ModuleWarning: Module Warning (from \`replaced original path\`): +(106:1) from "postcss-import-parser" plugin: Unable to find uri in "@import '\\ +\\ +\\ +'" + +Code: + @import '\\ +\\ +\\ +' +", + "ModuleWarning: Module Warning (from \`replaced original path\`): +(12:1) from "postcss-import-parser" plugin: Unable to find uri in "@import url()" + +Code: + @import url() +", + "ModuleWarning: Module Warning (from \`replaced original path\`): +(13:1) from "postcss-import-parser" plugin: Unable to find uri in "@import url('')" + +Code: + @import url('') +", + "ModuleWarning: Module Warning (from \`replaced original path\`): +(14:1) from "postcss-import-parser" plugin: Unable to find uri in "@import url("")" + +Code: + @import url("") +", + "ModuleWarning: Module Warning (from \`replaced original path\`): +(154:1) from "postcss-import-parser" plugin: Unable to find uri in "@import url('!!../../helpers/string-loader.js?esModule=false!')" + +Code: + @import url('!!../../helpers/string-loader.js?esModule=false!') +", + "ModuleWarning: Module Warning (from \`replaced original path\`): +(17:1) from "postcss-import-parser" plugin: Unable to find uri in "@import ''" + +Code: + @import '' +", + "ModuleWarning: Module Warning (from \`replaced original path\`): +(18:1) from "postcss-import-parser" plugin: Unable to find uri in "@import """ + +Code: + @import "" +", + "ModuleWarning: Module Warning (from \`replaced original path\`): +(19:1) from "postcss-import-parser" plugin: Unable to find uri in "@import " "" + +Code: + @import " " +", + "ModuleWarning: Module Warning (from \`replaced original path\`): +(20:1) from "postcss-import-parser" plugin: Unable to find uri in "@import " +"" + +Code: + @import " +" +", + "ModuleWarning: Module Warning (from \`replaced original path\`): +(22:1) from "postcss-import-parser" plugin: Unable to find uri in "@import url()" + +Code: + @import url() +", + "ModuleWarning: Module Warning (from \`replaced original path\`): +(23:1) from "postcss-import-parser" plugin: Unable to find uri in "@import url('')" + +Code: + @import url('') +", + "ModuleWarning: Module Warning (from \`replaced original path\`): +(24:1) from "postcss-import-parser" plugin: Unable to find uri in "@import url("")" + +Code: + @import url("") +", + "ModuleWarning: Module Warning (from \`replaced original path\`): +(40:1) from "postcss-import-parser" plugin: Unable to find uri in "@import " + +Code: + @import +", + "ModuleWarning: Module Warning (from \`replaced original path\`): +(41:1) from "postcss-import-parser" plugin: Unable to find uri in "@import foo-bar" + +Code: + @import foo-bar +", + "ModuleWarning: Module Warning (from \`replaced original path\`): +(43:1) from "postcss-import-parser" plugin: It looks like you didn't end your @import statement correctly. Child nodes are attached to it. + +Code: + @import url('http://') :root {} +", +] +`; + +exports[`"import" option should work with 'false' aliases: errors 1`] = `[]`; + +exports[`"import" option should work with 'false' aliases: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../src/runtime/api.js"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`@import "/style.css"; + +.class { + color: red; +}\`, ""]); +// Exports +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"import" option should work with 'false' aliases: result 1`] = ` +[ + [ + "./import/false-alias.css", + "@import "/style.css"; + +.class { + color: red; +}", + "", + ], +] +`; + +exports[`"import" option should work with 'false' aliases: warnings 1`] = `[]`; + +exports[`"import" option should work with 'resolve.byDependency.css.extensions': errors 1`] = `[]`; + +exports[`"import" option should work with 'resolve.byDependency.css.extensions': module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../src/runtime/api.js"; +import ___CSS_LOADER_AT_RULE_IMPORT_0___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./extensions-imported.mycss"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`a { + color: red; +} +\`, ""]); +// Exports +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"import" option should work with 'resolve.byDependency.css.extensions': result 1`] = ` +[ + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./import/extensions-imported.mycss", + "div { + color: red; +} +", + "", + ], + [ + "./import/extensions.css", + "a { + color: red; +} +", + "", + ], +] +`; + +exports[`"import" option should work with 'resolve.byDependency.css.extensions': warnings 1`] = `[]`; + +exports[`"import" option should work with 'resolve.extensions': errors 1`] = `[]`; + +exports[`"import" option should work with 'resolve.extensions': module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../src/runtime/api.js"; +import ___CSS_LOADER_AT_RULE_IMPORT_0___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./extensions-imported.mycss"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`a { + color: red; +} +\`, ""]); +// Exports +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"import" option should work with 'resolve.extensions': result 1`] = ` +[ + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./import/extensions-imported.mycss", + "div { + color: red; +} +", + "", + ], + [ + "./import/extensions.css", + "a { + color: red; +} +", + "", + ], +] +`; + +exports[`"import" option should work with 'resolve.extensions': warnings 1`] = `[]`; + +exports[`"import" option should work with a "import.loaders" value equal to ""1"" ("postcss-loader" before): errors 1`] = `[]`; + +exports[`"import" option should work with a "import.loaders" value equal to ""1"" ("postcss-loader" before): module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../src/runtime/api.js"; +import ___CSS_LOADER_AT_RULE_IMPORT_0___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!./imported.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_1___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!./other-imported.css"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_1___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`.foo { + color: red; + color: rgb(0 0 100% / 90%); +} +\`, ""]); +// Exports +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"import" option should work with a "import.loaders" value equal to ""1"" ("postcss-loader" before): result 1`] = ` +[ + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!./nested-import/imported.css", + ".bar { + color: blue; + color: rgb(0 0 100% / 90%); +} +", + "", + ], + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!./nested-import/other-imported.css", + ".baz { + color: green; + color: rgb(0 0 100% / 90%); +} +", + "", + ], + [ + "./nested-import/source.css", + ".foo { + color: red; + color: rgb(0 0 100% / 90%); +} +", + "", + ], +] +`; + +exports[`"import" option should work with a "import.loaders" value equal to ""1"" ("postcss-loader" before): warnings 1`] = `[]`; + +exports[`"import" option should work with a "import.loaders" value equal to "0" (\`postcss-loader\` before): errors 1`] = `[]`; + +exports[`"import" option should work with a "import.loaders" value equal to "0" (\`postcss-loader\` before): module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../src/runtime/api.js"; +import ___CSS_LOADER_AT_RULE_IMPORT_0___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./imported.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_1___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./other-imported.css"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_1___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`.foo { + color: red; + color: rgb(0 0 100% / 90%); +} +\`, ""]); +// Exports +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"import" option should work with a "import.loaders" value equal to "0" (\`postcss-loader\` before): result 1`] = ` +[ + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./nested-import/imported.css", + ".bar { + color: blue; + color: rgb(0 0 100% / 90%); +} +", + "", + ], + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./nested-import/other-imported.css", + ".baz { + color: green; + color: rgb(0 0 100% / 90%); +} +", + "", + ], + [ + "./nested-import/source.css", + ".foo { + color: red; + color: rgb(0 0 100% / 90%); +} +", + "", + ], +] +`; + +exports[`"import" option should work with a "import.loaders" value equal to "0" (\`postcss-loader\` before): warnings 1`] = `[]`; + +exports[`"import" option should work with a "import.loaders" value equal to "1" ("postcss-loader" before): errors 1`] = `[]`; + +exports[`"import" option should work with a "import.loaders" value equal to "1" ("postcss-loader" before): module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../src/runtime/api.js"; +import ___CSS_LOADER_AT_RULE_IMPORT_0___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!./imported.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_1___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!./other-imported.css"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_1___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`.foo { + color: red; + color: rgb(0 0 100% / 90%); +} +\`, ""]); +// Exports +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"import" option should work with a "import.loaders" value equal to "1" ("postcss-loader" before): result 1`] = ` +[ + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!./nested-import/imported.css", + ".bar { + color: blue; + color: rgb(0 0 100% / 90%); +} +", + "", + ], + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!./nested-import/other-imported.css", + ".baz { + color: green; + color: rgb(0 0 100% / 90%); +} +", + "", + ], + [ + "./nested-import/source.css", + ".foo { + color: red; + color: rgb(0 0 100% / 90%); +} +", + "", + ], +] +`; + +exports[`"import" option should work with a "import.loaders" value equal to "1" ("postcss-loader" before): warnings 1`] = `[]`; + +exports[`"import" option should work with a "import.loaders" value equal to "1" (no loaders before): errors 1`] = `[]`; + +exports[`"import" option should work with a "import.loaders" value equal to "1" (no loaders before): module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../src/runtime/api.js"; +import ___CSS_LOADER_AT_RULE_IMPORT_0___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./imported.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_1___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./other-imported.css"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_1___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`.foo { + color: red; + color: rgb(0 0 100% / 90%); +} +\`, ""]); +// Exports +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"import" option should work with a "import.loaders" value equal to "1" (no loaders before): result 1`] = ` +[ + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./nested-import/imported.css", + ".bar { + color: blue; + color: rgb(0 0 100% / 90%); +} +", + "", + ], + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./nested-import/other-imported.css", + ".baz { + color: green; + color: rgb(0 0 100% / 90%); +} +", + "", + ], + [ + "./nested-import/source.css", + ".foo { + color: red; + color: rgb(0 0 100% / 90%); +} +", + "", + ], +] +`; + +exports[`"import" option should work with a "import.loaders" value equal to "1" (no loaders before): warnings 1`] = `[]`; + +exports[`"import" option should work with a "import.loaders" value equal to "2" ("postcss-loader" before): errors 1`] = `[]`; + +exports[`"import" option should work with a "import.loaders" value equal to "2" ("postcss-loader" before): module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../src/runtime/api.js"; +import ___CSS_LOADER_AT_RULE_IMPORT_0___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!./imported.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_1___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!./other-imported.css"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_1___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`.foo { + color: red; + color: rgb(0 0 100% / 90%); +} +\`, ""]); +// Exports +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"import" option should work with a "import.loaders" value equal to "2" ("postcss-loader" before): result 1`] = ` +[ + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!./nested-import/imported.css", + ".bar { + color: blue; + color: rgb(0 0 100% / 90%); +} +", + "", + ], + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!./nested-import/other-imported.css", + ".baz { + color: green; + color: rgb(0 0 100% / 90%); +} +", + "", + ], + [ + "./nested-import/source.css", + ".foo { + color: red; + color: rgb(0 0 100% / 90%); +} +", + "", + ], +] +`; + +exports[`"import" option should work with a "import.loaders" value equal to "2" ("postcss-loader" before): warnings 1`] = `[]`; + +exports[`"import" option should work with a value equal to "false": errors 1`] = `[]`; + +exports[`"import" option should work with a value equal to "false": module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../src/runtime/api.js"; +import ___CSS_LOADER_GET_URL_IMPORT___ from "../../../src/runtime/getUrl.js"; +var ___CSS_LOADER_URL_IMPORT_0___ = new URL("./img.png", import.meta.url); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`@import url(test.css); +@import url('test.css'); +@import url("test.css"); +@IMPORT url(test.css); +@import URL(test.css); +@import url(test.css ); +@import url( test.css); +@import url( test.css ); +@import url( + test.css +); +@import url(); +@import url(''); +@import url(""); +@import "test.css"; +@import 'test.css'; +@import ''; +@import ""; +@import " "; +@import " +"; +@import url(); +@import url(''); +@import url(""); +@import url(test.css) screen and (orientation:landscape); +@import url(test.css) SCREEN AND (ORIENTATION: LANDSCAPE); +@import url(test.css)screen and (orientation:landscape); +@import url(test.css) screen and (orientation:landscape); +@import url(test-media.css) screen and (orientation:landscape); +@import url(test-other.css) (min-width: 100px); +@import url(http://example.com/style.css); +@import url(http://example.com/style.css); +@import url(http://example.com/style.css#hash); +@import url(http://example.com/style.css?#hash); +@import url(http://example.com/style.css?foo=bar#hash); +@import url(http://example.com/other-style.css) screen and (orientation:landscape); +@import url(http://example.com/other-style.css) screen and (orientation:landscape); +@import url("//example.com/style.css"); +@import url(~package/test.css); +@import ; +@import foo-bar; +@import-normalize; +@import url('http://') :root {} +@import url('query.css?foo=1&bar=1'); +@import url('other-query.css?foo=1&bar=1#hash'); +@import url('other-query.css?foo=1&bar=1#hash') screen and (orientation:landscape); +@import url('https://fonts.googleapis.com/css?family=Roboto'); +@import url('https://fonts.googleapis.com/css?family=Noto+Sans+TC'); +@import url('https://fonts.googleapis.com/css?family=Noto+Sans+TC|Roboto'); + +.class { + a: b c d; +} + +.foo { + @import 'path.css'; +} + +@import url('./relative.css'); +@import url('../import/top-relative.css'); +@import url(~package/tilde.css); +@import url(~aliasesImport/alias.css); +@import url('./url.css'); + +.background { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} + +@import url(./test.css); + +@import './te\\\\ +st.css'; +@import './te\\\\ +\\\\ +\\\\ +st.css'; +@import url('./te\\\\ +st.css'); +@import url('./te\\\\ +\\\\ +\\\\ +st.css'); + +@import "./te'st.css"; +@import url("./te'st.css"); +@import './te\\\\'st.css'; +@import url('./te\\\\'st.css'); +@import './test test.css'; +@import url('./test test.css'); +@import './test\\\\ test.css'; +@import url('./test\\\\ test.css'); +@import './test%20test.css'; +@import url('./test%20test.css'); +@import './\\\\74\\\\65\\\\73\\\\74.css'; +@import url('./\\\\74\\\\65\\\\73\\\\74.css'); +@import './t\\\\65\\\\73\\\\74.css'; +@import url('./t\\\\65\\\\73\\\\74.css'); +@import url(./test\\\\ test.css); +@import url(./t\\\\65st%20test.css); +@import url('./t\\\\65st%20test.css'); +@import url("./t\\\\65st%20test.css"); +@import "./t\\\\65st%20test.css"; +@import './t\\\\65st%20test.css'; +@import url( test.css ); +@import nourl(test.css); +@import '\\\\ +\\\\ +\\\\ +'; +@import url('!!../../helpers/string-loader.js?esModule=false!~package/tilde.css'); +@import url(test.css?foo=bar); +@import url(test.css?foo=bar#hash); +@import url(test.css?#hash); +@import "test.css" supports(display: flex); +@import "test.css" supports(display: flex) screen and (orientation:landscape); + +/* Should be one import and two css modules */ + +@import url('something.css'); +@import url('something.css'); + +/* Should be one import and two css modules */ + +@import url('something.css?foo=bar'); +@import url('something.css?foo=bar'); + +/* Should be one import and two css modules */ + +@import url('something.css?foo=bar#hash'); +@import url('something.css?foo=bar#hash'); + +/* Should be two import and two css modules */ + +@import url('something.css?foo=bar'); +@import url('something.css?bar=foo'); + +/* Should be two import and two css modules */ + +@import url('something.css?foo=bar#one'); +@import url('something.css?foo=bar#two'); + +/* Should be two import and two css modules */ + +@import url('something.css?foo=1&bar=2'); +@import url('something.css?foo=2&bar=1'); + +@import " ./test.css "; +@import url(' ./test.css '); +@import url( ./test.css ); + +@import "./my.scss"; + +@import url(' https://fonts.googleapis.com/css?family=Roboto '); +@import url('!!../../helpers/string-loader.js?esModule=false!'); +@import url(' !!../../helpers/string-loader.js?esModule=false!~package/tilde.css '); +@import url(data:text/css;charset=utf-8,a%20%7B%0D%0A%20%20color%3A%20red%3B%0D%0A%7D); + +/* Prefer relative */ +@import url(package/first.css); +@import url(package/second.css); + +@import url("./test.css") supports(); +@import url("./test.css") supports(unknown); +@import url("./test.css") supports(display: flex); +@import url("./test.css") supports(display: flex !important); +@import url("./test.css") supports(display: flex) screen and (min-width: 400px); +@import url("./test.css") layer; +@import url("./test.css") layer(default); +@import url("./test.css") layer(default) supports(display: flex) screen and (min-width: 400px); +@import url("./test.css") layer supports(display: flex) screen and (min-width: 400px); +@import url("./test.css") layer() supports(display: flex) screen and (min-width: 400px); +@import url("./test.css") layer(); +@import url("http://example.com/style.css") supports(display: flex) screen and (min-width: 400px); +@import url("./test.css")layer(default)supports(display: flex)screen and (min-width:400px); +@import url("./test.css")screen and (min-width: 400px); +@import url("./test.css") layer( default ) supports( display : flex ) screen and ( min-width : 400px ); +@import url("./test.css") LAYER(DEFAULT) SUPPORTS(DISPLAY: FLEX) SCREEN AND (MIN-WIDTH: 400PX); +@import url("./test.css") /* Comment */ layer(/* Comment */default/* Comment */) /* Comment */ supports(/* Comment */display/* Comment */:/* Comment */ flex/* Comment */)/* Comment */ screen/* Comment */ and/* Comment */ (/* Comment */min-width/* Comment */: /* Comment */400px/* Comment */); +@import url(test.css) /* Comment */; +@import /* Comment */ url(test.css) /* Comment */; +@import url(test.css) /* Comment */ print and (orientation:landscape); +@import /* Comment */ url(test.css) /* Comment */ print and (orientation:landscape); + +@import url("./import-with-media.css") screen and (min-width: 400px); +@import url("./deep-import-with-media.css") (prefers-color-scheme: dark); +@import url("./import-with-supports.css") supports(display: flex); +@import url("./import-with-supports.css") supports(((display: flex))); +@import url("./deep-import-with-supports.css") supports(display: flex); +@import url('./test.css') supports(display: grid); +@import url("./import-with-supports-and-media.css") supports(display: flex) screen and (min-width: 400px); +@import url("./import-deep-with-supports-and-media.css") supports(display: flex) screen and (min-width: 400px); +@import url("./test.css") layer(framework); +@import url("./import-with-layer.css") layer(framework); +@import url("./deep-import-with-layer.css") layer(framework); +@import url("./import-multiple-with-layer.css") layer(default); +@import url("./import-with-layer-unnamed.css") layer(default); +@import url("./import-unnamed-layer.css") layer(base); +@import url("./import-multiple-unnamed-layer.css") layer(base); +@import url("./import-with-layer-and-supports.css") layer(default) supports(display: flex); +@import url("./import-with-layer-and-supports-and-media.css") layer(default) supports(display: flex) screen and (min-width: 400px); +@import url("./deep-layer.css"); + +@import url("./test.css") unknown(default) unknown(display: flex) unknown; +\`, ""]); +// Exports +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"import" option should work with a value equal to "false": result 1`] = ` +"@import url(test.css); +@import url('test.css'); +@import url("test.css"); +@IMPORT url(test.css); +@import URL(test.css); +@import url(test.css ); +@import url( test.css); +@import url( test.css ); +@import url( + test.css +); +@import url(); +@import url(''); +@import url(""); +@import "test.css"; +@import 'test.css'; +@import ''; +@import ""; +@import " "; +@import " +"; +@import url(); +@import url(''); +@import url(""); +@import url(test.css) screen and (orientation:landscape); +@import url(test.css) SCREEN AND (ORIENTATION: LANDSCAPE); +@import url(test.css)screen and (orientation:landscape); +@import url(test.css) screen and (orientation:landscape); +@import url(test-media.css) screen and (orientation:landscape); +@import url(test-other.css) (min-width: 100px); +@import url(http://example.com/style.css); +@import url(http://example.com/style.css); +@import url(http://example.com/style.css#hash); +@import url(http://example.com/style.css?#hash); +@import url(http://example.com/style.css?foo=bar#hash); +@import url(http://example.com/other-style.css) screen and (orientation:landscape); +@import url(http://example.com/other-style.css) screen and (orientation:landscape); +@import url("//example.com/style.css"); +@import url(~package/test.css); +@import ; +@import foo-bar; +@import-normalize; +@import url('http://') :root {} +@import url('query.css?foo=1&bar=1'); +@import url('other-query.css?foo=1&bar=1#hash'); +@import url('other-query.css?foo=1&bar=1#hash') screen and (orientation:landscape); +@import url('https://fonts.googleapis.com/css?family=Roboto'); +@import url('https://fonts.googleapis.com/css?family=Noto+Sans+TC'); +@import url('https://fonts.googleapis.com/css?family=Noto+Sans+TC|Roboto'); + +.class { + a: b c d; +} + +.foo { + @import 'path.css'; +} + +@import url('./relative.css'); +@import url('../import/top-relative.css'); +@import url(~package/tilde.css); +@import url(~aliasesImport/alias.css); +@import url('./url.css'); + +.background { + background: url(replaced_file_protocol_/webpack/public/path/img.png); +} + +@import url(./test.css); + +@import './te\\ +st.css'; +@import './te\\ +\\ +\\ +st.css'; +@import url('./te\\ +st.css'); +@import url('./te\\ +\\ +\\ +st.css'); + +@import "./te'st.css"; +@import url("./te'st.css"); +@import './te\\'st.css'; +@import url('./te\\'st.css'); +@import './test test.css'; +@import url('./test test.css'); +@import './test\\ test.css'; +@import url('./test\\ test.css'); +@import './test%20test.css'; +@import url('./test%20test.css'); +@import './\\74\\65\\73\\74.css'; +@import url('./\\74\\65\\73\\74.css'); +@import './t\\65\\73\\74.css'; +@import url('./t\\65\\73\\74.css'); +@import url(./test\\ test.css); +@import url(./t\\65st%20test.css); +@import url('./t\\65st%20test.css'); +@import url("./t\\65st%20test.css"); +@import "./t\\65st%20test.css"; +@import './t\\65st%20test.css'; +@import url( test.css ); +@import nourl(test.css); +@import '\\ +\\ +\\ +'; +@import url('!!../../helpers/string-loader.js?esModule=false!~package/tilde.css'); +@import url(test.css?foo=bar); +@import url(test.css?foo=bar#hash); +@import url(test.css?#hash); +@import "test.css" supports(display: flex); +@import "test.css" supports(display: flex) screen and (orientation:landscape); + +/* Should be one import and two css modules */ + +@import url('something.css'); +@import url('something.css'); + +/* Should be one import and two css modules */ + +@import url('something.css?foo=bar'); +@import url('something.css?foo=bar'); + +/* Should be one import and two css modules */ + +@import url('something.css?foo=bar#hash'); +@import url('something.css?foo=bar#hash'); + +/* Should be two import and two css modules */ + +@import url('something.css?foo=bar'); +@import url('something.css?bar=foo'); + +/* Should be two import and two css modules */ + +@import url('something.css?foo=bar#one'); +@import url('something.css?foo=bar#two'); + +/* Should be two import and two css modules */ + +@import url('something.css?foo=1&bar=2'); +@import url('something.css?foo=2&bar=1'); + +@import " ./test.css "; +@import url(' ./test.css '); +@import url( ./test.css ); + +@import "./my.scss"; + +@import url(' https://fonts.googleapis.com/css?family=Roboto '); +@import url('!!../../helpers/string-loader.js?esModule=false!'); +@import url(' !!../../helpers/string-loader.js?esModule=false!~package/tilde.css '); +@import url(data:text/css;charset=utf-8,a%20%7B%0D%0A%20%20color%3A%20red%3B%0D%0A%7D); + +/* Prefer relative */ +@import url(package/first.css); +@import url(package/second.css); + +@import url("./test.css") supports(); +@import url("./test.css") supports(unknown); +@import url("./test.css") supports(display: flex); +@import url("./test.css") supports(display: flex !important); +@import url("./test.css") supports(display: flex) screen and (min-width: 400px); +@import url("./test.css") layer; +@import url("./test.css") layer(default); +@import url("./test.css") layer(default) supports(display: flex) screen and (min-width: 400px); +@import url("./test.css") layer supports(display: flex) screen and (min-width: 400px); +@import url("./test.css") layer() supports(display: flex) screen and (min-width: 400px); +@import url("./test.css") layer(); +@import url("http://example.com/style.css") supports(display: flex) screen and (min-width: 400px); +@import url("./test.css")layer(default)supports(display: flex)screen and (min-width:400px); +@import url("./test.css")screen and (min-width: 400px); +@import url("./test.css") layer( default ) supports( display : flex ) screen and ( min-width : 400px ); +@import url("./test.css") LAYER(DEFAULT) SUPPORTS(DISPLAY: FLEX) SCREEN AND (MIN-WIDTH: 400PX); +@import url("./test.css") /* Comment */ layer(/* Comment */default/* Comment */) /* Comment */ supports(/* Comment */display/* Comment */:/* Comment */ flex/* Comment */)/* Comment */ screen/* Comment */ and/* Comment */ (/* Comment */min-width/* Comment */: /* Comment */400px/* Comment */); +@import url(test.css) /* Comment */; +@import /* Comment */ url(test.css) /* Comment */; +@import url(test.css) /* Comment */ print and (orientation:landscape); +@import /* Comment */ url(test.css) /* Comment */ print and (orientation:landscape); + +@import url("./import-with-media.css") screen and (min-width: 400px); +@import url("./deep-import-with-media.css") (prefers-color-scheme: dark); +@import url("./import-with-supports.css") supports(display: flex); +@import url("./import-with-supports.css") supports(((display: flex))); +@import url("./deep-import-with-supports.css") supports(display: flex); +@import url('./test.css') supports(display: grid); +@import url("./import-with-supports-and-media.css") supports(display: flex) screen and (min-width: 400px); +@import url("./import-deep-with-supports-and-media.css") supports(display: flex) screen and (min-width: 400px); +@import url("./test.css") layer(framework); +@import url("./import-with-layer.css") layer(framework); +@import url("./deep-import-with-layer.css") layer(framework); +@import url("./import-multiple-with-layer.css") layer(default); +@import url("./import-with-layer-unnamed.css") layer(default); +@import url("./import-unnamed-layer.css") layer(base); +@import url("./import-multiple-unnamed-layer.css") layer(base); +@import url("./import-with-layer-and-supports.css") layer(default) supports(display: flex); +@import url("./import-with-layer-and-supports-and-media.css") layer(default) supports(display: flex) screen and (min-width: 400px); +@import url("./deep-layer.css"); + +@import url("./test.css") unknown(default) unknown(display: flex) unknown; +" +`; + +exports[`"import" option should work with a value equal to "false": warnings 1`] = `[]`; + +exports[`"import" option should work with a value equal to "true": errors 1`] = `[]`; + +exports[`"import" option should work with a value equal to "true": module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../src/runtime/api.js"; +import ___CSS_LOADER_AT_RULE_IMPORT_0___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./test.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_1___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./test-media.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_2___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./test-other.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_3___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./node_modules/package/test.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_4___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./query.css?foo=1&bar=1"; +import ___CSS_LOADER_AT_RULE_IMPORT_5___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./other-query.css?foo=1&bar=1#hash"; +import ___CSS_LOADER_AT_RULE_IMPORT_6___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./relative.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_7___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./top-relative.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_8___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./node_modules/package/tilde.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_9___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./alias.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_10___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./url.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_11___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./te'st.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_12___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./test test.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_13___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!!!../../helpers/string-loader.js?esModule=false!./node_modules/package/tilde.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_14___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./test.css?foo=bar"; +import ___CSS_LOADER_AT_RULE_IMPORT_15___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./test.css?foo=bar#hash"; +import ___CSS_LOADER_AT_RULE_IMPORT_16___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./test.css?#hash"; +import ___CSS_LOADER_AT_RULE_IMPORT_17___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./something.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_18___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./something.css?foo=bar"; +import ___CSS_LOADER_AT_RULE_IMPORT_19___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./something.css?foo=bar#hash"; +import ___CSS_LOADER_AT_RULE_IMPORT_20___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./something.css?bar=foo"; +import ___CSS_LOADER_AT_RULE_IMPORT_21___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./something.css?foo=bar#one"; +import ___CSS_LOADER_AT_RULE_IMPORT_22___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./something.css?foo=bar#two"; +import ___CSS_LOADER_AT_RULE_IMPORT_23___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./something.css?foo=1&bar=2"; +import ___CSS_LOADER_AT_RULE_IMPORT_24___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./something.css?foo=2&bar=1"; +import ___CSS_LOADER_AT_RULE_IMPORT_25___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./my.scss"; +import ___CSS_LOADER_AT_RULE_IMPORT_26___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./package/first.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_27___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./node_modules/package/second.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_28___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./import-with-media.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_29___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./deep-import-with-media.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_30___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./import-with-supports.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_31___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./deep-import-with-supports.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_32___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./import-with-supports-and-media.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_33___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./import-deep-with-supports-and-media.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_34___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./import-with-layer.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_35___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./deep-import-with-layer.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_36___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./import-multiple-with-layer.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_37___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./import-with-layer-unnamed.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_38___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./import-unnamed-layer.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_39___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./import-multiple-unnamed-layer.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_40___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./import-with-layer-and-supports.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_41___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./import-with-layer-and-supports-and-media.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_42___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./deep-layer.css"; +import ___CSS_LOADER_GET_URL_IMPORT___ from "../../../src/runtime/getUrl.js"; +var ___CSS_LOADER_URL_IMPORT_0___ = new URL("./img.png", import.meta.url); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "screen and (orientation:landscape)"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "screen and (orientation: landscape)"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "screen and (orientation:landscape)"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "screen and (orientation:landscape)"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_1___, "screen and (orientation:landscape)"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_2___, "(min-width: 100px)"); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(http://example.com/style.css);"]); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(http://example.com/style.css);"]); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(http://example.com/style.css#hash);"]); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(http://example.com/style.css?#hash);"]); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(http://example.com/style.css?foo=bar#hash);"]); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(http://example.com/other-style.css);", "screen and (orientation:landscape)"]); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(http://example.com/other-style.css);", "screen and (orientation:landscape)"]); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(//example.com/style.css);"]); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_3___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_4___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_5___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_5___, "screen and (orientation:landscape)"); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(https://fonts.googleapis.com/css?family=Roboto);"]); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(https://fonts.googleapis.com/css?family=Noto+Sans+TC);"]); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(https://fonts.googleapis.com/css?family=Noto+Sans+TC|Roboto);"]); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_6___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_7___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_8___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_9___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_10___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_11___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_11___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_11___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_11___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_12___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_12___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_12___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_12___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_12___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_12___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_12___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_12___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_12___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_12___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_12___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_12___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_13___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_14___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_15___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_16___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "", false, "display: flex"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "screen and (orientation:landscape)", false, "display: flex"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_17___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_17___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_18___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_18___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_19___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_19___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_18___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_20___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_21___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_22___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_23___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_24___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_25___); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(https://fonts.googleapis.com/css?family=Roboto);"]); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_13___); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(data:text/css;charset=utf-8,a%20%7B%0D%0A%20%20color%3A%20red%3B%0D%0A%7D);"]); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_26___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_27___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "", false, ""); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "", false, "unknown"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "", false, "display: flex"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "", false, "display: flex !important"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "screen and (min-width: 400px)", false, "display: flex"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "", false, undefined, ""); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "", false, undefined, "default"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "screen and (min-width: 400px)", false, "display: flex", "default"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "screen and (min-width: 400px)", false, "display: flex", ""); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "screen and (min-width: 400px)", false, "display: flex", ""); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "", false, undefined, ""); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(http://example.com/style.css);", "screen and (min-width: 400px)", false, "display: flex"]); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "screen and (min-width:400px)", false, "display: flex", "default"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "screen and (min-width: 400px)"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "screen and ( min-width : 400px )", false, "display : flex", "default"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "screen and (min-width: 400px)", false, "display: flex", "default"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "/* comment */ screen/* comment */ and/* comment */ (/* comment */min-width/* comment */: /* comment */400px/* comment */)", false, "/* comment */ /* comment */display/* comment */:/* comment */ flex/* comment */", "/* comment */ /* comment */default/* comment */"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "/* comment */ print and (orientation:landscape)"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "/* comment */ print and (orientation:landscape)"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_28___, "screen and (min-width: 400px)"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_29___, "(prefers-color-scheme: dark)"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_30___, "", false, "display: flex"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_30___, "", false, "((display: flex))"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_31___, "", false, "display: flex"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "", false, "display: grid"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_32___, "screen and (min-width: 400px)", false, "display: flex"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_33___, "screen and (min-width: 400px)", false, "display: flex"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "", false, undefined, "framework"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_34___, "", false, undefined, "framework"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_35___, "", false, undefined, "framework"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_36___, "", false, undefined, "default"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_37___, "", false, undefined, "default"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_38___, "", false, undefined, "base"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_39___, "", false, undefined, "base"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_40___, "", false, "display: flex", "default"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_41___, "screen and (min-width: 400px)", false, "display: flex", "default"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_42___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "unknown(default) unknown(display: flex) unknown"); +var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`@import url(); +@import url(''); +@import url(""); +@import ''; +@import ""; +@import " "; +@import " +"; +@import url(); +@import url(''); +@import url(""); +@import ; +@import foo-bar; +@import-normalize; +@import url('http://') :root {} + +.class { + a: b c d; +} + +.foo { + @import 'path.css'; +} + +.background { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} +@import nourl(test.css); +@import '\\\\ +\\\\ +\\\\ +'; + +/* Should be one import and two css modules */ + +/* Should be one import and two css modules */ + +/* Should be one import and two css modules */ + +/* Should be two import and two css modules */ + +/* Should be two import and two css modules */ + +/* Should be two import and two css modules */ +@import url('!!../../helpers/string-loader.js?esModule=false!'); + +/* Prefer relative */ +\`, ""]); +// Exports +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"import" option should work with a value equal to "true": result 1`] = ` +".test { + a: a; +} +.test { + a: a; +} +.test { + a: a; +} +.test { + a: a; +} +.test { + a: a; +} +.test { + a: a; +} +.test { + a: a; +} +.test { + a: a; +} +.test { + a: a; +} +.test { + a: a; +} +.test { + a: a; +} +@media screen and (orientation:landscape) {.test { + a: a; +} +}@media screen and (orientation: landscape) {.test { + a: a; +} +}@media screen and (orientation:landscape) {.test { + a: a; +} +}@media screen and (orientation:landscape) {.test { + a: a; +} +}@media screen and (orientation:landscape) {@media (min-width: 100px) {a { + b: b; +} +}}@media screen and (orientation:landscape) {.test { + c: c; +} +}@media (min-width: 100px) {.test { + d: d; +} +}@import url(http://example.com/style.css);@import url(http://example.com/style.css);@import url(http://example.com/style.css#hash);@import url(http://example.com/style.css?#hash);@import url(http://example.com/style.css?foo=bar#hash);@media screen and (orientation:landscape) {@import url(http://example.com/other-style.css);}@media screen and (orientation:landscape) {@import url(http://example.com/other-style.css);}@import url(//example.com/style.css);.test { + d: d +} +.query { + e: e; +} +.other-query { + f: f; +} +@media screen and (orientation:landscape) {.other-query { + f: f; +} +}@import url(https://fonts.googleapis.com/css?family=Roboto);@import url(https://fonts.googleapis.com/css?family=Noto+Sans+TC);@import url(https://fonts.googleapis.com/css?family=Noto+Sans+TC|Roboto);.relative { + color: red; +} +.top-relative { + color: black; +} +.tilde { + color: yellow; +} +.alias { + color: red; +} +.background-imported { + background: url(replaced_file_protocol_/webpack/public/path/img.png); +} +.test { + a: a; +} +.test { + a: a; +} +.test { + a: a; +} +.test { + a: a; +} +.test { + a: a; +} +.strange { + color: red; +} +.strange { + color: red; +} +.strange { + color: red; +} +.strange { + color: red; +} +.space { + color: gray; +} +.space { + color: gray; +} +.space { + color: gray; +} +.space { + color: gray; +} +.space { + color: gray; +} +.space { + color: gray; +} +.test { + a: a; +} +.test { + a: a; +} +.test { + a: a; +} +.test { + a: a; +} +.space { + color: gray; +} +.space { + color: gray; +} +.space { + color: gray; +} +.space { + color: gray; +} +.space { + color: gray; +} +.space { + color: gray; +} +.test { + a: a; +} +a { color: red };.test { + a: a; +} +.test { + a: a; +} +.test { + a: a; +} +@supports (display: flex) {.test { + a: a; +} +}@supports (display: flex) {@media screen and (orientation:landscape) {.test { + a: a; +} +}}.my-box { + color: red; +} +.my-box { + color: red; +} +.my-box { + color: red; +} +.my-box { + color: red; +} +.my-box { + color: red; +} +.my-box { + color: red; +} +.my-box { + color: red; +} +.my-box { + color: red; +} +.my-box { + color: red; +} +.my-box { + color: red; +} +.my-box { + color: red; +} +.my-box { + color: red; +} +.test { + a: a; +} +.test { + a: a; +} +.test { + a: a; +} +a { + color: red; +}@import url(https://fonts.googleapis.com/css?family=Roboto);a { color: red };@import url(data:text/css;charset=utf-8,a%20%7B%0D%0A%20%20color%3A%20red%3B%0D%0A%7D);.first { + color: red; +} +.second { + color: red; +} +.test { + a: a; +} +@supports (unknown) {.test { + a: a; +} +}@supports (display: flex) {.test { + a: a; +} +}@supports (display: flex !important) {.test { + a: a; +} +}@supports (display: flex) {@media screen and (min-width: 400px) {.test { + a: a; +} +}}@layer {.test { + a: a; +} +}@layer default {.test { + a: a; +} +}@supports (display: flex) {@media screen and (min-width: 400px) {@layer default {.test { + a: a; +} +}}}@supports (display: flex) {@media screen and (min-width: 400px) {@layer {.test { + a: a; +} +}}}@supports (display: flex) {@media screen and (min-width: 400px) {@layer {.test { + a: a; +} +}}}@layer {.test { + a: a; +} +}@supports (display: flex) {@media screen and (min-width: 400px) {@import url(http://example.com/style.css);}}@supports (display: flex) {@media screen and (min-width:400px) {@layer default {.test { + a: a; +} +}}}@media screen and (min-width: 400px) {.test { + a: a; +} +}@supports (display : flex) {@media screen and ( min-width : 400px ) {@layer default {.test { + a: a; +} +}}}@supports (display: flex) {@media screen and (min-width: 400px) {@layer default {.test { + a: a; +} +}}}@supports (/* comment */ /* comment */display/* comment */:/* comment */ flex/* comment */) {@media /* comment */ screen/* comment */ and/* comment */ (/* comment */min-width/* comment */: /* comment */400px/* comment */) {@layer /* comment */ /* comment */default/* comment */ {.test { + a: a; +} +}}}.test { + a: a; +} +.test { + a: a; +} +@media /* comment */ print and (orientation:landscape) {.test { + a: a; +} +}@media /* comment */ print and (orientation:landscape) {.test { + a: a; +} +}@media screen and (min-width: 400px) {@media screen and (max-width: 1200px) {.test { + a: a; +} +}}@media screen and (min-width: 400px) { +}@media (prefers-color-scheme: dark) {@media screen and (min-width: 400px) {@media screen and (max-width: 1200px) {.test { + a: a; +} +}}}@media (prefers-color-scheme: dark) {@media screen and (min-width: 400px) { +}}@media (prefers-color-scheme: dark) {}@supports (display: flex) {@supports (display: grid) {.test { + a: a; +} +}}@supports (display: flex) {}@supports (((display: flex))) {@supports (display: grid) {.test { + a: a; +} +}}@supports (((display: flex))) {}@supports (display: flex) {@supports (display: block) {@supports (display: grid) {.test { + a: a; +} +}}}@supports (display: flex) {@supports (display: block) {}}@supports (display: flex) {}@supports (display: grid) {.test { + a: a; +} +}@supports (display: flex) {@media screen and (min-width: 400px) {@supports (display: grid) {@media screen and (max-width: 1200px) {.test { + a: a; +} +}}}}@supports (display: flex) {@media screen and (min-width: 400px) {}}@supports (display: flex) {@media screen and (min-width: 400px) {@supports (display: flex) {@media screen and (min-width: 400px) {@supports (display: grid) {@media screen and (max-width: 1200px) {.test { + a: a; +} +}}}}}}@supports (display: flex) {@media screen and (min-width: 400px) {@supports (display: flex) {@media screen and (min-width: 400px) {}}}}@supports (display: flex) {@media screen and (min-width: 400px) {}}@layer framework {.test { + a: a; +} +}@layer framework {@layer base {.test { + a: a; +} +}}@layer framework {@layer base { + .foo { + color: red; + } +} +}@layer framework {@layer form {@layer base {.test { + a: a; +} +}}}@layer framework {@layer form {@layer base { + .foo { + color: red; + } +} +}}@layer framework {@layer form { + .bar { + color: red; + } +} +}@layer default {@layer base {.test { + a: a; +} +}}@layer default {@layer base {.relative { + color: red; +} +}}@layer default {@layer base { + .foo { + color: red; + } +} +}@layer default {@layer {.test { + a: a; +} +}}@layer default {}@layer base {@layer {.test { + a: a; +} +}}@layer base {.foo { + color: red; +} +}@layer base {@layer {.test { + a: a; +} +}}@layer base {@layer {.relative { + color: red; +} +}}@layer base {.foo { + color: red; +} +}@supports (display: flex) {@layer default {@layer base {.test { + a: a; +} +}}}@supports (display: flex) {@layer default {}}@supports (display: flex) {@media screen and (min-width: 400px) {@layer default {@supports (display: grid) {@media screen and (min-width: 900px) {@layer base {.test { + a: a; +} +}}}}}}@supports (display: flex) {@media screen and (min-width: 400px) {@layer default {}}}@layer bootstrap {@layer base {@layer {.relative { + color: red; +} +}}}@layer bootstrap {@layer base {@layer {.test { + a: a; +} +}}}@layer bootstrap {@layer base {/* unnamed wrapper layers around each sub-file */ +}}@layer bootstrap {/* the internal names are hidden from access, subsumed in "base" */}/* Adds additional styles to the bootstrap layer: */ +@layer bootstrap { + .test { + color: red; + } +}@media unknown(default) unknown(display: flex) unknown {.test { + a: a; +} +}@import url(); +@import url(''); +@import url(""); +@import ''; +@import ""; +@import " "; +@import " +"; +@import url(); +@import url(''); +@import url(""); +@import ; +@import foo-bar; +@import-normalize; +@import url('http://') :root {} + +.class { + a: b c d; +} + +.foo { + @import 'path.css'; +} + +.background { + background: url(replaced_file_protocol_/webpack/public/path/img.png); +} +@import nourl(test.css); +@import '\\ +\\ +\\ +'; + +/* Should be one import and two css modules */ + +/* Should be one import and two css modules */ + +/* Should be one import and two css modules */ + +/* Should be two import and two css modules */ + +/* Should be two import and two css modules */ + +/* Should be two import and two css modules */ +@import url('!!../../helpers/string-loader.js?esModule=false!'); + +/* Prefer relative */ +" +`; + +exports[`"import" option should work with a value equal to "true": warnings 1`] = ` +[ + "ModuleWarning: Module Warning (from \`replaced original path\`): +(105:1) from "postcss-import-parser" plugin: Unable to find uri in "@import nourl(test.css)" + +Code: + @import nourl(test.css) +", + "ModuleWarning: Module Warning (from \`replaced original path\`): +(106:1) from "postcss-import-parser" plugin: Unable to find uri in "@import '\\ +\\ +\\ +'" + +Code: + @import '\\ +\\ +\\ +' +", + "ModuleWarning: Module Warning (from \`replaced original path\`): +(12:1) from "postcss-import-parser" plugin: Unable to find uri in "@import url()" + +Code: + @import url() +", + "ModuleWarning: Module Warning (from \`replaced original path\`): +(13:1) from "postcss-import-parser" plugin: Unable to find uri in "@import url('')" + +Code: + @import url('') +", + "ModuleWarning: Module Warning (from \`replaced original path\`): +(14:1) from "postcss-import-parser" plugin: Unable to find uri in "@import url("")" + +Code: + @import url("") +", + "ModuleWarning: Module Warning (from \`replaced original path\`): +(154:1) from "postcss-import-parser" plugin: Unable to find uri in "@import url('!!../../helpers/string-loader.js?esModule=false!')" -(14:1) Unable to find uri in \\"@import url(\\"\\")\\"", +Code: + @import url('!!../../helpers/string-loader.js?esModule=false!') +", "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning +(17:1) from "postcss-import-parser" plugin: Unable to find uri in "@import ''" -(17:1) Unable to find uri in \\"@import ''\\"", +Code: + @import '' +", "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning +(18:1) from "postcss-import-parser" plugin: Unable to find uri in "@import """ -(18:1) Unable to find uri in \\"@import \\"\\"\\"", +Code: + @import "" +", "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning +(19:1) from "postcss-import-parser" plugin: Unable to find uri in "@import " "" -(19:1) Unable to find uri in \\"@import \\" \\"\\"", +Code: + @import " " +", "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning +(20:1) from "postcss-import-parser" plugin: Unable to find uri in "@import " +"" -(20:1) Unable to find uri in \\"@import \\" -\\"\\"", +Code: + @import " +" +", "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning +(22:1) from "postcss-import-parser" plugin: Unable to find uri in "@import url()" -(22:1) Unable to find uri in \\"@import url()\\"", +Code: + @import url() +", "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning +(23:1) from "postcss-import-parser" plugin: Unable to find uri in "@import url('')" -(23:1) Unable to find uri in \\"@import url('')\\"", +Code: + @import url('') +", "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning +(24:1) from "postcss-import-parser" plugin: Unable to find uri in "@import url("")" -(24:1) Unable to find uri in \\"@import url(\\"\\")\\"", +Code: + @import url("") +", "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning +(40:1) from "postcss-import-parser" plugin: Unable to find uri in "@import " -(40:1) Unable to find uri in \\"@import \\"", +Code: + @import +", "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning +(41:1) from "postcss-import-parser" plugin: Unable to find uri in "@import foo-bar" -(41:1) Unable to find uri in \\"@import foo-bar\\"", +Code: + @import foo-bar +", "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning +(43:1) from "postcss-import-parser" plugin: It looks like you didn't end your @import statement correctly. Child nodes are attached to it. -(43:1) It looks like you didn't end your @import statement correctly. Child nodes are attached to it.", +Code: + @import url('http://') :root {} +", ] `; -exports[`"import" option should work with a value equal to "false": errors 1`] = `Array []`; +exports[`"import" option should work with absolute URLs: errors 1`] = `[]`; -exports[`"import" option should work with a value equal to "false": module 1`] = ` +exports[`"import" option should work with absolute URLs: module 1`] = ` "// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../src/runtime/api.js\\"); -var ___CSS_LOADER_GET_URL_IMPORT___ = require(\\"../../../src/runtime/getUrl.js\\"); -var ___CSS_LOADER_URL_IMPORT_0___ = require(\\"./img.png\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../src/runtime/api.js"; +import ___CSS_LOADER_GET_URL_IMPORT___ from "../../../src/runtime/getUrl.js"; +var ___CSS_LOADER_URL_IMPORT_0___ = new URL("https://raw.githubusercontent.com/webpack-contrib/css-loader/master/test/fixtures/url/img.png", import.meta.url); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(https://raw.githubusercontent.com/webpack-contrib/css-loader/master/test/fixtures/url/imported.css);"]); var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); // Module -exports.push([module.id, \\"@import url(test.css);\\\\n@import url('test.css');\\\\n@import url(\\\\\\"test.css\\\\\\");\\\\n@IMPORT url(test.css);\\\\n@import URL(test.css);\\\\n@import url(test.css );\\\\n@import url( test.css);\\\\n@import url( test.css );\\\\n@import url(\\\\n test.css\\\\n);\\\\n@import url();\\\\n@import url('');\\\\n@import url(\\\\\\"\\\\\\");\\\\n@import \\\\\\"test.css\\\\\\";\\\\n@import 'test.css';\\\\n@import '';\\\\n@import \\\\\\"\\\\\\";\\\\n@import \\\\\\" \\\\\\";\\\\n@import \\\\\\"\\\\n\\\\\\";\\\\n@import url();\\\\n@import url('');\\\\n@import url(\\\\\\"\\\\\\");\\\\n@import url(test.css) screen and (orientation:landscape);\\\\n@import url(test.css) SCREEN AND (ORIENTATION: LANDSCAPE);\\\\n@import url(test.css)screen and (orientation:landscape);\\\\n@import url(test.css) screen and (orientation:landscape);\\\\n@import url(test-media.css) screen and (orientation:landscape);\\\\n@import url(test-other.css) (min-width: 100px);\\\\n@import url(http://example.com/style.css);\\\\n@import url(http://example.com/style.css);\\\\n@import url(http://example.com/style.css#hash);\\\\n@import url(http://example.com/style.css?#hash);\\\\n@import url(http://example.com/style.css?foo=bar#hash);\\\\n@import url(http://example.com/other-style.css) screen and (orientation:landscape);\\\\n@import url(http://example.com/other-style.css) screen and (orientation:landscape);\\\\n@import url(\\\\\\"//example.com/style.css\\\\\\");\\\\n@import url(~package/test.css);\\\\n@import ;\\\\n@import foo-bar;\\\\n@import-normalize;\\\\n@import url('http://') :root {}\\\\n@import url('query.css?foo=1&bar=1');\\\\n@import url('other-query.css?foo=1&bar=1#hash');\\\\n@import url('other-query.css?foo=1&bar=1#hash') screen and (orientation:landscape);\\\\n@import url('https://fonts.googleapis.com/css?family=Roboto');\\\\n@import url('https://fonts.googleapis.com/css?family=Noto+Sans+TC');\\\\n@import url('https://fonts.googleapis.com/css?family=Noto+Sans+TC|Roboto');\\\\n\\\\n.class {\\\\n a: b c d;\\\\n}\\\\n\\\\n.foo {\\\\n @import 'path.css';\\\\n}\\\\n\\\\n@import url('./relative.css');\\\\n@import url('../import/top-relative.css');\\\\n@import url(~package/tilde.css);\\\\n@import url(~aliasesImport/alias.css);\\\\n@import url('./url.css');\\\\n\\\\n.background {\\\\n background: url(\\" + ___CSS_LOADER_URL_REPLACEMENT_0___ + \\");\\\\n}\\\\n\\\\n@import url(./test.css);\\\\n\\\\n@import './te\\\\\\\\\\\\nst.css';\\\\n@import './te\\\\\\\\\\\\n\\\\\\\\\\\\n\\\\\\\\\\\\nst.css';\\\\n@import url('./te\\\\\\\\\\\\nst.css');\\\\n@import url('./te\\\\\\\\\\\\n\\\\\\\\\\\\n\\\\\\\\\\\\nst.css');\\\\n\\\\n@import \\\\\\"./te'st.css\\\\\\";\\\\n@import url(\\\\\\"./te'st.css\\\\\\");\\\\n@import './te\\\\\\\\'st.css';\\\\n@import url('./te\\\\\\\\'st.css');\\\\n@import './test test.css';\\\\n@import url('./test test.css');\\\\n@import './test\\\\\\\\ test.css';\\\\n@import url('./test\\\\\\\\ test.css');\\\\n@import './test%20test.css';\\\\n@import url('./test%20test.css');\\\\n@import './\\\\\\\\74\\\\\\\\65\\\\\\\\73\\\\\\\\74.css';\\\\n@import url('./\\\\\\\\74\\\\\\\\65\\\\\\\\73\\\\\\\\74.css');\\\\n@import './t\\\\\\\\65\\\\\\\\73\\\\\\\\74.css';\\\\n@import url('./t\\\\\\\\65\\\\\\\\73\\\\\\\\74.css');\\\\n@import url(./test\\\\\\\\ test.css);\\\\n@import url(./t\\\\\\\\65st%20test.css);\\\\n@import url('./t\\\\\\\\65st%20test.css');\\\\n@import url(\\\\\\"./t\\\\\\\\65st%20test.css\\\\\\");\\\\n@import \\\\\\"./t\\\\\\\\65st%20test.css\\\\\\";\\\\n@import './t\\\\\\\\65st%20test.css';\\\\n@import url( test.css );\\\\n@import nourl(test.css);\\\\n/* TODO need fix */\\\\n/*@import '\\\\\\\\*/\\\\n/*\\\\\\\\*/\\\\n/*\\\\\\\\*/\\\\n/*';*/\\\\n\\", \\"\\"]); +___CSS_LOADER_EXPORT___.push([module.id, \`a { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} +\`, ""]); // Exports -module.exports = exports; +export default ___CSS_LOADER_EXPORT___; " `; -exports[`"import" option should work with a value equal to "false": result 1`] = ` -Array [ - Array [ - "./import/import.css", - "@import url(test.css); +exports[`"import" option should work with absolute URLs: result 1`] = ` +[ + [ + "./import/absolute-url.css", + "@import url(https://raw.githubusercontent.com/webpack-contrib/css-loader/master/test/fixtures/url/imported.css);", + ], + [ + "./import/absolute-url.css", + "a { + background: url(replaced_file_protocol_/webpack/public/path/img.png); +} +", + "", + ], +] +`; + +exports[`"import" option should work with absolute URLs: warnings 1`] = `[]`; + +exports[`"import" option should work with circular \`@import\`: errors 1`] = `[]`; + +exports[`"import" option should work with circular \`@import\`: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../src/runtime/api.js"; +import ___CSS_LOADER_AT_RULE_IMPORT_0___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./relative.css"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`/* + // TODO fixed nested circular \\\`@import\\\` + @import url(circular-nested.css); +*/ + +a { + color: red; +} +\`, ""]); +// Exports +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"import" option should work with circular \`@import\`: result 1`] = ` +".relative { + color: red; +} +/* + // TODO fixed nested circular \`@import\` + @import url(circular-nested.css); +*/ + +a { + color: red; +} +" +`; + +exports[`"import" option should work with circular \`@import\`: warnings 1`] = `[]`; + +exports[`"import" option should work with data URI: errors 1`] = `[]`; + +exports[`"import" option should work with data URI: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../src/runtime/api.js"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(data:text/css;charset=utf-8;base64,YSB7DQogIGNvbG9yOiByZWQ7DQp9);"]); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`a { + display: block; + width: 100px; +} +\`, ""]); +// Exports +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"import" option should work with data URI: result 1`] = ` +[ + [ + "./import/data-uri.css", + "@import url(data:text/css;charset=utf-8;base64,YSB7DQogIGNvbG9yOiByZWQ7DQp9);", + ], + [ + "./import/data-uri.css", + "a { + display: block; + width: 100px; +} +", + "", + ], +] +`; + +exports[`"import" option should work with data URI: warnings 1`] = `[]`; + +exports[`"import" option should work with import.filter: errors 1`] = `[]`; + +exports[`"import" option should work with import.filter: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../src/runtime/api.js"; +import ___CSS_LOADER_AT_RULE_IMPORT_0___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./test-media.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_1___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./test-other.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_2___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./query.css?foo=1&bar=1"; +import ___CSS_LOADER_AT_RULE_IMPORT_3___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./other-query.css?foo=1&bar=1#hash"; +import ___CSS_LOADER_AT_RULE_IMPORT_4___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./relative.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_5___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./top-relative.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_6___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./node_modules/package/tilde.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_7___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./alias.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_8___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./url.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_9___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./te'st.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_10___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!!!../../helpers/string-loader.js?esModule=false!./node_modules/package/tilde.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_11___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./something.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_12___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./something.css?foo=bar"; +import ___CSS_LOADER_AT_RULE_IMPORT_13___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./something.css?foo=bar#hash"; +import ___CSS_LOADER_AT_RULE_IMPORT_14___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./something.css?bar=foo"; +import ___CSS_LOADER_AT_RULE_IMPORT_15___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./something.css?foo=bar#one"; +import ___CSS_LOADER_AT_RULE_IMPORT_16___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./something.css?foo=bar#two"; +import ___CSS_LOADER_AT_RULE_IMPORT_17___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./something.css?foo=1&bar=2"; +import ___CSS_LOADER_AT_RULE_IMPORT_18___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./something.css?foo=2&bar=1"; +import ___CSS_LOADER_AT_RULE_IMPORT_19___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./my.scss"; +import ___CSS_LOADER_AT_RULE_IMPORT_20___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./package/first.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_21___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./node_modules/package/second.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_22___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./import-with-media.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_23___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./deep-import-with-media.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_24___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./import-with-supports.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_25___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./deep-import-with-supports.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_26___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./import-with-supports-and-media.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_27___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./import-deep-with-supports-and-media.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_28___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./import-with-layer.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_29___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./deep-import-with-layer.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_30___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./import-multiple-with-layer.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_31___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./import-with-layer-unnamed.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_32___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./import-unnamed-layer.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_33___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./import-multiple-unnamed-layer.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_34___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./import-with-layer-and-supports.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_35___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./import-with-layer-and-supports-and-media.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_36___ from "-!../../../src/index.js??ruleSet[1].rules[0].use[0]!./deep-layer.css"; +import ___CSS_LOADER_GET_URL_IMPORT___ from "../../../src/runtime/getUrl.js"; +var ___CSS_LOADER_URL_IMPORT_0___ = new URL("./img.png", import.meta.url); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "screen and (orientation:landscape)"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_1___, "(min-width: 100px)"); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(http://example.com/style.css);"]); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(http://example.com/style.css);"]); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(http://example.com/style.css#hash);"]); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(http://example.com/style.css?#hash);"]); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(http://example.com/style.css?foo=bar#hash);"]); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(http://example.com/other-style.css);", "screen and (orientation:landscape)"]); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(http://example.com/other-style.css);", "screen and (orientation:landscape)"]); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(//example.com/style.css);"]); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_2___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_3___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_3___, "screen and (orientation:landscape)"); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(https://fonts.googleapis.com/css?family=Roboto);"]); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(https://fonts.googleapis.com/css?family=Noto+Sans+TC);"]); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(https://fonts.googleapis.com/css?family=Noto+Sans+TC|Roboto);"]); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_4___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_5___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_6___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_7___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_8___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_9___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_9___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_9___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_9___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_10___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_11___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_11___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_12___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_12___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_13___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_13___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_12___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_14___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_15___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_16___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_17___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_18___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_19___); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(https://fonts.googleapis.com/css?family=Roboto);"]); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_10___); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(data:text/css;charset=utf-8,a%20%7B%0D%0A%20%20color%3A%20red%3B%0D%0A%7D);"]); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_20___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_21___); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(http://example.com/style.css);", "screen and (min-width: 400px)", false, "display: flex"]); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_22___, "screen and (min-width: 400px)"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_23___, "(prefers-color-scheme: dark)"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_24___, "", false, "display: flex"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_24___, "", false, "((display: flex))"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_25___, "", false, "display: flex"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_26___, "screen and (min-width: 400px)", false, "display: flex"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_27___, "screen and (min-width: 400px)", false, "display: flex"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_28___, "", false, undefined, "framework"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_29___, "", false, undefined, "framework"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_30___, "", false, undefined, "default"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_31___, "", false, undefined, "default"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_32___, "", false, undefined, "base"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_33___, "", false, undefined, "base"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_34___, "", false, "display: flex", "default"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_35___, "screen and (min-width: 400px)", false, "display: flex", "default"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_36___); +var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`@import url(test.css); @import url('test.css'); -@import url(\\"test.css\\"); +@import url("test.css"); @IMPORT url(test.css); @import URL(test.css); @import url(test.css ); @@ -1224,42 +3973,26 @@ Array [ ); @import url(); @import url(''); -@import url(\\"\\"); -@import \\"test.css\\"; +@import url(""); +@import "test.css"; @import 'test.css'; @import ''; -@import \\"\\"; -@import \\" \\"; -@import \\" -\\"; +@import ""; +@import " "; +@import " +"; @import url(); @import url(''); -@import url(\\"\\"); +@import url(""); @import url(test.css) screen and (orientation:landscape); @import url(test.css) SCREEN AND (ORIENTATION: LANDSCAPE); @import url(test.css)screen and (orientation:landscape); @import url(test.css) screen and (orientation:landscape); -@import url(test-media.css) screen and (orientation:landscape); -@import url(test-other.css) (min-width: 100px); -@import url(http://example.com/style.css); -@import url(http://example.com/style.css); -@import url(http://example.com/style.css#hash); -@import url(http://example.com/style.css?#hash); -@import url(http://example.com/style.css?foo=bar#hash); -@import url(http://example.com/other-style.css) screen and (orientation:landscape); -@import url(http://example.com/other-style.css) screen and (orientation:landscape); -@import url(\\"//example.com/style.css\\"); @import url(~package/test.css); @import ; @import foo-bar; @import-normalize; @import url('http://') :root {} -@import url('query.css?foo=1&bar=1'); -@import url('other-query.css?foo=1&bar=1#hash'); -@import url('other-query.css?foo=1&bar=1#hash') screen and (orientation:landscape); -@import url('https://fonts.googleapis.com/css?family=Roboto'); -@import url('https://fonts.googleapis.com/css?family=Noto+Sans+TC'); -@import url('https://fonts.googleapis.com/css?family=Noto+Sans+TC|Roboto'); .class { a: b c d; @@ -1269,14 +4002,8 @@ Array [ @import 'path.css'; } -@import url('./relative.css'); -@import url('../import/top-relative.css'); -@import url(~package/tilde.css); -@import url(~aliasesImport/alias.css); -@import url('./url.css'); - .background { - background: url(/webpack/public/path/img.png); + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); } @import url(./test.css); @@ -1293,11 +4020,6 @@ st.css'); \\\\ \\\\ st.css'); - -@import \\"./te'st.css\\"; -@import url(\\"./te'st.css\\"); -@import './te\\\\'st.css'; -@import url('./te\\\\'st.css'); @import './test test.css'; @import url('./test test.css'); @import './test\\\\ test.css'; @@ -1311,601 +4033,243 @@ st.css'); @import url(./test\\\\ test.css); @import url(./t\\\\65st%20test.css); @import url('./t\\\\65st%20test.css'); -@import url(\\"./t\\\\65st%20test.css\\"); -@import \\"./t\\\\65st%20test.css\\"; +@import url("./t\\\\65st%20test.css"); +@import "./t\\\\65st%20test.css"; @import './t\\\\65st%20test.css'; @import url( test.css ); @import nourl(test.css); -/* TODO need fix */ -/*@import '\\\\*/ -/*\\\\*/ -/*\\\\*/ -/*';*/ -", - "", - ], -] -`; +@import '\\\\ +\\\\ +\\\\ +'; +@import url(test.css?foo=bar); +@import url(test.css?foo=bar#hash); +@import url(test.css?#hash); +@import "test.css" supports(display: flex); +@import "test.css" supports(display: flex) screen and (orientation:landscape); -exports[`"import" option should work with a value equal to "false": warnings 1`] = `Array []`; +/* Should be one import and two css modules */ -exports[`"import" option should work with a value equal to "true": errors 1`] = `Array []`; +/* Should be one import and two css modules */ -exports[`"import" option should work with a value equal to "true": module 1`] = ` -"// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../src/runtime/api.js\\"); -var ___CSS_LOADER_AT_RULE_IMPORT_0___ = require(\\"-!../../../src/index.js??[ident]!./test.css\\"); -var ___CSS_LOADER_AT_RULE_IMPORT_1___ = require(\\"-!../../../src/index.js??[ident]!./test-media.css\\"); -var ___CSS_LOADER_AT_RULE_IMPORT_2___ = require(\\"-!../../../src/index.js??[ident]!./test-other.css\\"); -var ___CSS_LOADER_AT_RULE_IMPORT_3___ = require(\\"-!../../../src/index.js??[ident]!package/test.css\\"); -var ___CSS_LOADER_AT_RULE_IMPORT_4___ = require(\\"-!../../../src/index.js??[ident]!./query.css?foo=1&bar=1\\"); -var ___CSS_LOADER_AT_RULE_IMPORT_5___ = require(\\"-!../../../src/index.js??[ident]!./other-query.css?foo=1&bar=1#hash\\"); -var ___CSS_LOADER_AT_RULE_IMPORT_6___ = require(\\"-!../../../src/index.js??[ident]!./relative.css\\"); -var ___CSS_LOADER_AT_RULE_IMPORT_7___ = require(\\"-!../../../src/index.js??[ident]!../import/top-relative.css\\"); -var ___CSS_LOADER_AT_RULE_IMPORT_8___ = require(\\"-!../../../src/index.js??[ident]!package/tilde.css\\"); -var ___CSS_LOADER_AT_RULE_IMPORT_9___ = require(\\"-!../../../src/index.js??[ident]!aliasesImport/alias.css\\"); -var ___CSS_LOADER_AT_RULE_IMPORT_10___ = require(\\"-!../../../src/index.js??[ident]!./url.css\\"); -var ___CSS_LOADER_AT_RULE_IMPORT_11___ = require(\\"-!../../../src/index.js??[ident]!./te'st.css\\"); -var ___CSS_LOADER_AT_RULE_IMPORT_12___ = require(\\"-!../../../src/index.js??[ident]!./test test.css\\"); -var ___CSS_LOADER_GET_URL_IMPORT___ = require(\\"../../../src/runtime/getUrl.js\\"); -var ___CSS_LOADER_URL_IMPORT_0___ = require(\\"./img.png\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___, \\"screen and (orientation:landscape)\\"); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___, \\"screen and (orientation: landscape)\\"); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___, \\"screen and (orientation:landscape)\\"); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___, \\"screen and (orientation:landscape)\\"); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_1___, \\"screen and (orientation:landscape)\\"); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_2___, \\"(min-width: 100px)\\"); -exports.push([module.id, \\"@import url(http://example.com/style.css);\\"]); -exports.push([module.id, \\"@import url(http://example.com/style.css);\\"]); -exports.push([module.id, \\"@import url(http://example.com/style.css#hash);\\"]); -exports.push([module.id, \\"@import url(http://example.com/style.css?#hash);\\"]); -exports.push([module.id, \\"@import url(http://example.com/style.css?foo=bar#hash);\\"]); -exports.push([module.id, \\"@import url(http://example.com/other-style.css);\\", \\"screen and (orientation:landscape)\\"]); -exports.push([module.id, \\"@import url(http://example.com/other-style.css);\\", \\"screen and (orientation:landscape)\\"]); -exports.push([module.id, \\"@import url(//example.com/style.css);\\"]); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_3___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_4___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_5___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_5___, \\"screen and (orientation:landscape)\\"); -exports.push([module.id, \\"@import url(https://fonts.googleapis.com/css?family=Roboto);\\"]); -exports.push([module.id, \\"@import url(https://fonts.googleapis.com/css?family=Noto+Sans+TC);\\"]); -exports.push([module.id, \\"@import url(https://fonts.googleapis.com/css?family=Noto+Sans+TC|Roboto);\\"]); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_6___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_7___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_8___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_9___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_10___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_11___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_11___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_11___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_11___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_12___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_12___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_12___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_12___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_12___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_12___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_12___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_12___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_12___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_12___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_12___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_12___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___); -var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); -// Module -exports.push([module.id, \\"@import url();\\\\n@import url('');\\\\n@import url(\\\\\\"\\\\\\");\\\\n@import '';\\\\n@import \\\\\\"\\\\\\";\\\\n@import \\\\\\" \\\\\\";\\\\n@import \\\\\\"\\\\n\\\\\\";\\\\n@import url();\\\\n@import url('');\\\\n@import url(\\\\\\"\\\\\\");\\\\n@import ;\\\\n@import foo-bar;\\\\n@import-normalize;\\\\n@import url('http://') :root {}\\\\n\\\\n.class {\\\\n a: b c d;\\\\n}\\\\n\\\\n.foo {\\\\n @import 'path.css';\\\\n}\\\\n\\\\n.background {\\\\n background: url(\\" + ___CSS_LOADER_URL_REPLACEMENT_0___ + \\");\\\\n}\\\\n@import nourl(test.css);\\\\n/* TODO need fix */\\\\n/*@import '\\\\\\\\*/\\\\n/*\\\\\\\\*/\\\\n/*\\\\\\\\*/\\\\n/*';*/\\\\n\\", \\"\\"]); +/* Should be one import and two css modules */ + +/* Should be two import and two css modules */ + +/* Should be two import and two css modules */ + +/* Should be two import and two css modules */ + +@import " ./test.css "; +@import url(' ./test.css '); +@import url( ./test.css ); +@import url('!!../../helpers/string-loader.js?esModule=false!'); + +/* Prefer relative */ + +@import url("./test.css") supports(); +@import url("./test.css") supports(unknown); +@import url("./test.css") supports(display: flex); +@import url("./test.css") supports(display: flex !important); +@import url("./test.css") supports(display: flex) screen and (min-width: 400px); +@import url("./test.css") layer; +@import url("./test.css") layer(default); +@import url("./test.css") layer(default) supports(display: flex) screen and (min-width: 400px); +@import url("./test.css") layer supports(display: flex) screen and (min-width: 400px); +@import url("./test.css") layer() supports(display: flex) screen and (min-width: 400px); +@import url("./test.css") layer(); +@import url("./test.css")layer(default)supports(display: flex)screen and (min-width:400px); +@import url("./test.css")screen and (min-width: 400px); +@import url("./test.css") layer( default ) supports( display : flex ) screen and ( min-width : 400px ); +@import url("./test.css") LAYER(DEFAULT) SUPPORTS(DISPLAY: FLEX) SCREEN AND (MIN-WIDTH: 400PX); +@import url("./test.css") /* Comment */ layer(/* Comment */default/* Comment */) /* Comment */ supports(/* Comment */display/* Comment */:/* Comment */ flex/* Comment */)/* Comment */ screen/* Comment */ and/* Comment */ (/* Comment */min-width/* Comment */: /* Comment */400px/* Comment */); +@import url(test.css) /* Comment */; +@import /* Comment */ url(test.css) /* Comment */; +@import url(test.css) /* Comment */ print and (orientation:landscape); +@import /* Comment */ url(test.css) /* Comment */ print and (orientation:landscape); +@import url('./test.css') supports(display: grid); +@import url("./test.css") layer(framework); + +@import url("./test.css") unknown(default) unknown(display: flex) unknown; +\`, ""]); // Exports -module.exports = exports; +export default ___CSS_LOADER_EXPORT___; " `; -exports[`"import" option should work with a value equal to "true": result 1`] = ` -Array [ - Array [ - "../../src/index.js?[ident]!./import/test.css", - ".test { - a: a; -} -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test.css", - ".test { - a: a; -} -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test.css", - ".test { - a: a; -} -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test.css", - ".test { - a: a; -} -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test.css", - ".test { - a: a; -} -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test.css", - ".test { - a: a; -} -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test.css", - ".test { - a: a; -} -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test.css", - ".test { - a: a; -} -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test.css", - ".test { - a: a; -} -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test.css", - ".test { - a: a; -} -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test.css", - ".test { - a: a; -} -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test.css", - ".test { - a: a; -} -", - "screen and (orientation:landscape)", - ], - Array [ - "../../src/index.js?[ident]!./import/test.css", - ".test { - a: a; -} -", - "screen and (orientation: landscape)", - ], - Array [ - "../../src/index.js?[ident]!./import/test.css", - ".test { - a: a; -} -", - "screen and (orientation:landscape)", - ], - Array [ - "../../src/index.js?[ident]!./import/test.css", - ".test { - a: a; -} -", - "screen and (orientation:landscape)", - ], - Array [ - "../../src/index.js?[ident]!./import/test-nested-media.css", - "a { +exports[`"import" option should work with import.filter: result 1`] = ` +"@media screen and (orientation:landscape) {@media (min-width: 100px) {a { b: b; } -", - "screen and (orientation:landscape) and (min-width: 100px)", - ], - Array [ - "../../src/index.js?[ident]!./import/test-media.css", - ".test { +}}@media screen and (orientation:landscape) {.test { c: c; } -", - "screen and (orientation:landscape)", - ], - Array [ - "../../src/index.js?[ident]!./import/test-other.css", - ".test { +}@media (min-width: 100px) {.test { d: d; } -", - "(min-width: 100px)", - ], - Array [ - "./import/import.css", - "@import url(http://example.com/style.css);", - ], - Array [ - "./import/import.css", - "@import url(http://example.com/style.css);", - ], - Array [ - "./import/import.css", - "@import url(http://example.com/style.css#hash);", - ], - Array [ - "./import/import.css", - "@import url(http://example.com/style.css?#hash);", - ], - Array [ - "./import/import.css", - "@import url(http://example.com/style.css?foo=bar#hash);", - ], - Array [ - "./import/import.css", - "@import url(http://example.com/other-style.css);", - "screen and (orientation:landscape)", - ], - Array [ - "./import/import.css", - "@import url(http://example.com/other-style.css);", - "screen and (orientation:landscape)", - ], - Array [ - "./import/import.css", - "@import url(//example.com/style.css);", - ], - Array [ - "../../src/index.js?[ident]!./import/node_modules/package/test.css", - ".test { - d: d -} -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/query.css?foo=1&bar=1", - ".query { +}@import url(http://example.com/style.css);@import url(http://example.com/style.css);@import url(http://example.com/style.css#hash);@import url(http://example.com/style.css?#hash);@import url(http://example.com/style.css?foo=bar#hash);@media screen and (orientation:landscape) {@import url(http://example.com/other-style.css);}@media screen and (orientation:landscape) {@import url(http://example.com/other-style.css);}@import url(//example.com/style.css);.query { e: e; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/other-query.css?foo=1&bar=1#hash", - ".other-query { +.other-query { f: f; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/other-query.css?foo=1&bar=1#hash", - ".other-query { +@media screen and (orientation:landscape) {.other-query { f: f; } -", - "screen and (orientation:landscape)", - ], - Array [ - "./import/import.css", - "@import url(https://fonts.googleapis.com/css?family=Roboto);", - ], - Array [ - "./import/import.css", - "@import url(https://fonts.googleapis.com/css?family=Noto+Sans+TC);", - ], - Array [ - "./import/import.css", - "@import url(https://fonts.googleapis.com/css?family=Noto+Sans+TC|Roboto);", - ], - Array [ - "../../src/index.js?[ident]!./import/relative.css", - ".relative { +}@import url(https://fonts.googleapis.com/css?family=Roboto);@import url(https://fonts.googleapis.com/css?family=Noto+Sans+TC);@import url(https://fonts.googleapis.com/css?family=Noto+Sans+TC|Roboto);.relative { color: red; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/top-relative.css", - ".top-relative { +.top-relative { color: black; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/node_modules/package/tilde.css", - ".tilde { +.tilde { color: yellow; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/alias.css", - ".alias { +.alias { color: red; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/url.css", - ".background-imported { - background: url(/webpack/public/path/img.png); +.background-imported { + background: url(replaced_file_protocol_/webpack/public/path/img.png); } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test.css", - ".test { - a: a; +.strange { + color: red; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test.css", - ".test { - a: a; +.strange { + color: red; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test.css", - ".test { - a: a; +.strange { + color: red; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test.css", - ".test { - a: a; +.strange { + color: red; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test.css", - ".test { - a: a; +a { color: red };.my-box { + color: red; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/te'st.css", - ".strange { +.my-box { color: red; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/te'st.css", - ".strange { +.my-box { color: red; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/te'st.css", - ".strange { +.my-box { color: red; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/te'st.css", - ".strange { +.my-box { color: red; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test test.css", - ".space { - color: gray; +.my-box { + color: red; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test test.css", - ".space { - color: gray; +.my-box { + color: red; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test test.css", - ".space { - color: gray; +.my-box { + color: red; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test test.css", - ".space { - color: gray; +.my-box { + color: red; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test test.css", - ".space { - color: gray; +.my-box { + color: red; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test test.css", - ".space { - color: gray; +.my-box { + color: red; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test.css", - ".test { - a: a; +.my-box { + color: red; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test.css", - ".test { - a: a; +a { + color: red; +}@import url(https://fonts.googleapis.com/css?family=Roboto);a { color: red };@import url(data:text/css;charset=utf-8,a%20%7B%0D%0A%20%20color%3A%20red%3B%0D%0A%7D);.first { + color: red; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test.css", - ".test { - a: a; +.second { + color: red; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test.css", - ".test { - a: a; +@supports (display: flex) {@media screen and (min-width: 400px) {@import url(http://example.com/style.css);}}@media screen and (min-width: 400px) {@import url('./test.css') screen and (max-width: 1200px); +}@media (prefers-color-scheme: dark) {@media screen and (min-width: 400px) {@import url('./test.css') screen and (max-width: 1200px); +}}@media (prefers-color-scheme: dark) {}@supports (display: flex) {@import url('./test.css') supports(display: grid);}@supports (((display: flex))) {@import url('./test.css') supports(display: grid);}@supports (display: flex) {@supports (display: block) {@import url('./test.css') supports(display: grid);}}@supports (display: flex) {}@supports (display: flex) {@media screen and (min-width: 400px) {@import url('./test.css') supports(display: grid) screen and (max-width: 1200px);}}@supports (display: flex) {@media screen and (min-width: 400px) {@supports (display: flex) {@media screen and (min-width: 400px) {@import url('./test.css') supports(display: grid) screen and (max-width: 1200px);}}}}@supports (display: flex) {@media screen and (min-width: 400px) {}}@layer framework {@import url('./test.css') layer(base); + +@layer base { + .foo { + color: red; + } } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test test.css", - ".space { - color: gray; +}@layer framework {@layer form {@import url('./test.css') layer(base); + +@layer base { + .foo { + color: red; + } } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test test.css", - ".space { - color: gray; +}}@layer framework {@layer form { + .bar { + color: red; + } } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test test.css", - ".space { - color: gray; +}@layer default {@layer base {.relative { + color: red; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test test.css", - ".space { - color: gray; +}}@layer default {@import url('./test.css') layer(base); + +@layer base { + .foo { + color: red; + } } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test test.css", - ".space { - color: gray; +}@layer default {@import url('./test.css') layer;}@layer base {@import url("./test.css") layer; + +.foo { + color: red; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test test.css", - ".space { - color: gray; +}@layer base {@layer {.relative { + color: red; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./import/test.css", - ".test { - a: a; +}}@layer base {@import url("./test.css") layer; + +.foo { + color: red; } -", - "", - ], - Array [ - "./import/import.css", - "@import url(); +}@supports (display: flex) {@layer default {@import url('./test.css') layer(base);}}@supports (display: flex) {@media screen and (min-width: 400px) {@layer default {@import url("./test.css") layer(base) supports(display: grid) screen and (min-width: 900px);}}}@layer bootstrap {@layer base {@layer {.relative { + color: red; +} +}}}@layer bootstrap {@layer base {/* unnamed wrapper layers around each sub-file */ +@import url("./test.css") layer; +}}@layer bootstrap {/* the internal names are hidden from access, subsumed in "base" */}/* Adds additional styles to the bootstrap layer: */ +@layer bootstrap { + .test { + color: red; + } +}@import url(test.css); +@import url('test.css'); +@import url("test.css"); +@IMPORT url(test.css); +@import URL(test.css); +@import url(test.css ); +@import url( test.css); +@import url( test.css ); +@import url( + test.css +); +@import url(); @import url(''); -@import url(\\"\\"); +@import url(""); +@import "test.css"; +@import 'test.css'; @import ''; -@import \\"\\"; -@import \\" \\"; -@import \\" -\\"; +@import ""; +@import " "; +@import " +"; @import url(); @import url(''); -@import url(\\"\\"); +@import url(""); +@import url(test.css) screen and (orientation:landscape); +@import url(test.css) SCREEN AND (ORIENTATION: LANDSCAPE); +@import url(test.css)screen and (orientation:landscape); +@import url(test.css) screen and (orientation:landscape); +@import url(~package/test.css); @import ; @import foo-bar; @import-normalize; @@ -1920,78 +4284,202 @@ Array [ } .background { - background: url(/webpack/public/path/img.png); + background: url(replaced_file_protocol_/webpack/public/path/img.png); } + +@import url(./test.css); + +@import './te\\ +st.css'; +@import './te\\ +\\ +\\ +st.css'; +@import url('./te\\ +st.css'); +@import url('./te\\ +\\ +\\ +st.css'); +@import './test test.css'; +@import url('./test test.css'); +@import './test\\ test.css'; +@import url('./test\\ test.css'); +@import './test%20test.css'; +@import url('./test%20test.css'); +@import './\\74\\65\\73\\74.css'; +@import url('./\\74\\65\\73\\74.css'); +@import './t\\65\\73\\74.css'; +@import url('./t\\65\\73\\74.css'); +@import url(./test\\ test.css); +@import url(./t\\65st%20test.css); +@import url('./t\\65st%20test.css'); +@import url("./t\\65st%20test.css"); +@import "./t\\65st%20test.css"; +@import './t\\65st%20test.css'; +@import url( test.css ); @import nourl(test.css); -/* TODO need fix */ -/*@import '\\\\*/ -/*\\\\*/ -/*\\\\*/ -/*';*/ -", - "", - ], -] +@import '\\ +\\ +\\ +'; +@import url(test.css?foo=bar); +@import url(test.css?foo=bar#hash); +@import url(test.css?#hash); +@import "test.css" supports(display: flex); +@import "test.css" supports(display: flex) screen and (orientation:landscape); + +/* Should be one import and two css modules */ + +/* Should be one import and two css modules */ + +/* Should be one import and two css modules */ + +/* Should be two import and two css modules */ + +/* Should be two import and two css modules */ + +/* Should be two import and two css modules */ + +@import " ./test.css "; +@import url(' ./test.css '); +@import url( ./test.css ); +@import url('!!../../helpers/string-loader.js?esModule=false!'); + +/* Prefer relative */ + +@import url("./test.css") supports(); +@import url("./test.css") supports(unknown); +@import url("./test.css") supports(display: flex); +@import url("./test.css") supports(display: flex !important); +@import url("./test.css") supports(display: flex) screen and (min-width: 400px); +@import url("./test.css") layer; +@import url("./test.css") layer(default); +@import url("./test.css") layer(default) supports(display: flex) screen and (min-width: 400px); +@import url("./test.css") layer supports(display: flex) screen and (min-width: 400px); +@import url("./test.css") layer() supports(display: flex) screen and (min-width: 400px); +@import url("./test.css") layer(); +@import url("./test.css")layer(default)supports(display: flex)screen and (min-width:400px); +@import url("./test.css")screen and (min-width: 400px); +@import url("./test.css") layer( default ) supports( display : flex ) screen and ( min-width : 400px ); +@import url("./test.css") LAYER(DEFAULT) SUPPORTS(DISPLAY: FLEX) SCREEN AND (MIN-WIDTH: 400PX); +@import url("./test.css") /* Comment */ layer(/* Comment */default/* Comment */) /* Comment */ supports(/* Comment */display/* Comment */:/* Comment */ flex/* Comment */)/* Comment */ screen/* Comment */ and/* Comment */ (/* Comment */min-width/* Comment */: /* Comment */400px/* Comment */); +@import url(test.css) /* Comment */; +@import /* Comment */ url(test.css) /* Comment */; +@import url(test.css) /* Comment */ print and (orientation:landscape); +@import /* Comment */ url(test.css) /* Comment */ print and (orientation:landscape); +@import url('./test.css') supports(display: grid); +@import url("./test.css") layer(framework); + +@import url("./test.css") unknown(default) unknown(display: flex) unknown; +" `; -exports[`"import" option should work with a value equal to "true": warnings 1`] = ` -Array [ +exports[`"import" option should work with import.filter: warnings 1`] = ` +[ + "ModuleWarning: Module Warning (from \`replaced original path\`): +(105:1) from "postcss-import-parser" plugin: Unable to find uri in "@import nourl(test.css)" + +Code: + @import nourl(test.css) +", + "ModuleWarning: Module Warning (from \`replaced original path\`): +(106:1) from "postcss-import-parser" plugin: Unable to find uri in "@import '\\ +\\ +\\ +'" + +Code: + @import '\\ +\\ +\\ +' +", "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning +(12:1) from "postcss-import-parser" plugin: Unable to find uri in "@import url()" -(105:1) Unable to find uri in \\"@import nourl(test.css)\\"", +Code: + @import url() +", "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning +(13:1) from "postcss-import-parser" plugin: Unable to find uri in "@import url('')" -(12:1) Unable to find uri in \\"@import url()\\"", +Code: + @import url('') +", "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning +(14:1) from "postcss-import-parser" plugin: Unable to find uri in "@import url("")" -(13:1) Unable to find uri in \\"@import url('')\\"", +Code: + @import url("") +", "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning +(154:1) from "postcss-import-parser" plugin: Unable to find uri in "@import url('!!../../helpers/string-loader.js?esModule=false!')" -(14:1) Unable to find uri in \\"@import url(\\"\\")\\"", +Code: + @import url('!!../../helpers/string-loader.js?esModule=false!') +", "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning +(17:1) from "postcss-import-parser" plugin: Unable to find uri in "@import ''" -(17:1) Unable to find uri in \\"@import ''\\"", +Code: + @import '' +", "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning +(18:1) from "postcss-import-parser" plugin: Unable to find uri in "@import """ -(18:1) Unable to find uri in \\"@import \\"\\"\\"", +Code: + @import "" +", "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning +(19:1) from "postcss-import-parser" plugin: Unable to find uri in "@import " "" -(19:1) Unable to find uri in \\"@import \\" \\"\\"", +Code: + @import " " +", "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning +(20:1) from "postcss-import-parser" plugin: Unable to find uri in "@import " +"" -(20:1) Unable to find uri in \\"@import \\" -\\"\\"", +Code: + @import " +" +", "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning +(22:1) from "postcss-import-parser" plugin: Unable to find uri in "@import url()" -(22:1) Unable to find uri in \\"@import url()\\"", +Code: + @import url() +", "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning +(23:1) from "postcss-import-parser" plugin: Unable to find uri in "@import url('')" -(23:1) Unable to find uri in \\"@import url('')\\"", +Code: + @import url('') +", "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning +(24:1) from "postcss-import-parser" plugin: Unable to find uri in "@import url("")" -(24:1) Unable to find uri in \\"@import url(\\"\\")\\"", +Code: + @import url("") +", "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning +(40:1) from "postcss-import-parser" plugin: Unable to find uri in "@import " -(40:1) Unable to find uri in \\"@import \\"", +Code: + @import +", "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning +(41:1) from "postcss-import-parser" plugin: Unable to find uri in "@import foo-bar" -(41:1) Unable to find uri in \\"@import foo-bar\\"", +Code: + @import foo-bar +", "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning +(43:1) from "postcss-import-parser" plugin: It looks like you didn't end your @import statement correctly. Child nodes are attached to it. -(43:1) It looks like you didn't end your @import statement correctly. Child nodes are attached to it.", +Code: + @import url('http://') :root {} +", ] `; diff --git a/test/__snapshots__/importLoaders-option.test.js.snap b/test/__snapshots__/importLoaders-option.test.js.snap deleted file mode 100644 index ce0c790b..00000000 --- a/test/__snapshots__/importLoaders-option.test.js.snap +++ /dev/null @@ -1,256 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`"importLoaders" option should work when not specified: errors 1`] = `Array []`; - -exports[`"importLoaders" option should work when not specified: module 1`] = ` -"// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../src/runtime/api.js\\"); -var ___CSS_LOADER_AT_RULE_IMPORT_0___ = require(\\"-!../../../src/index.js!./imported.css\\"); -var ___CSS_LOADER_AT_RULE_IMPORT_1___ = require(\\"-!../../../src/index.js!./other-imported.css\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_1___); -// Module -exports.push([module.id, \\".foo {\\\\n color: red;\\\\n color: rgba(0, 0, 255, 0.9);\\\\n}\\\\n\\", \\"\\"]); -// Exports -module.exports = exports; -" -`; - -exports[`"importLoaders" option should work when not specified: result 1`] = ` -Array [ - Array [ - "../../src/index.js!./nested-import/imported.css", - ".bar { - color: blue; - color: rgb(0 0 100% / 90%); -} -", - "", - ], - Array [ - "../../src/index.js!./nested-import/other-imported.css", - ".baz { - color: green; - color: rgb(0 0 100% / 90%); -} -", - "", - ], - Array [ - "./nested-import/source.css", - ".foo { - color: red; - color: rgba(0, 0, 255, 0.9); -} -", - "", - ], -] -`; - -exports[`"importLoaders" option should work when not specified: warnings 1`] = `Array []`; - -exports[`"importLoaders" option should work with a value equal to "0" (\`postcss-loader\` before): errors 1`] = `Array []`; - -exports[`"importLoaders" option should work with a value equal to "0" (\`postcss-loader\` before): module 1`] = ` -"// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../src/runtime/api.js\\"); -var ___CSS_LOADER_AT_RULE_IMPORT_0___ = require(\\"-!../../../src/index.js??[ident]!./imported.css\\"); -var ___CSS_LOADER_AT_RULE_IMPORT_1___ = require(\\"-!../../../src/index.js??[ident]!./other-imported.css\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_1___); -// Module -exports.push([module.id, \\".foo {\\\\n color: red;\\\\n color: rgba(0, 0, 255, 0.9);\\\\n}\\\\n\\", \\"\\"]); -// Exports -module.exports = exports; -" -`; - -exports[`"importLoaders" option should work with a value equal to "0" (\`postcss-loader\` before): result 1`] = ` -Array [ - Array [ - "../../src/index.js?[ident]!./nested-import/imported.css", - ".bar { - color: blue; - color: rgb(0 0 100% / 90%); -} -", - "", - ], - Array [ - "../../src/index.js?[ident]!./nested-import/other-imported.css", - ".baz { - color: green; - color: rgb(0 0 100% / 90%); -} -", - "", - ], - Array [ - "./nested-import/source.css", - ".foo { - color: red; - color: rgba(0, 0, 255, 0.9); -} -", - "", - ], -] -`; - -exports[`"importLoaders" option should work with a value equal to "0" (\`postcss-loader\` before): warnings 1`] = `Array []`; - -exports[`"importLoaders" option should work with a value equal to "1" ("postcss-loader" before): errors 1`] = `Array []`; - -exports[`"importLoaders" option should work with a value equal to "1" ("postcss-loader" before): module 1`] = ` -"// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../src/runtime/api.js\\"); -var ___CSS_LOADER_AT_RULE_IMPORT_0___ = require(\\"-!../../../src/index.js??[ident]!./imported.css\\"); -var ___CSS_LOADER_AT_RULE_IMPORT_1___ = require(\\"-!../../../src/index.js??[ident]!./other-imported.css\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_1___); -// Module -exports.push([module.id, \\".foo {\\\\n color: red;\\\\n color: rgba(0, 0, 255, 0.9);\\\\n}\\\\n\\", \\"\\"]); -// Exports -module.exports = exports; -" -`; - -exports[`"importLoaders" option should work with a value equal to "1" ("postcss-loader" before): result 1`] = ` -Array [ - Array [ - "../../src/index.js?[ident]!./nested-import/imported.css", - ".bar { - color: blue; - color: rgba(0, 0, 255, 0.9); -} -", - "", - ], - Array [ - "../../src/index.js?[ident]!./nested-import/other-imported.css", - ".baz { - color: green; - color: rgba(0, 0, 255, 0.9); -} -", - "", - ], - Array [ - "./nested-import/source.css", - ".foo { - color: red; - color: rgba(0, 0, 255, 0.9); -} -", - "", - ], -] -`; - -exports[`"importLoaders" option should work with a value equal to "1" ("postcss-loader" before): warnings 1`] = `Array []`; - -exports[`"importLoaders" option should work with a value equal to "1" (no loaders before): errors 1`] = `Array []`; - -exports[`"importLoaders" option should work with a value equal to "1" (no loaders before): module 1`] = ` -"// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../src/runtime/api.js\\"); -var ___CSS_LOADER_AT_RULE_IMPORT_0___ = require(\\"-!../../../src/index.js??[ident]!./imported.css\\"); -var ___CSS_LOADER_AT_RULE_IMPORT_1___ = require(\\"-!../../../src/index.js??[ident]!./other-imported.css\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_1___); -// Module -exports.push([module.id, \\".foo {\\\\n color: red;\\\\n color: rgb(0 0 100% / 90%);\\\\n}\\\\n\\", \\"\\"]); -// Exports -module.exports = exports; -" -`; - -exports[`"importLoaders" option should work with a value equal to "1" (no loaders before): result 1`] = ` -Array [ - Array [ - "../../src/index.js?[ident]!./nested-import/imported.css", - ".bar { - color: blue; - color: rgb(0 0 100% / 90%); -} -", - "", - ], - Array [ - "../../src/index.js?[ident]!./nested-import/other-imported.css", - ".baz { - color: green; - color: rgb(0 0 100% / 90%); -} -", - "", - ], - Array [ - "./nested-import/source.css", - ".foo { - color: red; - color: rgb(0 0 100% / 90%); -} -", - "", - ], -] -`; - -exports[`"importLoaders" option should work with a value equal to "1" (no loaders before): warnings 1`] = `Array []`; - -exports[`"importLoaders" option should work with a value equal to "2" ("postcss-loader" before): errors 1`] = `Array []`; - -exports[`"importLoaders" option should work with a value equal to "2" ("postcss-loader" before): module 1`] = ` -"// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../src/runtime/api.js\\"); -var ___CSS_LOADER_AT_RULE_IMPORT_0___ = require(\\"-!../../../src/index.js??[ident]!./imported.css\\"); -var ___CSS_LOADER_AT_RULE_IMPORT_1___ = require(\\"-!../../../src/index.js??[ident]!./other-imported.css\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_1___); -// Module -exports.push([module.id, \\".foo {\\\\n color: red;\\\\n color: rgba(0, 0, 255, 0.9);\\\\n}\\\\n\\", \\"\\"]); -// Exports -module.exports = exports; -" -`; - -exports[`"importLoaders" option should work with a value equal to "2" ("postcss-loader" before): result 1`] = ` -Array [ - Array [ - "../../src/index.js?[ident]!./nested-import/imported.css", - ".bar { - color: blue; - color: rgba(0, 0, 255, 0.9); -} -", - "", - ], - Array [ - "../../src/index.js?[ident]!./nested-import/other-imported.css", - ".baz { - color: green; - color: rgba(0, 0, 255, 0.9); -} -", - "", - ], - Array [ - "./nested-import/source.css", - ".foo { - color: red; - color: rgba(0, 0, 255, 0.9); -} -", - "", - ], -] -`; - -exports[`"importLoaders" option should work with a value equal to "2" ("postcss-loader" before): warnings 1`] = `Array []`; diff --git a/test/__snapshots__/loader.test.js.snap b/test/__snapshots__/loader.test.js.snap index d5d503eb..7d01bc9a 100644 --- a/test/__snapshots__/loader.test.js.snap +++ b/test/__snapshots__/loader.test.js.snap @@ -1,21 +1,22 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP +// Jest Snapshot v1, https://jestjs.io/docs/snapshot-testing -exports[`loader issue #1033 (2): errors 1`] = `Array []`; +exports[`loader issue #1033 (2): errors 1`] = `[]`; exports[`loader issue #1033 (2): module 1`] = ` "// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../../src/runtime/api.js\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../../src/runtime/api.js"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); // Module -exports.push([module.id, \\"\\", \\"\\"]); +___CSS_LOADER_EXPORT___.push([module.id, \`\`, ""]); // Exports -module.exports = exports; +export default ___CSS_LOADER_EXPORT___; " `; exports[`loader issue #1033 (2): result 1`] = ` -Array [ - Array [ +[ + [ "./modules/issue-1033/issue-1033.css", "", "", @@ -23,41 +24,156 @@ Array [ ] `; -exports[`loader issue #1033 (2): warnings 1`] = `Array []`; +exports[`loader issue #1033 (2): warnings 1`] = `[]`; -exports[`loader issue #1033: errors 1`] = `Array []`; +exports[`loader issue #1033: errors 1`] = `[]`; exports[`loader issue #1033: module 1`] = ` "// Exports -module.exports = {}; " `; -exports[`loader issue #1033: result 1`] = `Object {}`; +exports[`loader issue #1033: result 1`] = `{}`; -exports[`loader issue #1033: warnings 1`] = `Array []`; +exports[`loader issue #1033: warnings 1`] = `[]`; -exports[`loader should reuse \`ast\` from "postcss-loader": errors 1`] = `Array []`; +exports[`loader should not generate console.warn when plugins disabled and hideNothingWarning is "true": errors 1`] = `[]`; + +exports[`loader should not generate console.warn when plugins disabled and hideNothingWarning is "true": module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../src/runtime/api.js"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`\`, ""]); +// Exports +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`loader should not generate console.warn when plugins disabled and hideNothingWarning is "true": result 1`] = ` +[ + [ + "./empty.css", + "", + "", + ], +] +`; + +exports[`loader should not generate console.warn when plugins disabled and hideNothingWarning is "true": warnings 1`] = `[]`; + +exports[`loader should pass queries to other loader: errors 1`] = `[]`; + +exports[`loader should pass queries to other loader: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../src/runtime/api.js"; +import ___CSS_LOADER_GET_URL_IMPORT___ from "../../src/runtime/getUrl.js"; +var ___CSS_LOADER_URL_IMPORT_0___ = new URL("./url/image.svg?color=%23BAAFDB%3F", import.meta.url); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___, { hash: "#foo" }); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`.example { + background-image: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} +\`, ""]); +// Exports +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`loader should pass queries to other loader: result 1`] = ` +[ + [ + "./other-loader-query.css", + ".example { + background-image: url(replaced_file_protocol_/webpack/public/path/image.svg#foo); +} +", + "", + ], +] +`; + +exports[`loader should pass queries to other loader: warnings 1`] = `[]`; + +exports[`loader should reuse \`ast\` from "postcss-loader": errors 1`] = `[]`; exports[`loader should reuse \`ast\` from "postcss-loader": module 1`] = ` "// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../src/runtime/api.js\\"); -var ___CSS_LOADER_GET_URL_IMPORT___ = require(\\"../../../src/runtime/getUrl.js\\"); -var ___CSS_LOADER_URL_IMPORT_0___ = require(\\"./img1x.png\\"); -var ___CSS_LOADER_URL_IMPORT_1___ = require(\\"./img2x.png\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../src/runtime/api.js"; +import ___CSS_LOADER_GET_URL_IMPORT___ from "../../../src/runtime/getUrl.js"; +var ___CSS_LOADER_URL_IMPORT_0___ = new URL("./img1x.png", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_1___ = new URL("./img2x.png", import.meta.url); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); var ___CSS_LOADER_URL_REPLACEMENT_1___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_1___); // Module -exports.push([module.id, \\":root {\\\\n --fontSize: 1rem;\\\\n --mainColor: rgba(18,52,86,0.47059);\\\\n --secondaryColor: rgba(102, 51, 153, 0.9);\\\\n}\\\\n\\\\nhtml {\\\\n overflow-x: hidden;\\\\n overflow-y: auto;\\\\n overflow: hidden auto;\\\\n}\\\\n\\\\n@media (max-width: 50rem) {\\\\n body {\\\\n color: rgba(18,52,86,0.47059);\\\\n color: var(--mainColor);\\\\n font-family: system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, Noto Sans, sans-serif;\\\\n font-size: 1rem;\\\\n font-size: var(--fontSize);\\\\n line-height: calc(1rem * 1.5);\\\\n line-height: calc(var(--fontSize) * 1.5);\\\\n word-wrap: break-word;\\\\n padding-left: calc(1rem / 2 + 1px);\\\\n padding-right: calc(1rem / 2 + 1px);\\\\n padding-left: calc(var(--fontSize) / 2 + 1px);\\\\n padding-right: calc(var(--fontSize) / 2 + 1px);\\\\n }\\\\n}\\\\n\\\\nh1,h2,h3,h4,h5,h6 {\\\\n margin-top: 0;\\\\n margin-bottom: 0;\\\\n}\\\\n\\\\nmain.hero, .hero.main {\\\\n background-image: url(\\" + ___CSS_LOADER_URL_REPLACEMENT_0___ + \\");\\\\n}\\\\n\\\\n@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {\\\\n\\\\nmain.hero, .hero.main {\\\\n background-image: url(\\" + ___CSS_LOADER_URL_REPLACEMENT_1___ + \\");\\\\n}\\\\n}\\\\n\\\\nmain.hero, .hero.main {\\\\n background-image: -webkit-image-set(url(\\" + ___CSS_LOADER_URL_REPLACEMENT_0___ + \\") 1x, url(\\" + ___CSS_LOADER_URL_REPLACEMENT_1___ + \\") 2x);\\\\n background-image: image-set(url(\\" + ___CSS_LOADER_URL_REPLACEMENT_0___ + \\") 1x, url(\\" + ___CSS_LOADER_URL_REPLACEMENT_1___ + \\") 2x);\\\\n}\\\\n\\\\na {\\\\n color: rgba(0, 0, 255, 0.9)\\\\n}\\\\n\\\\na:hover {\\\\n color: #639;\\\\n }\\\\n\\", \\"\\"]); +___CSS_LOADER_EXPORT___.push([module.id, \`:root { + --fontSize: 1rem; + --mainColor: rgba(18,52,86,0.47059); + --secondaryColor: rgba(102, 51, 153, 0.9); +} + +html { + overflow-x: hidden; + overflow-y: auto; + overflow: hidden auto; +} + +@media (max-width: 50rem) { + body { + color: rgba(18,52,86,0.47059); + color: var(--mainColor); + font-family: system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, Noto Sans, sans-serif; + font-size: 1rem; + font-size: var(--fontSize); + line-height: calc(1rem * 1.5); + line-height: calc(var(--fontSize) * 1.5); + word-wrap: break-word; + padding-left: calc(1rem / 2 + 1px); + padding-right: calc(1rem / 2 + 1px); + padding-left: calc(var(--fontSize) / 2 + 1px); + padding-right: calc(var(--fontSize) / 2 + 1px); + } +} + +h1, h2, h3, h4, h5, h6 { + margin-top: 0; + margin-bottom: 0; +} + +.hero:matches(main, .main) { + background-image: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); + background-image: -webkit-image-set(url(\${___CSS_LOADER_URL_REPLACEMENT_0___}) 1x, url(\${___CSS_LOADER_URL_REPLACEMENT_1___}) 2x); + background-image: image-set(url(\${___CSS_LOADER_URL_REPLACEMENT_0___}) 1x, url(\${___CSS_LOADER_URL_REPLACEMENT_1___}) 2x); +} + +@media (min-resolution: 192dpi) { + +.hero:matches(main, .main) { + background-image: url(\${___CSS_LOADER_URL_REPLACEMENT_1___}); +} +} + +a { + color: rgba(0, 0, 255, 0.9); +} + +a:hover { + color: #639; + } +\`, ""]); // Exports -module.exports = exports; +export default ___CSS_LOADER_EXPORT___; " `; exports[`loader should reuse \`ast\` from "postcss-loader": result 1`] = ` -Array [ - Array [ +[ + [ "./postcss-present-env/source.css", ":root { --fontSize: 1rem; @@ -88,29 +204,26 @@ html { } } -h1,h2,h3,h4,h5,h6 { +h1, h2, h3, h4, h5, h6 { margin-top: 0; margin-bottom: 0; } -main.hero, .hero.main { - background-image: url(/webpack/public/path/img1x.png); +.hero:matches(main, .main) { + background-image: url(replaced_file_protocol_/webpack/public/path/img1x.png); + background-image: -webkit-image-set(url(replaced_file_protocol_/webpack/public/path/img1x.png) 1x, url(replaced_file_protocol_/webpack/public/path/img2x.png) 2x); + background-image: image-set(url(replaced_file_protocol_/webpack/public/path/img1x.png) 1x, url(replaced_file_protocol_/webpack/public/path/img2x.png) 2x); } -@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { +@media (min-resolution: 192dpi) { -main.hero, .hero.main { - background-image: url(/webpack/public/path/img2x.png); -} +.hero:matches(main, .main) { + background-image: url(replaced_file_protocol_/webpack/public/path/img2x.png); } - -main.hero, .hero.main { - background-image: -webkit-image-set(url(/webpack/public/path/img1x.png) 1x, url(/webpack/public/path/img2x.png) 2x); - background-image: image-set(url(/webpack/public/path/img1x.png) 1x, url(/webpack/public/path/img2x.png) 2x); } a { - color: rgba(0, 0, 255, 0.9) + color: rgba(0, 0, 255, 0.9); } a:hover { @@ -122,14 +235,15 @@ a:hover { ] `; -exports[`loader should reuse \`ast\` from "postcss-loader": warnings 1`] = `Array []`; +exports[`loader should reuse \`ast\` from "postcss-loader": warnings 1`] = `[]`; exports[`loader should throw an error on invisible spaces: errors 1`] = ` -Array [ +[ "ModuleBuildError: Module build failed (from \`replaced original path\`): -CssSyntaxError -(1:8) Unknown word +SyntaxError + +(1:8) /test/fixtures/invisible-space.css Unknown word color > 1 | a { 

 color: red; 

 } | ^ @@ -137,14 +251,15 @@ CssSyntaxError ] `; -exports[`loader should throw an error on invisible spaces: warnings 1`] = `Array []`; +exports[`loader should throw an error on invisible spaces: warnings 1`] = `[]`; exports[`loader should throw error on invalid css syntax: errors 1`] = ` -Array [ +[ "ModuleBuildError: Module build failed (from \`replaced original path\`): -CssSyntaxError -(2:3) Unknown word +SyntaxError + +(2:3) /test/fixtures/error.css Unknown word invalid 1 | .some { > 2 | invalid css; @@ -155,59 +270,29 @@ CssSyntaxError ] `; -exports[`loader should throw error on invalid css syntax: warnings 1`] = `Array []`; +exports[`loader should throw error on invalid css syntax: warnings 1`] = `[]`; -exports[`loader should throws error when no loader(s) for assets: errors 1`] = ` -Array [ - "ModuleParseError: Module parse failed: Unexpected character '�' (1:0) -You may need an appropriate loader to handle this file type, currently no loaders are configured to process this file. See https://webpack.js.org/concepts#loaders -(Source code omitted for this binary file)", -] -`; +exports[`loader should throws error when no loader(s) for assets: errors 1`] = `[]`; -exports[`loader should throws error when no loader(s) for assets: warnings 1`] = `Array []`; +exports[`loader should throws error when no loader(s) for assets: warnings 1`] = `[]`; -exports[`loader should work with "asset" module type: errors 1`] = `Array []`; +exports[`loader should work and nothing to do with built-in CSS support: errors 1`] = `[]`; -exports[`loader should work with "asset" module type: module 1`] = ` -"// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../src/runtime/api.js\\"); -var ___CSS_LOADER_AT_RULE_IMPORT_0___ = require(\\"-!../../src/index.js!./imported.css\\"); -var ___CSS_LOADER_GET_URL_IMPORT___ = require(\\"../../src/runtime/getUrl.js\\"); -var ___CSS_LOADER_URL_IMPORT_0___ = require(\\"./url/img.png\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___); -var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); -// Module -exports.push([module.id, \\"@charset \\\\\\"UTF-8\\\\\\";\\\\n\\\\n/* Comment */\\\\n\\\\n.class {\\\\n color: red;\\\\n background: url(\\" + ___CSS_LOADER_URL_REPLACEMENT_0___ + \\");\\\\n}\\\\n\\\\n.class-duplicate-url {\\\\n background: url(\\" + ___CSS_LOADER_URL_REPLACEMENT_0___ + \\");\\\\n}\\\\n\\\\n:root {\\\\n --foo: 1px;\\\\n --bar: 2px;\\\\n}\\\\n\\\\n.class { a: b c d; }\\\\n\\\\n.two {}\\\\n\\\\n.u-m\\\\\\\\+ { a: b c d; }\\\\n\\\\n.class { content: \\\\\\"\\\\\\\\F10C\\\\\\" }\\\\n\\\\n@media only screen and (max-width: 600px) {\\\\n body {\\\\n background-color: lightblue;\\\\n }\\\\n}\\\\n\\\\n.class {\\\\n content: \\\\\\"\\\\\\\\2193\\\\\\";\\\\n content: \\\\\\"\\\\\\\\2193\\\\\\\\2193\\\\\\";\\\\n content: \\\\\\"\\\\\\\\2193 \\\\\\\\2193\\\\\\";\\\\n content: \\\\\\"\\\\\\\\2193\\\\\\\\2193\\\\\\\\2193\\\\\\";\\\\n content: \\\\\\"\\\\\\\\2193 \\\\\\\\2193 \\\\\\\\2193\\\\\\";\\\\n}\\\\n\\\\n.-top {}\\\\n.\\\\\\\\-top {}\\\\n\\\\n#\\\\\\\\#test {}\\\\n\\\\n.grid {\\\\n display: flex;\\\\n flex-wrap: wrap;\\\\n}\\\\n.grid.\\\\\\\\-top {\\\\n align-items: flex-start;\\\\n}\\\\n.grid.-top {\\\\n align-items: flex-start;\\\\n}\\\\n.grid.\\\\\\\\-middle {\\\\n align-items: center;\\\\n}\\\\n.grid.\\\\\\\\-bottom {\\\\n align-items: flex-end;\\\\n}\\\\n\\\\n.u-m\\\\\\\\00002b {}\\\\n\\\\n.u-m00002b {}\\\\n\\\\n#u-m\\\\\\\\+ {}\\\\n\\\\nbody {\\\\n font-family: '微软雅黑'; /* some chinese font name */\\\\n}\\\\n\\\\n.myStyle {\\\\n content: '\\\\\\\\e901';\\\\n}\\\\n\\\\n.myStyle {\\\\n content: '\\\\\\\\E901';\\\\n}\\\\n\\\\n.♫ {}\\\\n\\\\n.\\\\\\\\3A \\\\\\\\\`\\\\\\\\( {} /* matches elements with class=\\\\\\":\`(\\\\\\" */\\\\n.\\\\\\\\31 a2b3c {} /* matches elements with class=\\\\\\"1a2b3c\\\\\\" */\\\\n#\\\\\\\\#fake-id {} /* matches the element with id=\\\\\\"#fake-id\\\\\\" */\\\\n#-a-b-c- {} /* matches the element with id=\\\\\\"-a-b-c-\\\\\\" */\\\\n#© {} /* matches the element with id=\\\\\\"©\\\\\\" */\\\\n\\\\n:root {\\\\n --title-align: center;\\\\n --sr-only: {\\\\n position: absolute;\\\\n width: 1px;\\\\n height: 1px;\\\\n padding: 0;\\\\n overflow: hidden;\\\\n clip: rect(0,0,0,0);\\\\n white-space: nowrap;\\\\n clip-path: inset(50%);\\\\n border: 0;\\\\n };\\\\n}\\\\n\\\\n.test {\\\\n content: \\\\\\"\\\\\\\\2014\\\\\\\\A0\\\\\\";\\\\n content: \\\\\\"\\\\\\\\2014 \\\\\\\\A0\\\\\\";\\\\n content: \\\\\\"\\\\\\\\A0 \\\\\\\\2014\\\\\\";\\\\n content: \\\\\\"\\\\\\\\A0\\\\\\\\2014\\\\\\";\\\\n margin-top: 1px\\\\\\\\9;\\\\n background-color: #000\\\\\\\\9;\\\\n}\\\\n\\\\n.light.on .bulb:before{\\\\n content: '💡';\\\\n}\\\\n\\\\n.base64 {\\\\n background: url(data:img/jpg;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAhxJREFUSA3tk71rU1EYxnMTEoJUkowWwdJ2akEHBfGjCiIF6ZylVUKSm2TqZLGI+A/oIu2UXm8C4lAyF4SWji0tdFLo1Eo7VN0SaBEhH7e/Nz0nPTfGOjiaCyfPc5734zlfCQT6X/8E/vUErL81KBaL9y3LSnued5PcITjUOwR3gsFg2bbtjYt6/NGgXC4P1et1l2aPLmpAbD0SidjpdPqgV15PA9d17zQajU8UxHQRK/4G35Q5pveAK8LlI1ZjPMnlcltnyvnvbwaO41xvtVqy7YHztMACq5xnlb9EY3dRdvcGo1kj5wR+t1AofDG0gM+A875E8DNjRCexsrV8Pj9ZqVQitVrtqejxePxjMpmss5hVTB4buXvMb2DyU2tBTRS+BjvNlVYUpPl7iuVO3Gq1uoQx1FtSOW1gPgp5ZWrdBtNmUDgv5asgxQ8F1af5vhY0YjyjuWC3wTszKJz7GBOkcFlQfW2ONq4FjWi+Hj6DRCKxQOK2TlY4x92EuYd5dvMAbYIzfikau3pu5tJ8KxaLLfo0cyKci7tK4TZjUMcoXAmHwzle0Q/RaC5P1GFMyVx9R9Fo9HYqlTrSgqDvFelAqVQa5hmuMR/WGtjAaBdjwBoDQ0ZsnwVMZjKZ9n0Zem8DSeDPdrnZbL6F2l3NOvUYNZk4oVDoRTabPe4EDNJzB0ZcjAYxeoZ2i3FNxQ7BHYw/cB/fldaH//UETgHHO8S44KbfXgAAAABJRU5ErkJggg==);\\\\n}\\\\n\\\\na[href=''] {\\\\n color: red;\\\\n}\\\\n\\\\na[href='' i] {\\\\n color: red;\\\\n}\\\\n\\\\na[href=\\\\\\"\\\\\\"] {\\\\n color: blue;\\\\n}\\\\n\\\\na[href=\\\\\\"\\\\\\" i] {\\\\n color: blue;\\\\n}\\\\n\\", \\"\\"]); -// Exports -module.exports = exports; -" -`; +exports[`loader should work and nothing to do with built-in CSS support: errors 2`] = `[]`; + +exports[`loader should work and nothing to do with built-in CSS support: module 1`] = ` +"@charset "UTF-8"; -exports[`loader should work with "asset" module type: result 1`] = ` -Array [ - Array [ - "../../src/index.js!./imported.css", - ".foo { - color: red; -} -", - "", - ], - Array [ - "./basic.css", - "@charset \\"UTF-8\\"; /* Comment */ .class { color: red; - background: url(/webpack/public/path/img.png); + background: url("./url/img.png"); } .class-duplicate-url { - background: url(/webpack/public/path/img.png); + background: url("./url/img.png"); } :root { @@ -219,9 +304,9 @@ Array [ .two {} -.u-m\\\\+ { a: b c d; } +.u-m\\+ { a: b c d; } -.class { content: \\"\\\\F10C\\" } +.class { content: "\\F10C" } @media only screen and (max-width: 600px) { body { @@ -230,60 +315,74 @@ Array [ } .class { - content: \\"\\\\2193\\"; - content: \\"\\\\2193\\\\2193\\"; - content: \\"\\\\2193 \\\\2193\\"; - content: \\"\\\\2193\\\\2193\\\\2193\\"; - content: \\"\\\\2193 \\\\2193 \\\\2193\\"; + content: "\\2193"; + content: "\\2193\\2193"; + content: "\\2193 \\2193"; + content: "\\2193\\2193\\2193"; + content: "\\2193 \\2193 \\2193"; } .-top {} -.\\\\-top {} +.\\-top {} -#\\\\#test {} +#\\#test {} .grid { display: flex; flex-wrap: wrap; } -.grid.\\\\-top { +.grid.\\-top { align-items: flex-start; } .grid.-top { align-items: flex-start; } -.grid.\\\\-middle { +.grid.\\-middle { align-items: center; } -.grid.\\\\-bottom { +.grid.\\-bottom { align-items: flex-end; } -.u-m\\\\00002b {} +.u-m\\00002b {} .u-m00002b {} -#u-m\\\\+ {} +#u-m\\+ {} body { font-family: '微软雅黑'; /* some chinese font name */ } .myStyle { - content: '\\\\e901'; + content: '\\e901'; } .myStyle { - content: '\\\\E901'; + content: '\\E901'; } .♫ {} -.\\\\3A \\\\\`\\\\( {} /* matches elements with class=\\":\`(\\" */ -.\\\\31 a2b3c {} /* matches elements with class=\\"1a2b3c\\" */ -#\\\\#fake-id {} /* matches the element with id=\\"#fake-id\\" */ -#-a-b-c- {} /* matches the element with id=\\"-a-b-c-\\" */ -#© {} /* matches the element with id=\\"©\\" */ +.\\3A \\\`\\( {} /* matches elements with class=":\`(" */ +.\\31 a2b3c {} /* matches elements with class="1a2b3c" */ +#\\#fake-id {} /* matches the element with id="#fake-id" */ +#-a-b-c- {} /* matches the element with id="-a-b-c-" */ +#© {} /* matches the element with id="©" */ + +\\.\\\` { + color: aliceblue; +} + +\\.\\$\\{foo\\} { + color: aliceblue; +} + +/* \` */ +/* \`\` */ +/* \`\`\` */ +/* \${} */ +/* \\\\\` */ :root { --title-align: center; @@ -301,12 +400,12 @@ body { } .test { - content: \\"\\\\2014\\\\A0\\"; - content: \\"\\\\2014 \\\\A0\\"; - content: \\"\\\\A0 \\\\2014\\"; - content: \\"\\\\A0\\\\2014\\"; - margin-top: 1px\\\\9; - background-color: #000\\\\9; + content: "\\2014\\A0"; + content: "\\2014 \\A0"; + content: "\\A0 \\2014"; + content: "\\A0\\2014"; + margin-top: 1px\\9; + background-color: #000\\9; } .light.on .bulb:before{ @@ -325,127 +424,29 @@ a[href='' i] { color: red; } -a[href=\\"\\"] { +a[href=""] { color: blue; } -a[href=\\"\\" i] { +a[href="" i] { color: blue; } -", - "", - ], -] -`; - -exports[`loader should work with "asset" module type: warnings 1`] = `Array []`; - -exports[`loader should work with "sass-loader": errors 1`] = `Array []`; - -exports[`loader should work with "sass-loader": module 1`] = ` -"// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../src/runtime/api.js\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -// Module -exports.push([module.id, \\"body {\\\\n font: 100% Helvetica, sans-serif;\\\\n color: #333;\\\\n}\\", \\"\\"]); -// Exports -module.exports = exports; -" -`; - -exports[`loader should work with "sass-loader": result 1`] = ` -Array [ - Array [ - "./scss/source.scss", - "body { - font: 100% Helvetica, sans-serif; - color: #333; -}", - "", - ], -] -`; - -exports[`loader should work with "sass-loader": warnings 1`] = `Array []`; - -exports[`loader should work with ModuleConcatenationPlugin (file-loader): errors 1`] = `Array []`; - -exports[`loader should work with ModuleConcatenationPlugin (file-loader): warnings 1`] = `Array []`; - -exports[`loader should work with ModuleConcatenationPlugin (url-loader): errors 1`] = `Array []`; - -exports[`loader should work with ModuleConcatenationPlugin (url-loader): warnings 1`] = `Array []`; - -exports[`loader should work with ModuleConcatenationPlugin: errors 1`] = `Array []`; - -exports[`loader should work with ModuleConcatenationPlugin: warnings 1`] = `Array []`; - -exports[`loader should work with empty css: errors 1`] = `Array []`; - -exports[`loader should work with empty css: module 1`] = ` -"// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../src/runtime/api.js\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -// Module -exports.push([module.id, \\"\\", \\"\\"]); -// Exports -module.exports = exports; " `; -exports[`loader should work with empty css: result 1`] = ` -Array [ - Array [ - "./empty.css", - "", - "", - ], -] -`; - -exports[`loader should work with empty css: warnings 1`] = `Array []`; - -exports[`loader should work with empty options: errors 1`] = `Array []`; +exports[`loader should work and nothing to do with built-in CSS support: module 2`] = ` +"@charset "UTF-8"; -exports[`loader should work with empty options: module 1`] = ` -"// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../src/runtime/api.js\\"); -var ___CSS_LOADER_AT_RULE_IMPORT_0___ = require(\\"-!../../src/index.js??[ident]!./imported.css\\"); -var ___CSS_LOADER_GET_URL_IMPORT___ = require(\\"../../src/runtime/getUrl.js\\"); -var ___CSS_LOADER_URL_IMPORT_0___ = require(\\"./url/img.png\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___); -var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); -// Module -exports.push([module.id, \\"@charset \\\\\\"UTF-8\\\\\\";\\\\n\\\\n/* Comment */\\\\n\\\\n.class {\\\\n color: red;\\\\n background: url(\\" + ___CSS_LOADER_URL_REPLACEMENT_0___ + \\");\\\\n}\\\\n\\\\n.class-duplicate-url {\\\\n background: url(\\" + ___CSS_LOADER_URL_REPLACEMENT_0___ + \\");\\\\n}\\\\n\\\\n:root {\\\\n --foo: 1px;\\\\n --bar: 2px;\\\\n}\\\\n\\\\n.class { a: b c d; }\\\\n\\\\n.two {}\\\\n\\\\n.u-m\\\\\\\\+ { a: b c d; }\\\\n\\\\n.class { content: \\\\\\"\\\\\\\\F10C\\\\\\" }\\\\n\\\\n@media only screen and (max-width: 600px) {\\\\n body {\\\\n background-color: lightblue;\\\\n }\\\\n}\\\\n\\\\n.class {\\\\n content: \\\\\\"\\\\\\\\2193\\\\\\";\\\\n content: \\\\\\"\\\\\\\\2193\\\\\\\\2193\\\\\\";\\\\n content: \\\\\\"\\\\\\\\2193 \\\\\\\\2193\\\\\\";\\\\n content: \\\\\\"\\\\\\\\2193\\\\\\\\2193\\\\\\\\2193\\\\\\";\\\\n content: \\\\\\"\\\\\\\\2193 \\\\\\\\2193 \\\\\\\\2193\\\\\\";\\\\n}\\\\n\\\\n.-top {}\\\\n.\\\\\\\\-top {}\\\\n\\\\n#\\\\\\\\#test {}\\\\n\\\\n.grid {\\\\n display: flex;\\\\n flex-wrap: wrap;\\\\n}\\\\n.grid.\\\\\\\\-top {\\\\n align-items: flex-start;\\\\n}\\\\n.grid.-top {\\\\n align-items: flex-start;\\\\n}\\\\n.grid.\\\\\\\\-middle {\\\\n align-items: center;\\\\n}\\\\n.grid.\\\\\\\\-bottom {\\\\n align-items: flex-end;\\\\n}\\\\n\\\\n.u-m\\\\\\\\00002b {}\\\\n\\\\n.u-m00002b {}\\\\n\\\\n#u-m\\\\\\\\+ {}\\\\n\\\\nbody {\\\\n font-family: '微软雅黑'; /* some chinese font name */\\\\n}\\\\n\\\\n.myStyle {\\\\n content: '\\\\\\\\e901';\\\\n}\\\\n\\\\n.myStyle {\\\\n content: '\\\\\\\\E901';\\\\n}\\\\n\\\\n.♫ {}\\\\n\\\\n.\\\\\\\\3A \\\\\\\\\`\\\\\\\\( {} /* matches elements with class=\\\\\\":\`(\\\\\\" */\\\\n.\\\\\\\\31 a2b3c {} /* matches elements with class=\\\\\\"1a2b3c\\\\\\" */\\\\n#\\\\\\\\#fake-id {} /* matches the element with id=\\\\\\"#fake-id\\\\\\" */\\\\n#-a-b-c- {} /* matches the element with id=\\\\\\"-a-b-c-\\\\\\" */\\\\n#© {} /* matches the element with id=\\\\\\"©\\\\\\" */\\\\n\\\\n:root {\\\\n --title-align: center;\\\\n --sr-only: {\\\\n position: absolute;\\\\n width: 1px;\\\\n height: 1px;\\\\n padding: 0;\\\\n overflow: hidden;\\\\n clip: rect(0,0,0,0);\\\\n white-space: nowrap;\\\\n clip-path: inset(50%);\\\\n border: 0;\\\\n };\\\\n}\\\\n\\\\n.test {\\\\n content: \\\\\\"\\\\\\\\2014\\\\\\\\A0\\\\\\";\\\\n content: \\\\\\"\\\\\\\\2014 \\\\\\\\A0\\\\\\";\\\\n content: \\\\\\"\\\\\\\\A0 \\\\\\\\2014\\\\\\";\\\\n content: \\\\\\"\\\\\\\\A0\\\\\\\\2014\\\\\\";\\\\n margin-top: 1px\\\\\\\\9;\\\\n background-color: #000\\\\\\\\9;\\\\n}\\\\n\\\\n.light.on .bulb:before{\\\\n content: '💡';\\\\n}\\\\n\\\\n.base64 {\\\\n background: url(data:img/jpg;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAhxJREFUSA3tk71rU1EYxnMTEoJUkowWwdJ2akEHBfGjCiIF6ZylVUKSm2TqZLGI+A/oIu2UXm8C4lAyF4SWji0tdFLo1Eo7VN0SaBEhH7e/Nz0nPTfGOjiaCyfPc5734zlfCQT6X/8E/vUErL81KBaL9y3LSnued5PcITjUOwR3gsFg2bbtjYt6/NGgXC4P1et1l2aPLmpAbD0SidjpdPqgV15PA9d17zQajU8UxHQRK/4G35Q5pveAK8LlI1ZjPMnlcltnyvnvbwaO41xvtVqy7YHztMACq5xnlb9EY3dRdvcGo1kj5wR+t1AofDG0gM+A875E8DNjRCexsrV8Pj9ZqVQitVrtqejxePxjMpmss5hVTB4buXvMb2DyU2tBTRS+BjvNlVYUpPl7iuVO3Gq1uoQx1FtSOW1gPgp5ZWrdBtNmUDgv5asgxQ8F1af5vhY0YjyjuWC3wTszKJz7GBOkcFlQfW2ONq4FjWi+Hj6DRCKxQOK2TlY4x92EuYd5dvMAbYIzfikau3pu5tJ8KxaLLfo0cyKci7tK4TZjUMcoXAmHwzle0Q/RaC5P1GFMyVx9R9Fo9HYqlTrSgqDvFelAqVQa5hmuMR/WGtjAaBdjwBoDQ0ZsnwVMZjKZ9n0Zem8DSeDPdrnZbL6F2l3NOvUYNZk4oVDoRTabPe4EDNJzB0ZcjAYxeoZ2i3FNxQ7BHYw/cB/fldaH//UETgHHO8S44KbfXgAAAABJRU5ErkJggg==);\\\\n}\\\\n\\\\na[href=''] {\\\\n color: red;\\\\n}\\\\n\\\\na[href='' i] {\\\\n color: red;\\\\n}\\\\n\\\\na[href=\\\\\\"\\\\\\"] {\\\\n color: blue;\\\\n}\\\\n\\\\na[href=\\\\\\"\\\\\\" i] {\\\\n color: blue;\\\\n}\\\\n\\", \\"\\"]); -// Exports -module.exports = exports; -" -`; - -exports[`loader should work with empty options: result 1`] = ` -Array [ - Array [ - "../../src/index.js?[ident]!./imported.css", - ".foo { - color: red; -} -", - "", - ], - Array [ - "./basic.css", - "@charset \\"UTF-8\\"; /* Comment */ .class { color: red; - background: url(/webpack/public/path/img.png); + background: url("./url/img.png"); } .class-duplicate-url { - background: url(/webpack/public/path/img.png); + background: url("./url/img.png"); } :root { @@ -457,9 +458,9 @@ Array [ .two {} -.u-m\\\\+ { a: b c d; } +.u-m\\+ { a: b c d; } -.class { content: \\"\\\\F10C\\" } +.class { content: "\\F10C" } @media only screen and (max-width: 600px) { body { @@ -468,60 +469,74 @@ Array [ } .class { - content: \\"\\\\2193\\"; - content: \\"\\\\2193\\\\2193\\"; - content: \\"\\\\2193 \\\\2193\\"; - content: \\"\\\\2193\\\\2193\\\\2193\\"; - content: \\"\\\\2193 \\\\2193 \\\\2193\\"; + content: "\\2193"; + content: "\\2193\\2193"; + content: "\\2193 \\2193"; + content: "\\2193\\2193\\2193"; + content: "\\2193 \\2193 \\2193"; } .-top {} -.\\\\-top {} +.\\-top {} -#\\\\#test {} +#\\#test {} .grid { display: flex; flex-wrap: wrap; } -.grid.\\\\-top { +.grid.\\-top { align-items: flex-start; } .grid.-top { align-items: flex-start; } -.grid.\\\\-middle { +.grid.\\-middle { align-items: center; } -.grid.\\\\-bottom { +.grid.\\-bottom { align-items: flex-end; } -.u-m\\\\00002b {} +.u-m\\00002b {} .u-m00002b {} -#u-m\\\\+ {} +#u-m\\+ {} body { font-family: '微软雅黑'; /* some chinese font name */ } .myStyle { - content: '\\\\e901'; + content: '\\e901'; } .myStyle { - content: '\\\\E901'; + content: '\\E901'; } .♫ {} -.\\\\3A \\\\\`\\\\( {} /* matches elements with class=\\":\`(\\" */ -.\\\\31 a2b3c {} /* matches elements with class=\\"1a2b3c\\" */ -#\\\\#fake-id {} /* matches the element with id=\\"#fake-id\\" */ -#-a-b-c- {} /* matches the element with id=\\"-a-b-c-\\" */ -#© {} /* matches the element with id=\\"©\\" */ +.\\3A \\\`\\( {} /* matches elements with class=":\`(" */ +.\\31 a2b3c {} /* matches elements with class="1a2b3c" */ +#\\#fake-id {} /* matches the element with id="#fake-id" */ +#-a-b-c- {} /* matches the element with id="-a-b-c-" */ +#© {} /* matches the element with id="©" */ + +\\.\\\` { + color: aliceblue; +} + +\\.\\$\\{foo\\} { + color: aliceblue; +} + +/* \` */ +/* \`\` */ +/* \`\`\` */ +/* \${} */ +/* \\\\\` */ :root { --title-align: center; @@ -539,12 +554,12 @@ body { } .test { - content: \\"\\\\2014\\\\A0\\"; - content: \\"\\\\2014 \\\\A0\\"; - content: \\"\\\\A0 \\\\2014\\"; - content: \\"\\\\A0\\\\2014\\"; - margin-top: 1px\\\\9; - background-color: #000\\\\9; + content: "\\2014\\A0"; + content: "\\2014 \\A0"; + content: "\\A0 \\2014"; + content: "\\A0\\2014"; + margin-top: 1px\\9; + background-color: #000\\9; } .light.on .bulb:before{ @@ -563,132 +578,2644 @@ a[href='' i] { color: red; } -a[href=\\"\\"] { +a[href=""] { color: blue; } -a[href=\\"\\" i] { +a[href="" i] { color: blue; } -", - "", - ], +" +`; + +exports[`loader should work and nothing to do with built-in CSS support: warnings 1`] = ` +[ + "ModuleWarning: Module Warning (from \`replaced original path\`): +You can't use \`experiments.css\` (\`experiments.futureDefaults\` enable built-in CSS support by default) and \`css-loader\` together, please set \`experiments.css\` to \`false\` or set \`{ type: "javascript/auto" }\` for rules with \`css-loader\` in your webpack config (now css-loader does nothing).", ] `; -exports[`loader should work with empty options: warnings 1`] = `Array []`; +exports[`loader should work and nothing to do with built-in CSS support: warnings 2`] = ` +[ + "ModuleWarning: Module Warning (from \`replaced original path\`): +You can't use \`experiments.css\` (\`experiments.futureDefaults\` enable built-in CSS support by default) and \`css-loader\` together, please set \`experiments.css\` to \`false\` or set \`{ type: "javascript/auto" }\` for rules with \`css-loader\` in your webpack config (now css-loader does nothing).", +] +`; -exports[`loader should work with the "modules.auto" option and the "importLoaders" option: errors 1`] = `Array []`; +exports[`loader should work in 'production' mode: errors 1`] = `[]`; -exports[`loader should work with the "modules.auto" option and the "importLoaders" option: result 1`] = ` -"/* Pure CSS */ -.imported-by-pure { - overflow-x: hidden; - overflow-y: auto; - overflow: hidden auto; -} -.pure { - color: red; -} +exports[`loader should work in 'production' mode: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../src/runtime/api.js"; +import ___CSS_LOADER_GET_URL_IMPORT___ from "../../src/runtime/getUrl.js"; +var ___CSS_LOADER_URL_IMPORT_0___ = new URL("./url/img.png", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_1___ = new URL("data:img/jpg;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAhxJREFUSA3tk71rU1EYxnMTEoJUkowWwdJ2akEHBfGjCiIF6ZylVUKSm2TqZLGI+A/oIu2UXm8C4lAyF4SWji0tdFLo1Eo7VN0SaBEhH7e/Nz0nPTfGOjiaCyfPc5734zlfCQT6X/8E/vUErL81KBaL9y3LSnued5PcITjUOwR3gsFg2bbtjYt6/NGgXC4P1et1l2aPLmpAbD0SidjpdPqgV15PA9d17zQajU8UxHQRK/4G35Q5pveAK8LlI1ZjPMnlcltnyvnvbwaO41xvtVqy7YHztMACq5xnlb9EY3dRdvcGo1kj5wR+t1AofDG0gM+A875E8DNjRCexsrV8Pj9ZqVQitVrtqejxePxjMpmss5hVTB4buXvMb2DyU2tBTRS+BjvNlVYUpPl7iuVO3Gq1uoQx1FtSOW1gPgp5ZWrdBtNmUDgv5asgxQ8F1af5vhY0YjyjuWC3wTszKJz7GBOkcFlQfW2ONq4FjWi+Hj6DRCKxQOK2TlY4x92EuYd5dvMAbYIzfikau3pu5tJ8KxaLLfo0cyKci7tK4TZjUMcoXAmHwzle0Q/RaC5P1GFMyVx9R9Fo9HYqlTrSgqDvFelAqVQa5hmuMR/WGtjAaBdjwBoDQ0ZsnwVMZjKZ9n0Zem8DSeDPdrnZbL6F2l3NOvUYNZk4oVDoRTabPe4EDNJzB0ZcjAYxeoZ2i3FNxQ7BHYw/cB/fldaH//UETgHHO8S44KbfXgAAAABJRU5ErkJggg==", import.meta.url); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); +var ___CSS_LOADER_URL_REPLACEMENT_1___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_1___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`@charset "UTF-8"; -/* PostCSS */ -.imported-by-postcss { - overflow-x: hidden; - overflow-y: auto; - overflow: hidden auto; -} -.postcss { - color: rgba(0, 0, 255, 0.9) -} -.postcss:hover { - color: #639; - } +/* Comment */ -/* SCSS */ -.imported-by-scss { - overflow-x: hidden; - overflow-y: auto; - overflow: hidden auto; -} -.scss { - font: 100% Helvetica, sans-serif; - color: #333; -} -/* CSS modules */ -.dA97I-anu7-0d9tFzAFON { - overflow-x: hidden; - overflow-y: auto; - overflow: hidden auto; +.class { color: red; + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); } -.global { - color: blue; +.class-duplicate-url { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); } -/* CSS modules + SCSS */ -.imported-by-module-scss { - overflow-x: hidden; - overflow-y: auto; - overflow: hidden auto; -} -._2qRovssCxTKx1PYTv5qdNp { - color: #333; - overflow-x: hidden; - overflow-y: auto; - overflow: hidden auto; +:root { + --foo: 1px; + --bar: 2px; +} + +.class { a: b c d; } + +.two {} + +.u-m\\\\+ { a: b c d; } + +.class { content: "\\\\F10C" } + +@media only screen and (max-width: 600px) { + body { + background-color: lightblue; + } +} + +.class { + content: "\\\\2193"; + content: "\\\\2193\\\\2193"; + content: "\\\\2193 \\\\2193"; + content: "\\\\2193\\\\2193\\\\2193"; + content: "\\\\2193 \\\\2193 \\\\2193"; +} + +.-top {} +.\\\\-top {} + +#\\\\#test {} + +.grid { + display: flex; + flex-wrap: wrap; +} +.grid.\\\\-top { + align-items: flex-start; +} +.grid.-top { + align-items: flex-start; +} +.grid.\\\\-middle { + align-items: center; +} +.grid.\\\\-bottom { + align-items: flex-end; +} + +.u-m\\\\00002b {} + +.u-m00002b {} + +#u-m\\\\+ {} + +body { + font-family: '微软雅黑'; /* some chinese font name */ +} + +.myStyle { + content: '\\\\e901'; +} + +.myStyle { + content: '\\\\E901'; +} + +.♫ {} + +.\\\\3A \\\\\\\`\\\\( {} /* matches elements with class=":\\\`(" */ +.\\\\31 a2b3c {} /* matches elements with class="1a2b3c" */ +#\\\\#fake-id {} /* matches the element with id="#fake-id" */ +#-a-b-c- {} /* matches the element with id="-a-b-c-" */ +#© {} /* matches the element with id="©" */ + +\\\\.\\\\\\\` { + color: aliceblue; +} + +\\\\.\\\\\\$\\\\{foo\\\\} { + color: aliceblue; +} + +/* \\\` */ +/* \\\`\\\` */ +/* \\\`\\\`\\\` */ +/* \\\${} */ +/* \\\\\\\\\\\` */ + +:root { + --title-align: center; + --sr-only: { + position: absolute; + width: 1px; + height: 1px; + padding: 0; + overflow: hidden; + clip: rect(0,0,0,0); + white-space: nowrap; + clip-path: inset(50%); + border: 0; + }; +} + +.test { + content: "\\\\2014\\\\A0"; + content: "\\\\2014 \\\\A0"; + content: "\\\\A0 \\\\2014"; + content: "\\\\A0\\\\2014"; + margin-top: 1px\\\\9; + background-color: #000\\\\9; +} + +.light.on .bulb:before{ + content: '💡'; +} + +.base64 { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_1___}); +} + +a[href=''] { + color: red; +} + +a[href='' i] { + color: red; +} + +a[href=""] { + color: blue; +} + +a[href="" i] { + color: blue; +} +\`, ""]); +// Exports +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`loader should work in 'production' mode: result 1`] = ` +[ + [ + 501, + "@charset "UTF-8"; + + +/* Comment */ + +.class { + color: red; + background: url(replaced_file_protocol_/webpack/public/path/img.png); +} + +.class-duplicate-url { + background: url(replaced_file_protocol_/webpack/public/path/img.png); +} + +:root { + --foo: 1px; + --bar: 2px; +} + +.class { a: b c d; } + +.two {} + +.u-m\\+ { a: b c d; } + +.class { content: "\\F10C" } + +@media only screen and (max-width: 600px) { + body { + background-color: lightblue; + } +} + +.class { + content: "\\2193"; + content: "\\2193\\2193"; + content: "\\2193 \\2193"; + content: "\\2193\\2193\\2193"; + content: "\\2193 \\2193 \\2193"; +} + +.-top {} +.\\-top {} + +#\\#test {} + +.grid { + display: flex; + flex-wrap: wrap; +} +.grid.\\-top { + align-items: flex-start; +} +.grid.-top { + align-items: flex-start; +} +.grid.\\-middle { + align-items: center; +} +.grid.\\-bottom { + align-items: flex-end; +} + +.u-m\\00002b {} + +.u-m00002b {} + +#u-m\\+ {} + +body { + font-family: '微软雅黑'; /* some chinese font name */ +} + +.myStyle { + content: '\\e901'; +} + +.myStyle { + content: '\\E901'; +} + +.♫ {} + +.\\3A \\\`\\( {} /* matches elements with class=":\`(" */ +.\\31 a2b3c {} /* matches elements with class="1a2b3c" */ +#\\#fake-id {} /* matches the element with id="#fake-id" */ +#-a-b-c- {} /* matches the element with id="-a-b-c-" */ +#© {} /* matches the element with id="©" */ + +\\.\\\` { + color: aliceblue; +} + +\\.\\$\\{foo\\} { + color: aliceblue; +} + +/* \` */ +/* \`\` */ +/* \`\`\` */ +/* \${} */ +/* \\\\\` */ + +:root { + --title-align: center; + --sr-only: { + position: absolute; + width: 1px; + height: 1px; + padding: 0; + overflow: hidden; + clip: rect(0,0,0,0); + white-space: nowrap; + clip-path: inset(50%); + border: 0; + }; +} + +.test { + content: "\\2014\\A0"; + content: "\\2014 \\A0"; + content: "\\A0 \\2014"; + content: "\\A0\\2014"; + margin-top: 1px\\9; + background-color: #000\\9; +} + +.light.on .bulb:before{ + content: '💡'; +} + +.base64 { + background: url(data:img/jpg;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAhxJREFUSA3tk71rU1EYxnMTEoJUkowWwdJ2akEHBfGjCiIF6ZylVUKSm2TqZLGI+A/oIu2UXm8C4lAyF4SWji0tdFLo1Eo7VN0SaBEhH7e/Nz0nPTfGOjiaCyfPc5734zlfCQT6X/8E/vUErL81KBaL9y3LSnued5PcITjUOwR3gsFg2bbtjYt6/NGgXC4P1et1l2aPLmpAbD0SidjpdPqgV15PA9d17zQajU8UxHQRK/4G35Q5pveAK8LlI1ZjPMnlcltnyvnvbwaO41xvtVqy7YHztMACq5xnlb9EY3dRdvcGo1kj5wR+t1AofDG0gM+A875E8DNjRCexsrV8Pj9ZqVQitVrtqejxePxjMpmss5hVTB4buXvMb2DyU2tBTRS+BjvNlVYUpPl7iuVO3Gq1uoQx1FtSOW1gPgp5ZWrdBtNmUDgv5asgxQ8F1af5vhY0YjyjuWC3wTszKJz7GBOkcFlQfW2ONq4FjWi+Hj6DRCKxQOK2TlY4x92EuYd5dvMAbYIzfikau3pu5tJ8KxaLLfo0cyKci7tK4TZjUMcoXAmHwzle0Q/RaC5P1GFMyVx9R9Fo9HYqlTrSgqDvFelAqVQa5hmuMR/WGtjAaBdjwBoDQ0ZsnwVMZjKZ9n0Zem8DSeDPdrnZbL6F2l3NOvUYNZk4oVDoRTabPe4EDNJzB0ZcjAYxeoZ2i3FNxQ7BHYw/cB/fldaH//UETgHHO8S44KbfXgAAAABJRU5ErkJggg==); +} + +a[href=''] { + color: red; +} + +a[href='' i] { + color: red; +} + +a[href=""] { + color: blue; +} + +a[href="" i] { + color: blue; +} +", + "", + ], +] +`; + +exports[`loader should work in 'production' mode: warnings 1`] = `[]`; + +exports[`loader should work with "asset" module type: errors 1`] = `[]`; + +exports[`loader should work with "asset" module type: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../src/runtime/api.js"; +import ___CSS_LOADER_GET_URL_IMPORT___ from "../../src/runtime/getUrl.js"; +var ___CSS_LOADER_URL_IMPORT_0___ = new URL("./url/img.png", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_1___ = new URL("data:img/jpg;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAhxJREFUSA3tk71rU1EYxnMTEoJUkowWwdJ2akEHBfGjCiIF6ZylVUKSm2TqZLGI+A/oIu2UXm8C4lAyF4SWji0tdFLo1Eo7VN0SaBEhH7e/Nz0nPTfGOjiaCyfPc5734zlfCQT6X/8E/vUErL81KBaL9y3LSnued5PcITjUOwR3gsFg2bbtjYt6/NGgXC4P1et1l2aPLmpAbD0SidjpdPqgV15PA9d17zQajU8UxHQRK/4G35Q5pveAK8LlI1ZjPMnlcltnyvnvbwaO41xvtVqy7YHztMACq5xnlb9EY3dRdvcGo1kj5wR+t1AofDG0gM+A875E8DNjRCexsrV8Pj9ZqVQitVrtqejxePxjMpmss5hVTB4buXvMb2DyU2tBTRS+BjvNlVYUpPl7iuVO3Gq1uoQx1FtSOW1gPgp5ZWrdBtNmUDgv5asgxQ8F1af5vhY0YjyjuWC3wTszKJz7GBOkcFlQfW2ONq4FjWi+Hj6DRCKxQOK2TlY4x92EuYd5dvMAbYIzfikau3pu5tJ8KxaLLfo0cyKci7tK4TZjUMcoXAmHwzle0Q/RaC5P1GFMyVx9R9Fo9HYqlTrSgqDvFelAqVQa5hmuMR/WGtjAaBdjwBoDQ0ZsnwVMZjKZ9n0Zem8DSeDPdrnZbL6F2l3NOvUYNZk4oVDoRTabPe4EDNJzB0ZcjAYxeoZ2i3FNxQ7BHYw/cB/fldaH//UETgHHO8S44KbfXgAAAABJRU5ErkJggg==", import.meta.url); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); +var ___CSS_LOADER_URL_REPLACEMENT_1___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_1___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`@charset "UTF-8"; + + +/* Comment */ + +.class { + color: red; + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} + +.class-duplicate-url { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} + +:root { + --foo: 1px; + --bar: 2px; +} + +.class { a: b c d; } + +.two {} + +.u-m\\\\+ { a: b c d; } + +.class { content: "\\\\F10C" } + +@media only screen and (max-width: 600px) { + body { + background-color: lightblue; + } +} + +.class { + content: "\\\\2193"; + content: "\\\\2193\\\\2193"; + content: "\\\\2193 \\\\2193"; + content: "\\\\2193\\\\2193\\\\2193"; + content: "\\\\2193 \\\\2193 \\\\2193"; +} + +.-top {} +.\\\\-top {} + +#\\\\#test {} + +.grid { + display: flex; + flex-wrap: wrap; +} +.grid.\\\\-top { + align-items: flex-start; +} +.grid.-top { + align-items: flex-start; +} +.grid.\\\\-middle { + align-items: center; +} +.grid.\\\\-bottom { + align-items: flex-end; +} + +.u-m\\\\00002b {} + +.u-m00002b {} + +#u-m\\\\+ {} + +body { + font-family: '微软雅黑'; /* some chinese font name */ +} + +.myStyle { + content: '\\\\e901'; +} + +.myStyle { + content: '\\\\E901'; +} + +.♫ {} + +.\\\\3A \\\\\\\`\\\\( {} /* matches elements with class=":\\\`(" */ +.\\\\31 a2b3c {} /* matches elements with class="1a2b3c" */ +#\\\\#fake-id {} /* matches the element with id="#fake-id" */ +#-a-b-c- {} /* matches the element with id="-a-b-c-" */ +#© {} /* matches the element with id="©" */ + +\\\\.\\\\\\\` { + color: aliceblue; +} + +\\\\.\\\\\\$\\\\{foo\\\\} { + color: aliceblue; +} + +/* \\\` */ +/* \\\`\\\` */ +/* \\\`\\\`\\\` */ +/* \\\${} */ +/* \\\\\\\\\\\` */ + +:root { + --title-align: center; + --sr-only: { + position: absolute; + width: 1px; + height: 1px; + padding: 0; + overflow: hidden; + clip: rect(0,0,0,0); + white-space: nowrap; + clip-path: inset(50%); + border: 0; + }; +} + +.test { + content: "\\\\2014\\\\A0"; + content: "\\\\2014 \\\\A0"; + content: "\\\\A0 \\\\2014"; + content: "\\\\A0\\\\2014"; + margin-top: 1px\\\\9; + background-color: #000\\\\9; +} + +.light.on .bulb:before{ + content: '💡'; +} + +.base64 { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_1___}); +} + +a[href=''] { + color: red; +} + +a[href='' i] { + color: red; +} + +a[href=""] { + color: blue; +} + +a[href="" i] { + color: blue; +} +\`, ""]); +// Exports +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`loader should work with "asset" module type: result 1`] = ` +[ + [ + "./basic.css", + "@charset "UTF-8"; + + +/* Comment */ + +.class { + color: red; + background: url(replaced_file_protocol_/webpack/public/path/img.png); +} + +.class-duplicate-url { + background: url(replaced_file_protocol_/webpack/public/path/img.png); +} + +:root { + --foo: 1px; + --bar: 2px; +} + +.class { a: b c d; } + +.two {} + +.u-m\\+ { a: b c d; } + +.class { content: "\\F10C" } + +@media only screen and (max-width: 600px) { + body { + background-color: lightblue; + } +} + +.class { + content: "\\2193"; + content: "\\2193\\2193"; + content: "\\2193 \\2193"; + content: "\\2193\\2193\\2193"; + content: "\\2193 \\2193 \\2193"; +} + +.-top {} +.\\-top {} + +#\\#test {} + +.grid { + display: flex; + flex-wrap: wrap; +} +.grid.\\-top { + align-items: flex-start; +} +.grid.-top { + align-items: flex-start; +} +.grid.\\-middle { + align-items: center; +} +.grid.\\-bottom { + align-items: flex-end; +} + +.u-m\\00002b {} + +.u-m00002b {} + +#u-m\\+ {} + +body { + font-family: '微软雅黑'; /* some chinese font name */ +} + +.myStyle { + content: '\\e901'; +} + +.myStyle { + content: '\\E901'; +} + +.♫ {} + +.\\3A \\\`\\( {} /* matches elements with class=":\`(" */ +.\\31 a2b3c {} /* matches elements with class="1a2b3c" */ +#\\#fake-id {} /* matches the element with id="#fake-id" */ +#-a-b-c- {} /* matches the element with id="-a-b-c-" */ +#© {} /* matches the element with id="©" */ + +\\.\\\` { + color: aliceblue; +} + +\\.\\$\\{foo\\} { + color: aliceblue; +} + +/* \` */ +/* \`\` */ +/* \`\`\` */ +/* \${} */ +/* \\\\\` */ + +:root { + --title-align: center; + --sr-only: { + position: absolute; + width: 1px; + height: 1px; + padding: 0; + overflow: hidden; + clip: rect(0,0,0,0); + white-space: nowrap; + clip-path: inset(50%); + border: 0; + }; +} + +.test { + content: "\\2014\\A0"; + content: "\\2014 \\A0"; + content: "\\A0 \\2014"; + content: "\\A0\\2014"; + margin-top: 1px\\9; + background-color: #000\\9; +} + +.light.on .bulb:before{ + content: '💡'; +} + +.base64 { + background: url(data:img/jpg;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAhxJREFUSA3tk71rU1EYxnMTEoJUkowWwdJ2akEHBfGjCiIF6ZylVUKSm2TqZLGI+A/oIu2UXm8C4lAyF4SWji0tdFLo1Eo7VN0SaBEhH7e/Nz0nPTfGOjiaCyfPc5734zlfCQT6X/8E/vUErL81KBaL9y3LSnued5PcITjUOwR3gsFg2bbtjYt6/NGgXC4P1et1l2aPLmpAbD0SidjpdPqgV15PA9d17zQajU8UxHQRK/4G35Q5pveAK8LlI1ZjPMnlcltnyvnvbwaO41xvtVqy7YHztMACq5xnlb9EY3dRdvcGo1kj5wR+t1AofDG0gM+A875E8DNjRCexsrV8Pj9ZqVQitVrtqejxePxjMpmss5hVTB4buXvMb2DyU2tBTRS+BjvNlVYUpPl7iuVO3Gq1uoQx1FtSOW1gPgp5ZWrdBtNmUDgv5asgxQ8F1af5vhY0YjyjuWC3wTszKJz7GBOkcFlQfW2ONq4FjWi+Hj6DRCKxQOK2TlY4x92EuYd5dvMAbYIzfikau3pu5tJ8KxaLLfo0cyKci7tK4TZjUMcoXAmHwzle0Q/RaC5P1GFMyVx9R9Fo9HYqlTrSgqDvFelAqVQa5hmuMR/WGtjAaBdjwBoDQ0ZsnwVMZjKZ9n0Zem8DSeDPdrnZbL6F2l3NOvUYNZk4oVDoRTabPe4EDNJzB0ZcjAYxeoZ2i3FNxQ7BHYw/cB/fldaH//UETgHHO8S44KbfXgAAAABJRU5ErkJggg==); +} + +a[href=''] { + color: red; +} + +a[href='' i] { + color: red; +} + +a[href=""] { + color: blue; +} + +a[href="" i] { + color: blue; +} +", + "", + ], +] +`; + +exports[`loader should work with "asset" module type: warnings 1`] = `[]`; + +exports[`loader should work with "sass-loader": errors 1`] = `[]`; + +exports[`loader should work with "sass-loader": module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../src/runtime/api.js"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`body { + font: 100% Helvetica, sans-serif; + color: #333; +}\`, ""]); +// Exports +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`loader should work with "sass-loader": result 1`] = ` +[ + [ + "./scss/source.scss", + "body { + font: 100% Helvetica, sans-serif; + color: #333; +}", + "", + ], +] +`; + +exports[`loader should work with "sass-loader": warnings 1`] = ` +[ + "ModuleWarning: Module Warning (from \`replaced original path\`): +Deprecation The legacy JS API is deprecated and will be removed in Dart Sass 2.0.0. + +More info: https://sass-lang.com/d/legacy-js-api", +] +`; + +exports[`loader should work with \`templateLiteral\` support: errors 1`] = `[]`; + +exports[`loader should work with \`templateLiteral\` support: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../src/runtime/api.js"; +import ___CSS_LOADER_GET_URL_IMPORT___ from "../../src/runtime/getUrl.js"; +var ___CSS_LOADER_URL_IMPORT_0___ = new URL("./url/img.png", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_1___ = new URL("data:img/jpg;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAhxJREFUSA3tk71rU1EYxnMTEoJUkowWwdJ2akEHBfGjCiIF6ZylVUKSm2TqZLGI+A/oIu2UXm8C4lAyF4SWji0tdFLo1Eo7VN0SaBEhH7e/Nz0nPTfGOjiaCyfPc5734zlfCQT6X/8E/vUErL81KBaL9y3LSnued5PcITjUOwR3gsFg2bbtjYt6/NGgXC4P1et1l2aPLmpAbD0SidjpdPqgV15PA9d17zQajU8UxHQRK/4G35Q5pveAK8LlI1ZjPMnlcltnyvnvbwaO41xvtVqy7YHztMACq5xnlb9EY3dRdvcGo1kj5wR+t1AofDG0gM+A875E8DNjRCexsrV8Pj9ZqVQitVrtqejxePxjMpmss5hVTB4buXvMb2DyU2tBTRS+BjvNlVYUpPl7iuVO3Gq1uoQx1FtSOW1gPgp5ZWrdBtNmUDgv5asgxQ8F1af5vhY0YjyjuWC3wTszKJz7GBOkcFlQfW2ONq4FjWi+Hj6DRCKxQOK2TlY4x92EuYd5dvMAbYIzfikau3pu5tJ8KxaLLfo0cyKci7tK4TZjUMcoXAmHwzle0Q/RaC5P1GFMyVx9R9Fo9HYqlTrSgqDvFelAqVQa5hmuMR/WGtjAaBdjwBoDQ0ZsnwVMZjKZ9n0Zem8DSeDPdrnZbL6F2l3NOvUYNZk4oVDoRTabPe4EDNJzB0ZcjAYxeoZ2i3FNxQ7BHYw/cB/fldaH//UETgHHO8S44KbfXgAAAABJRU5ErkJggg==", import.meta.url); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); +var ___CSS_LOADER_URL_REPLACEMENT_1___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_1___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`@charset "UTF-8"; + + +/* Comment */ + +.class { + color: red; + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} + +.class-duplicate-url { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} + +:root { + --foo: 1px; + --bar: 2px; +} + +.class { a: b c d; } + +.two {} + +.u-m\\\\+ { a: b c d; } + +.class { content: "\\\\F10C" } + +@media only screen and (max-width: 600px) { + body { + background-color: lightblue; + } +} + +.class { + content: "\\\\2193"; + content: "\\\\2193\\\\2193"; + content: "\\\\2193 \\\\2193"; + content: "\\\\2193\\\\2193\\\\2193"; + content: "\\\\2193 \\\\2193 \\\\2193"; +} + +.-top {} +.\\\\-top {} + +#\\\\#test {} + +.grid { + display: flex; + flex-wrap: wrap; +} +.grid.\\\\-top { + align-items: flex-start; +} +.grid.-top { + align-items: flex-start; +} +.grid.\\\\-middle { + align-items: center; +} +.grid.\\\\-bottom { + align-items: flex-end; +} + +.u-m\\\\00002b {} + +.u-m00002b {} + +#u-m\\\\+ {} + +body { + font-family: '微软雅黑'; /* some chinese font name */ +} + +.myStyle { + content: '\\\\e901'; +} + +.myStyle { + content: '\\\\E901'; +} + +.♫ {} + +.\\\\3A \\\\\\\`\\\\( {} /* matches elements with class=":\\\`(" */ +.\\\\31 a2b3c {} /* matches elements with class="1a2b3c" */ +#\\\\#fake-id {} /* matches the element with id="#fake-id" */ +#-a-b-c- {} /* matches the element with id="-a-b-c-" */ +#© {} /* matches the element with id="©" */ + +\\\\.\\\\\\\` { + color: aliceblue; +} + +\\\\.\\\\\\$\\\\{foo\\\\} { + color: aliceblue; +} + +/* \\\` */ +/* \\\`\\\` */ +/* \\\`\\\`\\\` */ +/* \\\${} */ +/* \\\\\\\\\\\` */ + +:root { + --title-align: center; + --sr-only: { + position: absolute; + width: 1px; + height: 1px; + padding: 0; + overflow: hidden; + clip: rect(0,0,0,0); + white-space: nowrap; + clip-path: inset(50%); + border: 0; + }; +} + +.test { + content: "\\\\2014\\\\A0"; + content: "\\\\2014 \\\\A0"; + content: "\\\\A0 \\\\2014"; + content: "\\\\A0\\\\2014"; + margin-top: 1px\\\\9; + background-color: #000\\\\9; +} + +.light.on .bulb:before{ + content: '💡'; +} + +.base64 { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_1___}); +} + +a[href=''] { + color: red; +} + +a[href='' i] { + color: red; +} + +a[href=""] { + color: blue; +} + +a[href="" i] { + color: blue; +} +\`, ""]); +// Exports +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`loader should work with \`templateLiteral\` support: result 1`] = ` +[ + [ + "./basic.css", + "@charset "UTF-8"; + + +/* Comment */ + +.class { + color: red; + background: url(replaced_file_protocol_/webpack/public/path/img.png); +} + +.class-duplicate-url { + background: url(replaced_file_protocol_/webpack/public/path/img.png); +} + +:root { + --foo: 1px; + --bar: 2px; +} + +.class { a: b c d; } + +.two {} + +.u-m\\+ { a: b c d; } + +.class { content: "\\F10C" } + +@media only screen and (max-width: 600px) { + body { + background-color: lightblue; + } +} + +.class { + content: "\\2193"; + content: "\\2193\\2193"; + content: "\\2193 \\2193"; + content: "\\2193\\2193\\2193"; + content: "\\2193 \\2193 \\2193"; +} + +.-top {} +.\\-top {} + +#\\#test {} + +.grid { + display: flex; + flex-wrap: wrap; +} +.grid.\\-top { + align-items: flex-start; +} +.grid.-top { + align-items: flex-start; +} +.grid.\\-middle { + align-items: center; +} +.grid.\\-bottom { + align-items: flex-end; +} + +.u-m\\00002b {} + +.u-m00002b {} + +#u-m\\+ {} + +body { + font-family: '微软雅黑'; /* some chinese font name */ +} + +.myStyle { + content: '\\e901'; +} + +.myStyle { + content: '\\E901'; +} + +.♫ {} + +.\\3A \\\`\\( {} /* matches elements with class=":\`(" */ +.\\31 a2b3c {} /* matches elements with class="1a2b3c" */ +#\\#fake-id {} /* matches the element with id="#fake-id" */ +#-a-b-c- {} /* matches the element with id="-a-b-c-" */ +#© {} /* matches the element with id="©" */ + +\\.\\\` { + color: aliceblue; +} + +\\.\\$\\{foo\\} { + color: aliceblue; +} + +/* \` */ +/* \`\` */ +/* \`\`\` */ +/* \${} */ +/* \\\\\` */ + +:root { + --title-align: center; + --sr-only: { + position: absolute; + width: 1px; + height: 1px; + padding: 0; + overflow: hidden; + clip: rect(0,0,0,0); + white-space: nowrap; + clip-path: inset(50%); + border: 0; + }; +} + +.test { + content: "\\2014\\A0"; + content: "\\2014 \\A0"; + content: "\\A0 \\2014"; + content: "\\A0\\2014"; + margin-top: 1px\\9; + background-color: #000\\9; +} + +.light.on .bulb:before{ + content: '💡'; +} + +.base64 { + background: url(data:img/jpg;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAhxJREFUSA3tk71rU1EYxnMTEoJUkowWwdJ2akEHBfGjCiIF6ZylVUKSm2TqZLGI+A/oIu2UXm8C4lAyF4SWji0tdFLo1Eo7VN0SaBEhH7e/Nz0nPTfGOjiaCyfPc5734zlfCQT6X/8E/vUErL81KBaL9y3LSnued5PcITjUOwR3gsFg2bbtjYt6/NGgXC4P1et1l2aPLmpAbD0SidjpdPqgV15PA9d17zQajU8UxHQRK/4G35Q5pveAK8LlI1ZjPMnlcltnyvnvbwaO41xvtVqy7YHztMACq5xnlb9EY3dRdvcGo1kj5wR+t1AofDG0gM+A875E8DNjRCexsrV8Pj9ZqVQitVrtqejxePxjMpmss5hVTB4buXvMb2DyU2tBTRS+BjvNlVYUpPl7iuVO3Gq1uoQx1FtSOW1gPgp5ZWrdBtNmUDgv5asgxQ8F1af5vhY0YjyjuWC3wTszKJz7GBOkcFlQfW2ONq4FjWi+Hj6DRCKxQOK2TlY4x92EuYd5dvMAbYIzfikau3pu5tJ8KxaLLfo0cyKci7tK4TZjUMcoXAmHwzle0Q/RaC5P1GFMyVx9R9Fo9HYqlTrSgqDvFelAqVQa5hmuMR/WGtjAaBdjwBoDQ0ZsnwVMZjKZ9n0Zem8DSeDPdrnZbL6F2l3NOvUYNZk4oVDoRTabPe4EDNJzB0ZcjAYxeoZ2i3FNxQ7BHYw/cB/fldaH//UETgHHO8S44KbfXgAAAABJRU5ErkJggg==); +} + +a[href=''] { + color: red; +} + +a[href='' i] { + color: red; +} + +a[href=""] { + color: blue; +} + +a[href="" i] { + color: blue; +} +", + "", + ], +] +`; + +exports[`loader should work with \`templateLiteral\` support: warnings 1`] = `[]`; + +exports[`loader should work with ModuleConcatenationPlugin (file-loader): errors 1`] = `[]`; + +exports[`loader should work with ModuleConcatenationPlugin (file-loader): warnings 1`] = `[]`; + +exports[`loader should work with ModuleConcatenationPlugin (url-loader): errors 1`] = `[]`; + +exports[`loader should work with ModuleConcatenationPlugin (url-loader): warnings 1`] = `[]`; + +exports[`loader should work with ModuleConcatenationPlugin: errors 1`] = `[]`; + +exports[`loader should work with ModuleConcatenationPlugin: warnings 1`] = `[]`; + +exports[`loader should work with built-in CSS support: errors 1`] = `[]`; + +exports[`loader should work with built-in CSS support: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../src/runtime/api.js"; +import ___CSS_LOADER_GET_URL_IMPORT___ from "../../src/runtime/getUrl.js"; +var ___CSS_LOADER_URL_IMPORT_0___ = new URL("./url/img.png", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_1___ = new URL("data:img/jpg;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAhxJREFUSA3tk71rU1EYxnMTEoJUkowWwdJ2akEHBfGjCiIF6ZylVUKSm2TqZLGI+A/oIu2UXm8C4lAyF4SWji0tdFLo1Eo7VN0SaBEhH7e/Nz0nPTfGOjiaCyfPc5734zlfCQT6X/8E/vUErL81KBaL9y3LSnued5PcITjUOwR3gsFg2bbtjYt6/NGgXC4P1et1l2aPLmpAbD0SidjpdPqgV15PA9d17zQajU8UxHQRK/4G35Q5pveAK8LlI1ZjPMnlcltnyvnvbwaO41xvtVqy7YHztMACq5xnlb9EY3dRdvcGo1kj5wR+t1AofDG0gM+A875E8DNjRCexsrV8Pj9ZqVQitVrtqejxePxjMpmss5hVTB4buXvMb2DyU2tBTRS+BjvNlVYUpPl7iuVO3Gq1uoQx1FtSOW1gPgp5ZWrdBtNmUDgv5asgxQ8F1af5vhY0YjyjuWC3wTszKJz7GBOkcFlQfW2ONq4FjWi+Hj6DRCKxQOK2TlY4x92EuYd5dvMAbYIzfikau3pu5tJ8KxaLLfo0cyKci7tK4TZjUMcoXAmHwzle0Q/RaC5P1GFMyVx9R9Fo9HYqlTrSgqDvFelAqVQa5hmuMR/WGtjAaBdjwBoDQ0ZsnwVMZjKZ9n0Zem8DSeDPdrnZbL6F2l3NOvUYNZk4oVDoRTabPe4EDNJzB0ZcjAYxeoZ2i3FNxQ7BHYw/cB/fldaH//UETgHHO8S44KbfXgAAAABJRU5ErkJggg==", import.meta.url); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); +var ___CSS_LOADER_URL_REPLACEMENT_1___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_1___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`@charset "UTF-8"; + + +/* Comment */ + +.class { + color: red; + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} + +.class-duplicate-url { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} + +:root { + --foo: 1px; + --bar: 2px; +} + +.class { a: b c d; } + +.two {} + +.u-m\\\\+ { a: b c d; } + +.class { content: "\\\\F10C" } + +@media only screen and (max-width: 600px) { + body { + background-color: lightblue; + } +} + +.class { + content: "\\\\2193"; + content: "\\\\2193\\\\2193"; + content: "\\\\2193 \\\\2193"; + content: "\\\\2193\\\\2193\\\\2193"; + content: "\\\\2193 \\\\2193 \\\\2193"; +} + +.-top {} +.\\\\-top {} + +#\\\\#test {} + +.grid { + display: flex; + flex-wrap: wrap; +} +.grid.\\\\-top { + align-items: flex-start; +} +.grid.-top { + align-items: flex-start; +} +.grid.\\\\-middle { + align-items: center; +} +.grid.\\\\-bottom { + align-items: flex-end; +} + +.u-m\\\\00002b {} + +.u-m00002b {} + +#u-m\\\\+ {} + +body { + font-family: '微软雅黑'; /* some chinese font name */ +} + +.myStyle { + content: '\\\\e901'; +} + +.myStyle { + content: '\\\\E901'; +} + +.♫ {} + +.\\\\3A \\\\\\\`\\\\( {} /* matches elements with class=":\\\`(" */ +.\\\\31 a2b3c {} /* matches elements with class="1a2b3c" */ +#\\\\#fake-id {} /* matches the element with id="#fake-id" */ +#-a-b-c- {} /* matches the element with id="-a-b-c-" */ +#© {} /* matches the element with id="©" */ + +\\\\.\\\\\\\` { + color: aliceblue; +} + +\\\\.\\\\\\$\\\\{foo\\\\} { + color: aliceblue; +} + +/* \\\` */ +/* \\\`\\\` */ +/* \\\`\\\`\\\` */ +/* \\\${} */ +/* \\\\\\\\\\\` */ + +:root { + --title-align: center; + --sr-only: { + position: absolute; + width: 1px; + height: 1px; + padding: 0; + overflow: hidden; + clip: rect(0,0,0,0); + white-space: nowrap; + clip-path: inset(50%); + border: 0; + }; +} + +.test { + content: "\\\\2014\\\\A0"; + content: "\\\\2014 \\\\A0"; + content: "\\\\A0 \\\\2014"; + content: "\\\\A0\\\\2014"; + margin-top: 1px\\\\9; + background-color: #000\\\\9; +} + +.light.on .bulb:before{ + content: '💡'; +} + +.base64 { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_1___}); +} + +a[href=''] { + color: red; +} + +a[href='' i] { + color: red; +} + +a[href=""] { + color: blue; +} + +a[href="" i] { + color: blue; +} +\`, ""]); +// Exports +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`loader should work with built-in CSS support: result 1`] = ` +[ + [ + "./basic.css", + "@charset "UTF-8"; + + +/* Comment */ + +.class { + color: red; + background: url(replaced_file_protocol_/webpack/public/path/img.png); +} + +.class-duplicate-url { + background: url(replaced_file_protocol_/webpack/public/path/img.png); +} + +:root { + --foo: 1px; + --bar: 2px; +} + +.class { a: b c d; } + +.two {} + +.u-m\\+ { a: b c d; } + +.class { content: "\\F10C" } + +@media only screen and (max-width: 600px) { + body { + background-color: lightblue; + } +} + +.class { + content: "\\2193"; + content: "\\2193\\2193"; + content: "\\2193 \\2193"; + content: "\\2193\\2193\\2193"; + content: "\\2193 \\2193 \\2193"; +} + +.-top {} +.\\-top {} + +#\\#test {} + +.grid { + display: flex; + flex-wrap: wrap; +} +.grid.\\-top { + align-items: flex-start; +} +.grid.-top { + align-items: flex-start; +} +.grid.\\-middle { + align-items: center; +} +.grid.\\-bottom { + align-items: flex-end; +} + +.u-m\\00002b {} + +.u-m00002b {} + +#u-m\\+ {} + +body { + font-family: '微软雅黑'; /* some chinese font name */ +} + +.myStyle { + content: '\\e901'; +} + +.myStyle { + content: '\\E901'; +} + +.♫ {} + +.\\3A \\\`\\( {} /* matches elements with class=":\`(" */ +.\\31 a2b3c {} /* matches elements with class="1a2b3c" */ +#\\#fake-id {} /* matches the element with id="#fake-id" */ +#-a-b-c- {} /* matches the element with id="-a-b-c-" */ +#© {} /* matches the element with id="©" */ + +\\.\\\` { + color: aliceblue; +} + +\\.\\$\\{foo\\} { + color: aliceblue; +} + +/* \` */ +/* \`\` */ +/* \`\`\` */ +/* \${} */ +/* \\\\\` */ + +:root { + --title-align: center; + --sr-only: { + position: absolute; + width: 1px; + height: 1px; + padding: 0; + overflow: hidden; + clip: rect(0,0,0,0); + white-space: nowrap; + clip-path: inset(50%); + border: 0; + }; +} + +.test { + content: "\\2014\\A0"; + content: "\\2014 \\A0"; + content: "\\A0 \\2014"; + content: "\\A0\\2014"; + margin-top: 1px\\9; + background-color: #000\\9; +} + +.light.on .bulb:before{ + content: '💡'; +} + +.base64 { + background: url(data:img/jpg;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAhxJREFUSA3tk71rU1EYxnMTEoJUkowWwdJ2akEHBfGjCiIF6ZylVUKSm2TqZLGI+A/oIu2UXm8C4lAyF4SWji0tdFLo1Eo7VN0SaBEhH7e/Nz0nPTfGOjiaCyfPc5734zlfCQT6X/8E/vUErL81KBaL9y3LSnued5PcITjUOwR3gsFg2bbtjYt6/NGgXC4P1et1l2aPLmpAbD0SidjpdPqgV15PA9d17zQajU8UxHQRK/4G35Q5pveAK8LlI1ZjPMnlcltnyvnvbwaO41xvtVqy7YHztMACq5xnlb9EY3dRdvcGo1kj5wR+t1AofDG0gM+A875E8DNjRCexsrV8Pj9ZqVQitVrtqejxePxjMpmss5hVTB4buXvMb2DyU2tBTRS+BjvNlVYUpPl7iuVO3Gq1uoQx1FtSOW1gPgp5ZWrdBtNmUDgv5asgxQ8F1af5vhY0YjyjuWC3wTszKJz7GBOkcFlQfW2ONq4FjWi+Hj6DRCKxQOK2TlY4x92EuYd5dvMAbYIzfikau3pu5tJ8KxaLLfo0cyKci7tK4TZjUMcoXAmHwzle0Q/RaC5P1GFMyVx9R9Fo9HYqlTrSgqDvFelAqVQa5hmuMR/WGtjAaBdjwBoDQ0ZsnwVMZjKZ9n0Zem8DSeDPdrnZbL6F2l3NOvUYNZk4oVDoRTabPe4EDNJzB0ZcjAYxeoZ2i3FNxQ7BHYw/cB/fldaH//UETgHHO8S44KbfXgAAAABJRU5ErkJggg==); +} + +a[href=''] { + color: red; +} + +a[href='' i] { + color: red; +} + +a[href=""] { + color: blue; +} + +a[href="" i] { + color: blue; +} +", + "", + ], +] +`; + +exports[`loader should work with built-in CSS support: warnings 1`] = `[]`; + +exports[`loader should work with empty css: errors 1`] = `[]`; + +exports[`loader should work with empty css: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../src/runtime/api.js"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`\`, ""]); +// Exports +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`loader should work with empty css: result 1`] = ` +[ + [ + "./empty.css", + "", + "", + ], +] +`; + +exports[`loader should work with empty css: warnings 1`] = `[]`; + +exports[`loader should work with empty options: errors 1`] = `[]`; + +exports[`loader should work with empty options: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../src/runtime/api.js"; +import ___CSS_LOADER_GET_URL_IMPORT___ from "../../src/runtime/getUrl.js"; +var ___CSS_LOADER_URL_IMPORT_0___ = new URL("./url/img.png", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_1___ = new URL("data:img/jpg;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAhxJREFUSA3tk71rU1EYxnMTEoJUkowWwdJ2akEHBfGjCiIF6ZylVUKSm2TqZLGI+A/oIu2UXm8C4lAyF4SWji0tdFLo1Eo7VN0SaBEhH7e/Nz0nPTfGOjiaCyfPc5734zlfCQT6X/8E/vUErL81KBaL9y3LSnued5PcITjUOwR3gsFg2bbtjYt6/NGgXC4P1et1l2aPLmpAbD0SidjpdPqgV15PA9d17zQajU8UxHQRK/4G35Q5pveAK8LlI1ZjPMnlcltnyvnvbwaO41xvtVqy7YHztMACq5xnlb9EY3dRdvcGo1kj5wR+t1AofDG0gM+A875E8DNjRCexsrV8Pj9ZqVQitVrtqejxePxjMpmss5hVTB4buXvMb2DyU2tBTRS+BjvNlVYUpPl7iuVO3Gq1uoQx1FtSOW1gPgp5ZWrdBtNmUDgv5asgxQ8F1af5vhY0YjyjuWC3wTszKJz7GBOkcFlQfW2ONq4FjWi+Hj6DRCKxQOK2TlY4x92EuYd5dvMAbYIzfikau3pu5tJ8KxaLLfo0cyKci7tK4TZjUMcoXAmHwzle0Q/RaC5P1GFMyVx9R9Fo9HYqlTrSgqDvFelAqVQa5hmuMR/WGtjAaBdjwBoDQ0ZsnwVMZjKZ9n0Zem8DSeDPdrnZbL6F2l3NOvUYNZk4oVDoRTabPe4EDNJzB0ZcjAYxeoZ2i3FNxQ7BHYw/cB/fldaH//UETgHHO8S44KbfXgAAAABJRU5ErkJggg==", import.meta.url); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); +var ___CSS_LOADER_URL_REPLACEMENT_1___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_1___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`@charset "UTF-8"; + + +/* Comment */ + +.class { + color: red; + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} + +.class-duplicate-url { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} + +:root { + --foo: 1px; + --bar: 2px; +} + +.class { a: b c d; } + +.two {} + +.u-m\\\\+ { a: b c d; } + +.class { content: "\\\\F10C" } + +@media only screen and (max-width: 600px) { + body { + background-color: lightblue; + } +} + +.class { + content: "\\\\2193"; + content: "\\\\2193\\\\2193"; + content: "\\\\2193 \\\\2193"; + content: "\\\\2193\\\\2193\\\\2193"; + content: "\\\\2193 \\\\2193 \\\\2193"; +} + +.-top {} +.\\\\-top {} + +#\\\\#test {} + +.grid { + display: flex; + flex-wrap: wrap; +} +.grid.\\\\-top { + align-items: flex-start; +} +.grid.-top { + align-items: flex-start; +} +.grid.\\\\-middle { + align-items: center; +} +.grid.\\\\-bottom { + align-items: flex-end; +} + +.u-m\\\\00002b {} + +.u-m00002b {} + +#u-m\\\\+ {} + +body { + font-family: '微软雅黑'; /* some chinese font name */ +} + +.myStyle { + content: '\\\\e901'; +} + +.myStyle { + content: '\\\\E901'; +} + +.♫ {} + +.\\\\3A \\\\\\\`\\\\( {} /* matches elements with class=":\\\`(" */ +.\\\\31 a2b3c {} /* matches elements with class="1a2b3c" */ +#\\\\#fake-id {} /* matches the element with id="#fake-id" */ +#-a-b-c- {} /* matches the element with id="-a-b-c-" */ +#© {} /* matches the element with id="©" */ + +\\\\.\\\\\\\` { + color: aliceblue; +} + +\\\\.\\\\\\$\\\\{foo\\\\} { + color: aliceblue; +} + +/* \\\` */ +/* \\\`\\\` */ +/* \\\`\\\`\\\` */ +/* \\\${} */ +/* \\\\\\\\\\\` */ + +:root { + --title-align: center; + --sr-only: { + position: absolute; + width: 1px; + height: 1px; + padding: 0; + overflow: hidden; + clip: rect(0,0,0,0); + white-space: nowrap; + clip-path: inset(50%); + border: 0; + }; +} + +.test { + content: "\\\\2014\\\\A0"; + content: "\\\\2014 \\\\A0"; + content: "\\\\A0 \\\\2014"; + content: "\\\\A0\\\\2014"; + margin-top: 1px\\\\9; + background-color: #000\\\\9; +} + +.light.on .bulb:before{ + content: '💡'; +} + +.base64 { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_1___}); +} + +a[href=''] { + color: red; +} + +a[href='' i] { + color: red; +} + +a[href=""] { + color: blue; +} + +a[href="" i] { + color: blue; +} +\`, ""]); +// Exports +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`loader should work with empty options: result 1`] = ` +[ + [ + "./basic.css", + "@charset "UTF-8"; + + +/* Comment */ + +.class { + color: red; + background: url(replaced_file_protocol_/webpack/public/path/img.png); +} + +.class-duplicate-url { + background: url(replaced_file_protocol_/webpack/public/path/img.png); +} + +:root { + --foo: 1px; + --bar: 2px; +} + +.class { a: b c d; } + +.two {} + +.u-m\\+ { a: b c d; } + +.class { content: "\\F10C" } + +@media only screen and (max-width: 600px) { + body { + background-color: lightblue; + } +} + +.class { + content: "\\2193"; + content: "\\2193\\2193"; + content: "\\2193 \\2193"; + content: "\\2193\\2193\\2193"; + content: "\\2193 \\2193 \\2193"; +} + +.-top {} +.\\-top {} + +#\\#test {} + +.grid { + display: flex; + flex-wrap: wrap; +} +.grid.\\-top { + align-items: flex-start; +} +.grid.-top { + align-items: flex-start; +} +.grid.\\-middle { + align-items: center; +} +.grid.\\-bottom { + align-items: flex-end; +} + +.u-m\\00002b {} + +.u-m00002b {} + +#u-m\\+ {} + +body { + font-family: '微软雅黑'; /* some chinese font name */ +} + +.myStyle { + content: '\\e901'; +} + +.myStyle { + content: '\\E901'; +} + +.♫ {} + +.\\3A \\\`\\( {} /* matches elements with class=":\`(" */ +.\\31 a2b3c {} /* matches elements with class="1a2b3c" */ +#\\#fake-id {} /* matches the element with id="#fake-id" */ +#-a-b-c- {} /* matches the element with id="-a-b-c-" */ +#© {} /* matches the element with id="©" */ + +\\.\\\` { + color: aliceblue; +} + +\\.\\$\\{foo\\} { + color: aliceblue; +} + +/* \` */ +/* \`\` */ +/* \`\`\` */ +/* \${} */ +/* \\\\\` */ + +:root { + --title-align: center; + --sr-only: { + position: absolute; + width: 1px; + height: 1px; + padding: 0; + overflow: hidden; + clip: rect(0,0,0,0); + white-space: nowrap; + clip-path: inset(50%); + border: 0; + }; +} + +.test { + content: "\\2014\\A0"; + content: "\\2014 \\A0"; + content: "\\A0 \\2014"; + content: "\\A0\\2014"; + margin-top: 1px\\9; + background-color: #000\\9; +} + +.light.on .bulb:before{ + content: '💡'; +} + +.base64 { + background: url(data:img/jpg;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAhxJREFUSA3tk71rU1EYxnMTEoJUkowWwdJ2akEHBfGjCiIF6ZylVUKSm2TqZLGI+A/oIu2UXm8C4lAyF4SWji0tdFLo1Eo7VN0SaBEhH7e/Nz0nPTfGOjiaCyfPc5734zlfCQT6X/8E/vUErL81KBaL9y3LSnued5PcITjUOwR3gsFg2bbtjYt6/NGgXC4P1et1l2aPLmpAbD0SidjpdPqgV15PA9d17zQajU8UxHQRK/4G35Q5pveAK8LlI1ZjPMnlcltnyvnvbwaO41xvtVqy7YHztMACq5xnlb9EY3dRdvcGo1kj5wR+t1AofDG0gM+A875E8DNjRCexsrV8Pj9ZqVQitVrtqejxePxjMpmss5hVTB4buXvMb2DyU2tBTRS+BjvNlVYUpPl7iuVO3Gq1uoQx1FtSOW1gPgp5ZWrdBtNmUDgv5asgxQ8F1af5vhY0YjyjuWC3wTszKJz7GBOkcFlQfW2ONq4FjWi+Hj6DRCKxQOK2TlY4x92EuYd5dvMAbYIzfikau3pu5tJ8KxaLLfo0cyKci7tK4TZjUMcoXAmHwzle0Q/RaC5P1GFMyVx9R9Fo9HYqlTrSgqDvFelAqVQa5hmuMR/WGtjAaBdjwBoDQ0ZsnwVMZjKZ9n0Zem8DSeDPdrnZbL6F2l3NOvUYNZk4oVDoRTabPe4EDNJzB0ZcjAYxeoZ2i3FNxQ7BHYw/cB/fldaH//UETgHHO8S44KbfXgAAAABJRU5ErkJggg==); +} + +a[href=''] { + color: red; +} + +a[href='' i] { + color: red; +} + +a[href=""] { + color: blue; +} + +a[href="" i] { + color: blue; +} +", + "", + ], +] +`; + +exports[`loader should work with empty options: warnings 1`] = `[]`; + +exports[`loader should work with inline module syntax: errors 1`] = `[]`; + +exports[`loader should work with inline module syntax: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../src/runtime/api.js"; +import ___CSS_LOADER_AT_RULE_IMPORT_0___ from "other.modules.css!=!-!../../src/index.js??ruleSet[1].rules[0].rules[0]!../../node_modules/sass-loader/dist/cjs.js!./index-loader-syntax.modules.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_1___ from "plain.scss!=!-!../../src/index.js??ruleSet[1].rules[0].rules[0]!../../node_modules/sass-loader/dist/cjs.js!./index-loader-syntax-sass.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_2___ from "other.modules.scss!=!-!../../src/index.js??ruleSet[1].rules[0].rules[0]!../../node_modules/sass-loader/dist/cjs.js!./index-loader-syntax-sass.modules.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_3___ from "other.modules.css!=!-!../../src/index.js??ruleSet[1].rules[0].rules[0]!../../node_modules/sass-loader/dist/cjs.js!./my-inline-loader!./index-loader-syntax.modules.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_4___ from "plain.scss!=!-!../../src/index.js??ruleSet[1].rules[0].rules[0]!../../node_modules/sass-loader/dist/cjs.js!./my-inline-loader!./index-loader-syntax.modules.css"; +import ___CSS_LOADER_AT_RULE_IMPORT_5___ from "other.modules.scss!=!-!../../src/index.js??ruleSet[1].rules[0].rules[0]!../../node_modules/sass-loader/dist/cjs.js!./my-inline-loader!./index-loader-syntax-sass.modules.css"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_1___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_2___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_3___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_4___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_5___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`.a { + color: red; +}\`, ""]); +// Exports +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`loader should work with inline module syntax: result 1`] = ` +[ + [ + "other.modules.css!=!../../src/index.js??ruleSet[1].rules[0].rules[0]!../../node_modules/sass-loader/dist/cjs.js!./index-loader-syntax.modules.css", + ".ZVx7VAdLOO3PJ1TqkYUn { + color: red; +} + +.x0BV6RnIqi6PTJ6If2oA { + color: white; +}", + "", + ], + [ + "button.modules.css!=!./index-loader-syntax-sass.css", + ".n6iVkcAs9Wu9ovztqf8g { + width: 5px; +}", + "", + ], + [ + "other.modules.scss!=!../../src/index.js??ruleSet[1].rules[0].rules[0]!../../node_modules/sass-loader/dist/cjs.js!./index-loader-syntax-sass.modules.css", + ".NF9v028MAhreSp2TJZnn > .ss2pNzM7P7DcLJerCZFm { + color: red; +}", + "", + ], + [ + "other.modules.css!=!../../src/index.js??ruleSet[1].rules[0].rules[0]!../../node_modules/sass-loader/dist/cjs.js!./my-inline-loader/index.js!./index-loader-syntax.modules.css", + ".ZVx7VAdLOO3PJ1TqkYUn { + color: red; +} + +.x0BV6RnIqi6PTJ6If2oA { + color: white; +} + +.bNEIH_2ycglHGlceq20s { + from: custom; +}", + "", + ], + [ + "other.modules.css!=!../../src/index.js??ruleSet[1].rules[0].rules[0]!../../node_modules/sass-loader/dist/cjs.js!./my-inline-loader/index.js!./index-loader-syntax.modules.css", + ".ZVx7VAdLOO3PJ1TqkYUn { + color: red; +} + +.x0BV6RnIqi6PTJ6If2oA { + color: white; +} + +.bNEIH_2ycglHGlceq20s { + from: custom; +}", + "", + ], + [ + "other.modules.scss!=!../../src/index.js??ruleSet[1].rules[0].rules[0]!../../node_modules/sass-loader/dist/cjs.js!./my-inline-loader/index.js!./index-loader-syntax-sass.modules.css", + ".NF9v028MAhreSp2TJZnn > .ss2pNzM7P7DcLJerCZFm { + color: red; +} + +.NMxzPXmuJS2nd8LarB5I { + from: custom; +}", + "", + ], + [ + "./index-loader-syntax.css", + ".a { + color: red; +}", + "", + ], + [ + "button.modules.css!=!./index-loader-syntax-sass.css", + ".n6iVkcAs9Wu9ovztqf8g { + width: 5px; +}", + "", + ], + [ + "button.module.scss!=!./base64-loader/index.js?LmZvbyB7IGNvbG9yOiByZWQ7IH0=!./simple.js?foo=bar", + ".QwIaKzIX2nnuKwGnu953 { + color: red; +}", + "", + ], + [ + "other.module.scss!=!./base64-loader/index.js?LmZvbyB7IGNvbG9yOiByZWQ7IH0=!./simple.js?foo=baz", + ".L_0U1ZWuSHuIqdUV6KjO { + color: red; +}", + "", + ], +] +`; + +exports[`loader should work with inline module syntax: warnings 1`] = ` +[ + "ModuleWarning: Module Warning (from \`replaced original path\`): +Deprecation The legacy JS API is deprecated and will be removed in Dart Sass 2.0.0. + +More info: https://sass-lang.com/d/legacy-js-api", + "ModuleWarning: Module Warning (from \`replaced original path\`): +Deprecation The legacy JS API is deprecated and will be removed in Dart Sass 2.0.0. + +More info: https://sass-lang.com/d/legacy-js-api", + "ModuleWarning: Module Warning (from \`replaced original path\`): +Deprecation The legacy JS API is deprecated and will be removed in Dart Sass 2.0.0. + +More info: https://sass-lang.com/d/legacy-js-api", + "ModuleWarning: Module Warning (from \`replaced original path\`): +Deprecation The legacy JS API is deprecated and will be removed in Dart Sass 2.0.0. + +More info: https://sass-lang.com/d/legacy-js-api", + "ModuleWarning: Module Warning (from \`replaced original path\`): +Deprecation The legacy JS API is deprecated and will be removed in Dart Sass 2.0.0. + +More info: https://sass-lang.com/d/legacy-js-api", + "ModuleWarning: Module Warning (from \`replaced original path\`): +Deprecation The legacy JS API is deprecated and will be removed in Dart Sass 2.0.0. + +More info: https://sass-lang.com/d/legacy-js-api", + "ModuleWarning: Module Warning (from \`replaced original path\`): +Deprecation The legacy JS API is deprecated and will be removed in Dart Sass 2.0.0. + +More info: https://sass-lang.com/d/legacy-js-api", + "ModuleWarning: Module Warning (from \`replaced original path\`): +Deprecation The legacy JS API is deprecated and will be removed in Dart Sass 2.0.0. + +More info: https://sass-lang.com/d/legacy-js-api", +] +`; + +exports[`loader should work with none AST metadata: errors 1`] = `[]`; + +exports[`loader should work with none AST metadata: result 1`] = ` +[ + [ + "./simple.css", + ".some-class { + color: red; +} +", + "", + ], +] +`; + +exports[`loader should work with none AST metadata: warnings 1`] = `[]`; + +exports[`loader should work with the "modules.auto" option and the "import.loaders" option: errors 1`] = `[]`; + +exports[`loader should work with the "modules.auto" option and the "import.loaders" option: result 1`] = ` +"/* Pure CSS */ +.imported-by-pure { + overflow-x: hidden; + overflow-y: auto; + overflow: hidden auto; +} +.pure { + color: red; +} + +/* PostCSS */ +.imported-by-postcss { + overflow-x: hidden; + overflow-y: auto; + overflow: hidden auto; +} +.postcss { + color: rgba(0, 0, 255, 0.9); +} + +.postcss:hover { + color: #639; + } + +/* SCSS */ +.imported-by-scss { + overflow-x: hidden; + overflow-y: auto; + overflow: hidden auto; +} +.scss { + font: 100% Helvetica, sans-serif; + color: #333; +} +/* CSS modules */ +.kSlR28XrNKt9I9mzvNxN { + overflow-x: hidden; + overflow-y: auto; + overflow: hidden auto; + color: red; +} + +.global { + color: blue; +} + +/* CSS modules + SCSS */ +.imported-by-module-scss { + overflow-x: hidden; + overflow-y: auto; + overflow: hidden auto; +} +.lE126I07pG7EhKO3j2bD { + color: #333; + overflow-x: hidden; + overflow-y: auto; + overflow: hidden auto; } .global { color: #333; } -" -`; +" +`; + +exports[`loader should work with the "modules.auto" option and the "import.loaders" option: warnings 1`] = ` +[ + "ModuleWarning: Module Warning (from \`replaced original path\`): +Deprecation The legacy JS API is deprecated and will be removed in Dart Sass 2.0.0. + +More info: https://sass-lang.com/d/legacy-js-api", + "ModuleWarning: Module Warning (from \`replaced original path\`): +Deprecation The legacy JS API is deprecated and will be removed in Dart Sass 2.0.0. + +More info: https://sass-lang.com/d/legacy-js-api", +] +`; + +exports[`loader should work with webpackIgnore comment: errors 1`] = `[]`; + +exports[`loader should work with webpackIgnore comment: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../src/runtime/api.js"; +import ___CSS_LOADER_AT_RULE_IMPORT_0___ from "-!../../src/index.js??ruleSet[1].rules[0].use[0]!./simple.css"; +import ___CSS_LOADER_GET_URL_IMPORT___ from "../../src/runtime/getUrl.js"; +var ___CSS_LOADER_URL_IMPORT_0___ = new URL("./url/img.png", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_1___ = new URL("./fonts/Roboto-Regular.woff2", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_2___ = new URL("./fonts/Roboto-Regular.woff", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_3___ = new URL("./fonts/Roboto-Regular.ttf", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_4___ = new URL("./fonts/Roboto-Regular.svg", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_5___ = new URL("./fonts/Roboto-Regular.eot", import.meta.url); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(./basic.css);"]); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(./imported.css);"]); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(./simple.css);"]); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(./simple.css);"]); +___CSS_LOADER_EXPORT___.push([module.id, "@import url(./simple.css);"]); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); +var ___CSS_LOADER_URL_REPLACEMENT_1___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_1___); +var ___CSS_LOADER_URL_REPLACEMENT_2___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_2___); +var ___CSS_LOADER_URL_REPLACEMENT_3___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_3___); +var ___CSS_LOADER_URL_REPLACEMENT_4___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_4___, { hash: "#Roboto-Regular" }); +var ___CSS_LOADER_URL_REPLACEMENT_5___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_5___); +var ___CSS_LOADER_URL_REPLACEMENT_6___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_5___, { hash: "#iefix" }); +var ___CSS_LOADER_URL_REPLACEMENT_7___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___, { needQuotes: true }); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`/* webpackIgnore: true */ + +/** Resolved **/ +/** Resolved **/ + +.class { + color: red; + background: /** webpackIgnore: true */ url("./url/img.png"), url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} + +.class { + color: red; + background:/** webpackIgnore: true */url("./url/img.png"), url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} + +.class { + color: red; + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}), /** webpackIgnore: true */ url("./url/img.png"); +} + +.class { + color: red; + /** webpackIgnore: true */ + background: url("./url/img.png"), url("./url/img.png"); +} + +.class { + color: red; + /** webpackIgnore: true */ + background: url("./url/img.png"), /** webpackIgnore: false */ url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} + +.class { + color: red; + /** webpackIgnore: true */ + background: url("./url/img.png"), /** webpackIgnore: false */ url(\${___CSS_LOADER_URL_REPLACEMENT_0___}), /** webpackIgnore: true */ url("./url/img.png"), /** webpackIgnore: false */ url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} + +.class { + color: red; + /** webpackIgnore: true */ + background: /** webpackIgnore: false */ url(\${___CSS_LOADER_URL_REPLACEMENT_0___}), /** webpackIgnore: true */ url("./url/img.png"); +} + +.class { + color: red; + background: /** webpackIgnore: true */ /** webpackIgnore: false */ url(\${___CSS_LOADER_URL_REPLACEMENT_0___}), url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} + +.class { + color: red; + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}), /** webpackIgnore: true */ /** webpackIgnore: false */ url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} + +.class { + color: red; + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}), /** webpackIgnore: false */ /** webpackIgnore: true */ url("./url/img.png"); +} + +.class { + background: + url(\${___CSS_LOADER_URL_REPLACEMENT_0___}), + url(\${___CSS_LOADER_URL_REPLACEMENT_0___}), + /** webpackIgnore: true **/ url("./url/img.png"), + url(\${___CSS_LOADER_URL_REPLACEMENT_0___}), + /** webpackIgnore: true **/ url("./url/img.png"), + url(\${___CSS_LOADER_URL_REPLACEMENT_0___}), + url(\${___CSS_LOADER_URL_REPLACEMENT_0___}), + url(\${___CSS_LOADER_URL_REPLACEMENT_0___}), + /** webpackIgnore: true **/ + url("./url/img.png"); +} + +@font-face { + font-family: "Roboto"; + src: /** webpackIgnore: true **/ url("./fonts/Roboto-Regular.eot"); + src: + /** webpackIgnore: true **/ + url("./fonts/Roboto-Regular.eot#iefix") format("embedded-opentype"), + url(\${___CSS_LOADER_URL_REPLACEMENT_1___}) format("woff"), + url(\${___CSS_LOADER_URL_REPLACEMENT_2___}) format("woff"), + url(\${___CSS_LOADER_URL_REPLACEMENT_3___}) format("truetype"), + url(\${___CSS_LOADER_URL_REPLACEMENT_4___}) format("svg"); + font-weight: 400; + font-style: normal; +} + +@font-face { + font-family: "Roboto"; + src: /** webpackIgnore: true **/ url("./fonts/Roboto-Regular.eot"); + /** webpackIgnore: true **/ + src: + url("./fonts/Roboto-Regular.eot#iefix") format("embedded-opentype"), + url("./fonts/Roboto-Regular.woff2") format("woff"), + url("./fonts/Roboto-Regular.woff") format("woff"), + url("./fonts/Roboto-Regular.ttf") format("truetype"), + url("./fonts/Roboto-Regular.svg#Roboto-Regular") format("svg"); + font-weight: 400; + font-style: normal; +} + +@font-face { + font-family: "Roboto"; + src: url(\${___CSS_LOADER_URL_REPLACEMENT_5___}); + src: + url(\${___CSS_LOADER_URL_REPLACEMENT_6___}) format("embedded-opentype"), + /** webpackIgnore: true **/ + url("./fonts/Roboto-Regular.woff2") format("woff"), + url(\${___CSS_LOADER_URL_REPLACEMENT_2___}) format("woff"), + /** webpackIgnore: true **/ + url("./fonts/Roboto-Regular.ttf") format("truetype"), + url(\${___CSS_LOADER_URL_REPLACEMENT_4___}) format("svg"); + font-weight: 400; + font-style: normal; +} + +.class { + /*webpackIgnore: true*/ + background-image: image-set( + url(./url/img.png) 2x, + url(./url/img.png) 3x, + url(./url/img.png) 4x + ); +} + +.class { + /*webpackIgnore: true*/ + background-image: + image-set( + /*webpackIgnore: false*/ + url(\${___CSS_LOADER_URL_REPLACEMENT_0___}) 2x, + /*webpackIgnore: true*/ + url(./url/img.png) 3x, + url(./url/img.png) 4x, + /*webpackIgnore: false */ + /*webpackIgnore: true */ + url(./url/img.png) 5x + ), + url('./url/img.png'); +} + +.class { + background-image: + image-set( + /*webpackIgnore: false*/ + url(\${___CSS_LOADER_URL_REPLACEMENT_0___}) 2x, + /*webpackIgnore: true*/ + url(./url/img.png) 3x, + url(\${___CSS_LOADER_URL_REPLACEMENT_0___}) 4x, + /*webpackIgnore: false */ + /*webpackIgnore: true */ + url(./url/img.png) 5x + ), + /*webpackIgnore: false*/ + url(\${___CSS_LOADER_URL_REPLACEMENT_0___}), + /*webpackIgnore: true*/ + url('./url/img.png');; +} + +.class { + background-image: + image-set( + /*webpackIgnore: false*/ + url(\${___CSS_LOADER_URL_REPLACEMENT_0___}) 2x, + /*webpackIgnore: true*/ + url(./url/img.png) 3x, + url(\${___CSS_LOADER_URL_REPLACEMENT_0___}) 4x, + /*webpackIgnore: false */ + /*webpackIgnore: true */ + url(./url/img.png) 5x + ), + url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} + +.class { + background-image: image-set( + /*webpackIgnore: true*/ + url(./url/img.png) 2x, + url(\${___CSS_LOADER_URL_REPLACEMENT_0___}) 3x, + /*webpackIgnore: true*/ + url(./url/img.png) 5x + ); +} + +.class { + background-image: image-set( + /*webpackIgnore: true*/ + './url/img.png' 2x, + \${___CSS_LOADER_URL_REPLACEMENT_7___} 3x, + /*webpackIgnore: true*/ + './url/img.png' 5x + ); +} + +.class { + /*webpackIgnore: true*/ + background-image: image-set( + /*webpackIgnore: false*/ + url(\${___CSS_LOADER_URL_REPLACEMENT_0___}) 2x, + /*webpackIgnore: true*/ + url(./url/img.png) 3x, + /*webpackIgnore: false*/ + url(\${___CSS_LOADER_URL_REPLACEMENT_0___}) 4x, + url(./url/img.png) 5x + ); +} -exports[`loader should work with the "modules.auto" option and the "importLoaders" option: warnings 1`] = `Array []`; +.class { + color: red; + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}), /** webpackIgnore: true */url("./url/img.png"); +} -exports[`loader should work: errors 1`] = `Array []`; +.class { + color: red; + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}), /** webpackIgnore: true */ url("./url/img.png"); +} -exports[`loader should work: module 1`] = ` -"// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../src/runtime/api.js\\"); -var ___CSS_LOADER_AT_RULE_IMPORT_0___ = require(\\"-!../../src/index.js??[ident]!./imported.css\\"); -var ___CSS_LOADER_GET_URL_IMPORT___ = require(\\"../../src/runtime/getUrl.js\\"); -var ___CSS_LOADER_URL_IMPORT_0___ = require(\\"./url/img.png\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___); -var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); -// Module -exports.push([module.id, \\"@charset \\\\\\"UTF-8\\\\\\";\\\\n\\\\n/* Comment */\\\\n\\\\n.class {\\\\n color: red;\\\\n background: url(\\" + ___CSS_LOADER_URL_REPLACEMENT_0___ + \\");\\\\n}\\\\n\\\\n.class-duplicate-url {\\\\n background: url(\\" + ___CSS_LOADER_URL_REPLACEMENT_0___ + \\");\\\\n}\\\\n\\\\n:root {\\\\n --foo: 1px;\\\\n --bar: 2px;\\\\n}\\\\n\\\\n.class { a: b c d; }\\\\n\\\\n.two {}\\\\n\\\\n.u-m\\\\\\\\+ { a: b c d; }\\\\n\\\\n.class { content: \\\\\\"\\\\\\\\F10C\\\\\\" }\\\\n\\\\n@media only screen and (max-width: 600px) {\\\\n body {\\\\n background-color: lightblue;\\\\n }\\\\n}\\\\n\\\\n.class {\\\\n content: \\\\\\"\\\\\\\\2193\\\\\\";\\\\n content: \\\\\\"\\\\\\\\2193\\\\\\\\2193\\\\\\";\\\\n content: \\\\\\"\\\\\\\\2193 \\\\\\\\2193\\\\\\";\\\\n content: \\\\\\"\\\\\\\\2193\\\\\\\\2193\\\\\\\\2193\\\\\\";\\\\n content: \\\\\\"\\\\\\\\2193 \\\\\\\\2193 \\\\\\\\2193\\\\\\";\\\\n}\\\\n\\\\n.-top {}\\\\n.\\\\\\\\-top {}\\\\n\\\\n#\\\\\\\\#test {}\\\\n\\\\n.grid {\\\\n display: flex;\\\\n flex-wrap: wrap;\\\\n}\\\\n.grid.\\\\\\\\-top {\\\\n align-items: flex-start;\\\\n}\\\\n.grid.-top {\\\\n align-items: flex-start;\\\\n}\\\\n.grid.\\\\\\\\-middle {\\\\n align-items: center;\\\\n}\\\\n.grid.\\\\\\\\-bottom {\\\\n align-items: flex-end;\\\\n}\\\\n\\\\n.u-m\\\\\\\\00002b {}\\\\n\\\\n.u-m00002b {}\\\\n\\\\n#u-m\\\\\\\\+ {}\\\\n\\\\nbody {\\\\n font-family: '微软雅黑'; /* some chinese font name */\\\\n}\\\\n\\\\n.myStyle {\\\\n content: '\\\\\\\\e901';\\\\n}\\\\n\\\\n.myStyle {\\\\n content: '\\\\\\\\E901';\\\\n}\\\\n\\\\n.♫ {}\\\\n\\\\n.\\\\\\\\3A \\\\\\\\\`\\\\\\\\( {} /* matches elements with class=\\\\\\":\`(\\\\\\" */\\\\n.\\\\\\\\31 a2b3c {} /* matches elements with class=\\\\\\"1a2b3c\\\\\\" */\\\\n#\\\\\\\\#fake-id {} /* matches the element with id=\\\\\\"#fake-id\\\\\\" */\\\\n#-a-b-c- {} /* matches the element with id=\\\\\\"-a-b-c-\\\\\\" */\\\\n#© {} /* matches the element with id=\\\\\\"©\\\\\\" */\\\\n\\\\n:root {\\\\n --title-align: center;\\\\n --sr-only: {\\\\n position: absolute;\\\\n width: 1px;\\\\n height: 1px;\\\\n padding: 0;\\\\n overflow: hidden;\\\\n clip: rect(0,0,0,0);\\\\n white-space: nowrap;\\\\n clip-path: inset(50%);\\\\n border: 0;\\\\n };\\\\n}\\\\n\\\\n.test {\\\\n content: \\\\\\"\\\\\\\\2014\\\\\\\\A0\\\\\\";\\\\n content: \\\\\\"\\\\\\\\2014 \\\\\\\\A0\\\\\\";\\\\n content: \\\\\\"\\\\\\\\A0 \\\\\\\\2014\\\\\\";\\\\n content: \\\\\\"\\\\\\\\A0\\\\\\\\2014\\\\\\";\\\\n margin-top: 1px\\\\\\\\9;\\\\n background-color: #000\\\\\\\\9;\\\\n}\\\\n\\\\n.light.on .bulb:before{\\\\n content: '💡';\\\\n}\\\\n\\\\n.base64 {\\\\n background: url(data:img/jpg;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAhxJREFUSA3tk71rU1EYxnMTEoJUkowWwdJ2akEHBfGjCiIF6ZylVUKSm2TqZLGI+A/oIu2UXm8C4lAyF4SWji0tdFLo1Eo7VN0SaBEhH7e/Nz0nPTfGOjiaCyfPc5734zlfCQT6X/8E/vUErL81KBaL9y3LSnued5PcITjUOwR3gsFg2bbtjYt6/NGgXC4P1et1l2aPLmpAbD0SidjpdPqgV15PA9d17zQajU8UxHQRK/4G35Q5pveAK8LlI1ZjPMnlcltnyvnvbwaO41xvtVqy7YHztMACq5xnlb9EY3dRdvcGo1kj5wR+t1AofDG0gM+A875E8DNjRCexsrV8Pj9ZqVQitVrtqejxePxjMpmss5hVTB4buXvMb2DyU2tBTRS+BjvNlVYUpPl7iuVO3Gq1uoQx1FtSOW1gPgp5ZWrdBtNmUDgv5asgxQ8F1af5vhY0YjyjuWC3wTszKJz7GBOkcFlQfW2ONq4FjWi+Hj6DRCKxQOK2TlY4x92EuYd5dvMAbYIzfikau3pu5tJ8KxaLLfo0cyKci7tK4TZjUMcoXAmHwzle0Q/RaC5P1GFMyVx9R9Fo9HYqlTrSgqDvFelAqVQa5hmuMR/WGtjAaBdjwBoDQ0ZsnwVMZjKZ9n0Zem8DSeDPdrnZbL6F2l3NOvUYNZk4oVDoRTabPe4EDNJzB0ZcjAYxeoZ2i3FNxQ7BHYw/cB/fldaH//UETgHHO8S44KbfXgAAAABJRU5ErkJggg==);\\\\n}\\\\n\\\\na[href=''] {\\\\n color: red;\\\\n}\\\\n\\\\na[href='' i] {\\\\n color: red;\\\\n}\\\\n\\\\na[href=\\\\\\"\\\\\\"] {\\\\n color: blue;\\\\n}\\\\n\\\\na[href=\\\\\\"\\\\\\" i] {\\\\n color: blue;\\\\n}\\\\n\\", \\"\\"]); +.class { + color: red; + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___})/** webpackIgnore: true */, url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} + +.class { + background-image: + image-set( + url(\${___CSS_LOADER_URL_REPLACEMENT_0___}) 2x /*webpackIgnore: true*/, + url(\${___CSS_LOADER_URL_REPLACEMENT_0___}) /*webpackIgnore: true*/ 3x, + url(\${___CSS_LOADER_URL_REPLACEMENT_0___}) 4x /*webpackIgnore: true*/, + /*webpackIgnore: true*/url(./url/img.png) 5x, + /*webpackIgnore: true*/ url(./url/img.png) 6x, + /*webpackIgnore: true*/ + url(./url/img.png) 7x, + url(\${___CSS_LOADER_URL_REPLACEMENT_0___}) 8x + ), + /*webpackIgnore: false*/ + url(\${___CSS_LOADER_URL_REPLACEMENT_0___}), + /*webpackIgnore: true*/ + url('./url/img.png'); +} + +@font-face { + font-family: "anticon"; + src: url("//at.alicdn.com/t/font_1434092639_4910953.eot?#iefix") format("embedded-opentype"), + /* this comment is required */ + url("//at.alicdn.com/t/font_1434092639_4910953.woff") format("woff"); +} +\`, ""]); // Exports -module.exports = exports; +export default ___CSS_LOADER_EXPORT___; " `; -exports[`loader should work: result 1`] = ` -Array [ - Array [ - "../../src/index.js?[ident]!./imported.css", - ".foo { +exports[`loader should work with webpackIgnore comment: result 1`] = ` +[ + [ + "./webpackIgnore.css", + "@import url(./basic.css);", + ], + [ + "./webpackIgnore.css", + "@import url(./imported.css);", + ], + [ + "./webpackIgnore.css", + "@import url(./simple.css);", + ], + [ + "./webpackIgnore.css", + "@import url(./simple.css);", + ], + [ + "./webpackIgnore.css", + "@import url(./simple.css);", + ], + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./simple.css", + ".some-class { color: red; } ", "", ], - Array [ - "./basic.css", - "@charset \\"UTF-8\\"; + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./simple.css", + ".some-class { + color: red; +} +", + "", + ], + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./simple.css", + ".some-class { + color: red; +} +", + "", + ], + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./simple.css", + ".some-class { + color: red; +} +", + "", + ], + [ + "./webpackIgnore.css", + "/* webpackIgnore: true */ + +/** Resolved **/ +/** Resolved **/ + +.class { + color: red; + background: /** webpackIgnore: true */ url("./url/img.png"), url(replaced_file_protocol_/webpack/public/path/img.png); +} + +.class { + color: red; + background:/** webpackIgnore: true */url("./url/img.png"), url(replaced_file_protocol_/webpack/public/path/img.png); +} + +.class { + color: red; + background: url(replaced_file_protocol_/webpack/public/path/img.png), /** webpackIgnore: true */ url("./url/img.png"); +} + +.class { + color: red; + /** webpackIgnore: true */ + background: url("./url/img.png"), url("./url/img.png"); +} + +.class { + color: red; + /** webpackIgnore: true */ + background: url("./url/img.png"), /** webpackIgnore: false */ url(replaced_file_protocol_/webpack/public/path/img.png); +} + +.class { + color: red; + /** webpackIgnore: true */ + background: url("./url/img.png"), /** webpackIgnore: false */ url(replaced_file_protocol_/webpack/public/path/img.png), /** webpackIgnore: true */ url("./url/img.png"), /** webpackIgnore: false */ url(replaced_file_protocol_/webpack/public/path/img.png); +} + +.class { + color: red; + /** webpackIgnore: true */ + background: /** webpackIgnore: false */ url(replaced_file_protocol_/webpack/public/path/img.png), /** webpackIgnore: true */ url("./url/img.png"); +} + +.class { + color: red; + background: /** webpackIgnore: true */ /** webpackIgnore: false */ url(replaced_file_protocol_/webpack/public/path/img.png), url(replaced_file_protocol_/webpack/public/path/img.png); +} + +.class { + color: red; + background: url(replaced_file_protocol_/webpack/public/path/img.png), /** webpackIgnore: true */ /** webpackIgnore: false */ url(replaced_file_protocol_/webpack/public/path/img.png); +} + +.class { + color: red; + background: url(replaced_file_protocol_/webpack/public/path/img.png), /** webpackIgnore: false */ /** webpackIgnore: true */ url("./url/img.png"); +} + +.class { + background: + url(replaced_file_protocol_/webpack/public/path/img.png), + url(replaced_file_protocol_/webpack/public/path/img.png), + /** webpackIgnore: true **/ url("./url/img.png"), + url(replaced_file_protocol_/webpack/public/path/img.png), + /** webpackIgnore: true **/ url("./url/img.png"), + url(replaced_file_protocol_/webpack/public/path/img.png), + url(replaced_file_protocol_/webpack/public/path/img.png), + url(replaced_file_protocol_/webpack/public/path/img.png), + /** webpackIgnore: true **/ + url("./url/img.png"); +} + +@font-face { + font-family: "Roboto"; + src: /** webpackIgnore: true **/ url("./fonts/Roboto-Regular.eot"); + src: + /** webpackIgnore: true **/ + url("./fonts/Roboto-Regular.eot#iefix") format("embedded-opentype"), + url(replaced_file_protocol_/webpack/public/path/Roboto-Regular.woff2) format("woff"), + url(replaced_file_protocol_/webpack/public/path/Roboto-Regular.woff) format("woff"), + url(replaced_file_protocol_/webpack/public/path/Roboto-Regular.ttf) format("truetype"), + url(replaced_file_protocol_/webpack/public/path/Roboto-Regular.svg#Roboto-Regular) format("svg"); + font-weight: 400; + font-style: normal; +} + +@font-face { + font-family: "Roboto"; + src: /** webpackIgnore: true **/ url("./fonts/Roboto-Regular.eot"); + /** webpackIgnore: true **/ + src: + url("./fonts/Roboto-Regular.eot#iefix") format("embedded-opentype"), + url("./fonts/Roboto-Regular.woff2") format("woff"), + url("./fonts/Roboto-Regular.woff") format("woff"), + url("./fonts/Roboto-Regular.ttf") format("truetype"), + url("./fonts/Roboto-Regular.svg#Roboto-Regular") format("svg"); + font-weight: 400; + font-style: normal; +} + +@font-face { + font-family: "Roboto"; + src: url(replaced_file_protocol_/webpack/public/path/Roboto-Regular.eot); + src: + url(replaced_file_protocol_/webpack/public/path/Roboto-Regular.eot#iefix) format("embedded-opentype"), + /** webpackIgnore: true **/ + url("./fonts/Roboto-Regular.woff2") format("woff"), + url(replaced_file_protocol_/webpack/public/path/Roboto-Regular.woff) format("woff"), + /** webpackIgnore: true **/ + url("./fonts/Roboto-Regular.ttf") format("truetype"), + url(replaced_file_protocol_/webpack/public/path/Roboto-Regular.svg#Roboto-Regular) format("svg"); + font-weight: 400; + font-style: normal; +} + +.class { + /*webpackIgnore: true*/ + background-image: image-set( + url(./url/img.png) 2x, + url(./url/img.png) 3x, + url(./url/img.png) 4x + ); +} + +.class { + /*webpackIgnore: true*/ + background-image: + image-set( + /*webpackIgnore: false*/ + url(replaced_file_protocol_/webpack/public/path/img.png) 2x, + /*webpackIgnore: true*/ + url(./url/img.png) 3x, + url(./url/img.png) 4x, + /*webpackIgnore: false */ + /*webpackIgnore: true */ + url(./url/img.png) 5x + ), + url('./url/img.png'); +} + +.class { + background-image: + image-set( + /*webpackIgnore: false*/ + url(replaced_file_protocol_/webpack/public/path/img.png) 2x, + /*webpackIgnore: true*/ + url(./url/img.png) 3x, + url(replaced_file_protocol_/webpack/public/path/img.png) 4x, + /*webpackIgnore: false */ + /*webpackIgnore: true */ + url(./url/img.png) 5x + ), + /*webpackIgnore: false*/ + url(replaced_file_protocol_/webpack/public/path/img.png), + /*webpackIgnore: true*/ + url('./url/img.png');; +} + +.class { + background-image: + image-set( + /*webpackIgnore: false*/ + url(replaced_file_protocol_/webpack/public/path/img.png) 2x, + /*webpackIgnore: true*/ + url(./url/img.png) 3x, + url(replaced_file_protocol_/webpack/public/path/img.png) 4x, + /*webpackIgnore: false */ + /*webpackIgnore: true */ + url(./url/img.png) 5x + ), + url(replaced_file_protocol_/webpack/public/path/img.png); +} + +.class { + background-image: image-set( + /*webpackIgnore: true*/ + url(./url/img.png) 2x, + url(replaced_file_protocol_/webpack/public/path/img.png) 3x, + /*webpackIgnore: true*/ + url(./url/img.png) 5x + ); +} + +.class { + background-image: image-set( + /*webpackIgnore: true*/ + './url/img.png' 2x, + "replaced_file_protocol_/webpack/public/path/img.png" 3x, + /*webpackIgnore: true*/ + './url/img.png' 5x + ); +} + +.class { + /*webpackIgnore: true*/ + background-image: image-set( + /*webpackIgnore: false*/ + url(replaced_file_protocol_/webpack/public/path/img.png) 2x, + /*webpackIgnore: true*/ + url(./url/img.png) 3x, + /*webpackIgnore: false*/ + url(replaced_file_protocol_/webpack/public/path/img.png) 4x, + url(./url/img.png) 5x + ); +} + +.class { + color: red; + background: url(replaced_file_protocol_/webpack/public/path/img.png), /** webpackIgnore: true */url("./url/img.png"); +} + +.class { + color: red; + background: url(replaced_file_protocol_/webpack/public/path/img.png), /** webpackIgnore: true */ url("./url/img.png"); +} + +.class { + color: red; + background: url(replaced_file_protocol_/webpack/public/path/img.png)/** webpackIgnore: true */, url(replaced_file_protocol_/webpack/public/path/img.png); +} + +.class { + background-image: + image-set( + url(replaced_file_protocol_/webpack/public/path/img.png) 2x /*webpackIgnore: true*/, + url(replaced_file_protocol_/webpack/public/path/img.png) /*webpackIgnore: true*/ 3x, + url(replaced_file_protocol_/webpack/public/path/img.png) 4x /*webpackIgnore: true*/, + /*webpackIgnore: true*/url(./url/img.png) 5x, + /*webpackIgnore: true*/ url(./url/img.png) 6x, + /*webpackIgnore: true*/ + url(./url/img.png) 7x, + url(replaced_file_protocol_/webpack/public/path/img.png) 8x + ), + /*webpackIgnore: false*/ + url(replaced_file_protocol_/webpack/public/path/img.png), + /*webpackIgnore: true*/ + url('./url/img.png'); +} + +@font-face { + font-family: "anticon"; + src: url("//at.alicdn.com/t/font_1434092639_4910953.eot?#iefix") format("embedded-opentype"), + /* this comment is required */ + url("//at.alicdn.com/t/font_1434092639_4910953.woff") format("woff"); +} +", + "", + ], +] +`; + +exports[`loader should work with webpackIgnore comment: warnings 1`] = `[]`; + +exports[`loader should work: errors 1`] = `[]`; + +exports[`loader should work: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../src/runtime/api.js"; +import ___CSS_LOADER_GET_URL_IMPORT___ from "../../src/runtime/getUrl.js"; +var ___CSS_LOADER_URL_IMPORT_0___ = new URL("./url/img.png", import.meta.url); +var ___CSS_LOADER_URL_IMPORT_1___ = new URL("data:img/jpg;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAhxJREFUSA3tk71rU1EYxnMTEoJUkowWwdJ2akEHBfGjCiIF6ZylVUKSm2TqZLGI+A/oIu2UXm8C4lAyF4SWji0tdFLo1Eo7VN0SaBEhH7e/Nz0nPTfGOjiaCyfPc5734zlfCQT6X/8E/vUErL81KBaL9y3LSnued5PcITjUOwR3gsFg2bbtjYt6/NGgXC4P1et1l2aPLmpAbD0SidjpdPqgV15PA9d17zQajU8UxHQRK/4G35Q5pveAK8LlI1ZjPMnlcltnyvnvbwaO41xvtVqy7YHztMACq5xnlb9EY3dRdvcGo1kj5wR+t1AofDG0gM+A875E8DNjRCexsrV8Pj9ZqVQitVrtqejxePxjMpmss5hVTB4buXvMb2DyU2tBTRS+BjvNlVYUpPl7iuVO3Gq1uoQx1FtSOW1gPgp5ZWrdBtNmUDgv5asgxQ8F1af5vhY0YjyjuWC3wTszKJz7GBOkcFlQfW2ONq4FjWi+Hj6DRCKxQOK2TlY4x92EuYd5dvMAbYIzfikau3pu5tJ8KxaLLfo0cyKci7tK4TZjUMcoXAmHwzle0Q/RaC5P1GFMyVx9R9Fo9HYqlTrSgqDvFelAqVQa5hmuMR/WGtjAaBdjwBoDQ0ZsnwVMZjKZ9n0Zem8DSeDPdrnZbL6F2l3NOvUYNZk4oVDoRTabPe4EDNJzB0ZcjAYxeoZ2i3FNxQ7BHYw/cB/fldaH//UETgHHO8S44KbfXgAAAABJRU5ErkJggg==", import.meta.url); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); +var ___CSS_LOADER_URL_REPLACEMENT_1___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_1___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`@charset "UTF-8"; + /* Comment */ .class { color: red; - background: url(/webpack/public/path/img.png); + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); } .class-duplicate-url { - background: url(/webpack/public/path/img.png); + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); } :root { @@ -702,7 +3229,7 @@ Array [ .u-m\\\\+ { a: b c d; } -.class { content: \\"\\\\F10C\\" } +.class { content: "\\\\F10C" } @media only screen and (max-width: 600px) { body { @@ -711,11 +3238,11 @@ Array [ } .class { - content: \\"\\\\2193\\"; - content: \\"\\\\2193\\\\2193\\"; - content: \\"\\\\2193 \\\\2193\\"; - content: \\"\\\\2193\\\\2193\\\\2193\\"; - content: \\"\\\\2193 \\\\2193 \\\\2193\\"; + content: "\\\\2193"; + content: "\\\\2193\\\\2193"; + content: "\\\\2193 \\\\2193"; + content: "\\\\2193\\\\2193\\\\2193"; + content: "\\\\2193 \\\\2193 \\\\2193"; } .-top {} @@ -760,11 +3287,25 @@ body { .♫ {} -.\\\\3A \\\\\`\\\\( {} /* matches elements with class=\\":\`(\\" */ -.\\\\31 a2b3c {} /* matches elements with class=\\"1a2b3c\\" */ -#\\\\#fake-id {} /* matches the element with id=\\"#fake-id\\" */ -#-a-b-c- {} /* matches the element with id=\\"-a-b-c-\\" */ -#© {} /* matches the element with id=\\"©\\" */ +.\\\\3A \\\\\\\`\\\\( {} /* matches elements with class=":\\\`(" */ +.\\\\31 a2b3c {} /* matches elements with class="1a2b3c" */ +#\\\\#fake-id {} /* matches the element with id="#fake-id" */ +#-a-b-c- {} /* matches the element with id="-a-b-c-" */ +#© {} /* matches the element with id="©" */ + +\\\\.\\\\\\\` { + color: aliceblue; +} + +\\\\.\\\\\\$\\\\{foo\\\\} { + color: aliceblue; +} + +/* \\\` */ +/* \\\`\\\` */ +/* \\\`\\\`\\\` */ +/* \\\${} */ +/* \\\\\\\\\\\` */ :root { --title-align: center; @@ -782,10 +3323,10 @@ body { } .test { - content: \\"\\\\2014\\\\A0\\"; - content: \\"\\\\2014 \\\\A0\\"; - content: \\"\\\\A0 \\\\2014\\"; - content: \\"\\\\A0\\\\2014\\"; + content: "\\\\2014\\\\A0"; + content: "\\\\2014 \\\\A0"; + content: "\\\\A0 \\\\2014"; + content: "\\\\A0\\\\2014"; margin-top: 1px\\\\9; background-color: #000\\\\9; } @@ -794,6 +3335,166 @@ body { content: '💡'; } +.base64 { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_1___}); +} + +a[href=''] { + color: red; +} + +a[href='' i] { + color: red; +} + +a[href=""] { + color: blue; +} + +a[href="" i] { + color: blue; +} +\`, ""]); +// Exports +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`loader should work: result 1`] = ` +[ + [ + "./basic.css", + "@charset "UTF-8"; + + +/* Comment */ + +.class { + color: red; + background: url(replaced_file_protocol_/webpack/public/path/img.png); +} + +.class-duplicate-url { + background: url(replaced_file_protocol_/webpack/public/path/img.png); +} + +:root { + --foo: 1px; + --bar: 2px; +} + +.class { a: b c d; } + +.two {} + +.u-m\\+ { a: b c d; } + +.class { content: "\\F10C" } + +@media only screen and (max-width: 600px) { + body { + background-color: lightblue; + } +} + +.class { + content: "\\2193"; + content: "\\2193\\2193"; + content: "\\2193 \\2193"; + content: "\\2193\\2193\\2193"; + content: "\\2193 \\2193 \\2193"; +} + +.-top {} +.\\-top {} + +#\\#test {} + +.grid { + display: flex; + flex-wrap: wrap; +} +.grid.\\-top { + align-items: flex-start; +} +.grid.-top { + align-items: flex-start; +} +.grid.\\-middle { + align-items: center; +} +.grid.\\-bottom { + align-items: flex-end; +} + +.u-m\\00002b {} + +.u-m00002b {} + +#u-m\\+ {} + +body { + font-family: '微软雅黑'; /* some chinese font name */ +} + +.myStyle { + content: '\\e901'; +} + +.myStyle { + content: '\\E901'; +} + +.♫ {} + +.\\3A \\\`\\( {} /* matches elements with class=":\`(" */ +.\\31 a2b3c {} /* matches elements with class="1a2b3c" */ +#\\#fake-id {} /* matches the element with id="#fake-id" */ +#-a-b-c- {} /* matches the element with id="-a-b-c-" */ +#© {} /* matches the element with id="©" */ + +\\.\\\` { + color: aliceblue; +} + +\\.\\$\\{foo\\} { + color: aliceblue; +} + +/* \` */ +/* \`\` */ +/* \`\`\` */ +/* \${} */ +/* \\\\\` */ + +:root { + --title-align: center; + --sr-only: { + position: absolute; + width: 1px; + height: 1px; + padding: 0; + overflow: hidden; + clip: rect(0,0,0,0); + white-space: nowrap; + clip-path: inset(50%); + border: 0; + }; +} + +.test { + content: "\\2014\\A0"; + content: "\\2014 \\A0"; + content: "\\A0 \\2014"; + content: "\\A0\\2014"; + margin-top: 1px\\9; + background-color: #000\\9; +} + +.light.on .bulb:before{ + content: '💡'; +} + .base64 { background: url(data:img/jpg;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAhxJREFUSA3tk71rU1EYxnMTEoJUkowWwdJ2akEHBfGjCiIF6ZylVUKSm2TqZLGI+A/oIu2UXm8C4lAyF4SWji0tdFLo1Eo7VN0SaBEhH7e/Nz0nPTfGOjiaCyfPc5734zlfCQT6X/8E/vUErL81KBaL9y3LSnued5PcITjUOwR3gsFg2bbtjYt6/NGgXC4P1et1l2aPLmpAbD0SidjpdPqgV15PA9d17zQajU8UxHQRK/4G35Q5pveAK8LlI1ZjPMnlcltnyvnvbwaO41xvtVqy7YHztMACq5xnlb9EY3dRdvcGo1kj5wR+t1AofDG0gM+A875E8DNjRCexsrV8Pj9ZqVQitVrtqejxePxjMpmss5hVTB4buXvMb2DyU2tBTRS+BjvNlVYUpPl7iuVO3Gq1uoQx1FtSOW1gPgp5ZWrdBtNmUDgv5asgxQ8F1af5vhY0YjyjuWC3wTszKJz7GBOkcFlQfW2ONq4FjWi+Hj6DRCKxQOK2TlY4x92EuYd5dvMAbYIzfikau3pu5tJ8KxaLLfo0cyKci7tK4TZjUMcoXAmHwzle0Q/RaC5P1GFMyVx9R9Fo9HYqlTrSgqDvFelAqVQa5hmuMR/WGtjAaBdjwBoDQ0ZsnwVMZjKZ9n0Zem8DSeDPdrnZbL6F2l3NOvUYNZk4oVDoRTabPe4EDNJzB0ZcjAYxeoZ2i3FNxQ7BHYw/cB/fldaH//UETgHHO8S44KbfXgAAAABJRU5ErkJggg==); } @@ -806,11 +3507,11 @@ a[href='' i] { color: red; } -a[href=\\"\\"] { +a[href=""] { color: blue; } -a[href=\\"\\" i] { +a[href="" i] { color: blue; } ", @@ -819,4 +3520,4 @@ a[href=\\"\\" i] { ] `; -exports[`loader should work: warnings 1`] = `Array []`; +exports[`loader should work: warnings 1`] = `[]`; diff --git a/test/__snapshots__/localsConvention-option.test.js.snap b/test/__snapshots__/localsConvention-option.test.js.snap deleted file mode 100644 index 6bfefac5..00000000 --- a/test/__snapshots__/localsConvention-option.test.js.snap +++ /dev/null @@ -1,320 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`"localsConvention" option should work when not specified: errors 1`] = `Array []`; - -exports[`"localsConvention" option should work when not specified: module 1`] = ` -"// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../../src/runtime/api.js\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -// Module -exports.push([module.id, \\".erBXHZCN_thRYfCnk-aH8 {\\\\n color: blue;\\\\n}\\\\n\\\\n._2YsQE-S0o0NRXfC6XNApz2 {\\\\n color: blue;\\\\n}\\\\n\\\\n._3gGBcJHZU3seQVP5aq7Ksq {\\\\n color: red;\\\\n}\\\\n\\\\na {\\\\n color: yellow;\\\\n}\\\\n\\\\n.jHKqWGMvMrGp5RVPtApZ8 {\\\\n color: red;\\\\n}\\\\n\\", \\"\\"]); -// Exports -exports.locals = { - \\"foo\\": \\"bar\\", - \\"my-btn-info_is-disabled\\": \\"value\\", - \\"btn-info_is-disabled\\": \\"erBXHZCN_thRYfCnk-aH8\\", - \\"btn--info_is-disabled_1\\": \\"_2YsQE-S0o0NRXfC6XNApz2\\", - \\"simple\\": \\"_3gGBcJHZU3seQVP5aq7Ksq\\", - \\"foo_bar\\": \\"jHKqWGMvMrGp5RVPtApZ8\\" -}; -module.exports = exports; -" -`; - -exports[`"localsConvention" option should work when not specified: result 1`] = ` -Array [ - Array [ - "./modules/localsConvention/localsConvention.css", - ".erBXHZCN_thRYfCnk-aH8 { - color: blue; -} - -._2YsQE-S0o0NRXfC6XNApz2 { - color: blue; -} - -._3gGBcJHZU3seQVP5aq7Ksq { - color: red; -} - -a { - color: yellow; -} - -.jHKqWGMvMrGp5RVPtApZ8 { - color: red; -} -", - "", - ], -] -`; - -exports[`"localsConvention" option should work when not specified: warnings 1`] = `Array []`; - -exports[`"localsConvention" option should work with a value equal to "asIs": errors 1`] = `Array []`; - -exports[`"localsConvention" option should work with a value equal to "asIs": module 1`] = ` -"// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../../src/runtime/api.js\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -// Module -exports.push([module.id, \\".erBXHZCN_thRYfCnk-aH8 {\\\\n color: blue;\\\\n}\\\\n\\\\n._2YsQE-S0o0NRXfC6XNApz2 {\\\\n color: blue;\\\\n}\\\\n\\\\n._3gGBcJHZU3seQVP5aq7Ksq {\\\\n color: red;\\\\n}\\\\n\\\\na {\\\\n color: yellow;\\\\n}\\\\n\\\\n.jHKqWGMvMrGp5RVPtApZ8 {\\\\n color: red;\\\\n}\\\\n\\", \\"\\"]); -// Exports -exports.locals = { - \\"foo\\": \\"bar\\", - \\"my-btn-info_is-disabled\\": \\"value\\", - \\"btn-info_is-disabled\\": \\"erBXHZCN_thRYfCnk-aH8\\", - \\"btn--info_is-disabled_1\\": \\"_2YsQE-S0o0NRXfC6XNApz2\\", - \\"simple\\": \\"_3gGBcJHZU3seQVP5aq7Ksq\\", - \\"foo_bar\\": \\"jHKqWGMvMrGp5RVPtApZ8\\" -}; -module.exports = exports; -" -`; - -exports[`"localsConvention" option should work with a value equal to "asIs": result 1`] = ` -Array [ - Array [ - "./modules/localsConvention/localsConvention.css", - ".erBXHZCN_thRYfCnk-aH8 { - color: blue; -} - -._2YsQE-S0o0NRXfC6XNApz2 { - color: blue; -} - -._3gGBcJHZU3seQVP5aq7Ksq { - color: red; -} - -a { - color: yellow; -} - -.jHKqWGMvMrGp5RVPtApZ8 { - color: red; -} -", - "", - ], -] -`; - -exports[`"localsConvention" option should work with a value equal to "asIs": warnings 1`] = `Array []`; - -exports[`"localsConvention" option should work with a value equal to "camelCase": errors 1`] = `Array []`; - -exports[`"localsConvention" option should work with a value equal to "camelCase": module 1`] = ` -"// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../../src/runtime/api.js\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -// Module -exports.push([module.id, \\".erBXHZCN_thRYfCnk-aH8 {\\\\n color: blue;\\\\n}\\\\n\\\\n._2YsQE-S0o0NRXfC6XNApz2 {\\\\n color: blue;\\\\n}\\\\n\\\\n._3gGBcJHZU3seQVP5aq7Ksq {\\\\n color: red;\\\\n}\\\\n\\\\na {\\\\n color: yellow;\\\\n}\\\\n\\\\n.jHKqWGMvMrGp5RVPtApZ8 {\\\\n color: red;\\\\n}\\\\n\\", \\"\\"]); -// Exports -exports.locals = { - \\"foo\\": \\"bar\\", - \\"my-btn-info_is-disabled\\": \\"value\\", - \\"myBtnInfoIsDisabled\\": \\"value\\", - \\"btn-info_is-disabled\\": \\"erBXHZCN_thRYfCnk-aH8\\", - \\"btnInfoIsDisabled\\": \\"erBXHZCN_thRYfCnk-aH8\\", - \\"btn--info_is-disabled_1\\": \\"_2YsQE-S0o0NRXfC6XNApz2\\", - \\"btnInfoIsDisabled1\\": \\"_2YsQE-S0o0NRXfC6XNApz2\\", - \\"simple\\": \\"_3gGBcJHZU3seQVP5aq7Ksq\\", - \\"foo_bar\\": \\"jHKqWGMvMrGp5RVPtApZ8\\", - \\"fooBar\\": \\"jHKqWGMvMrGp5RVPtApZ8\\" -}; -module.exports = exports; -" -`; - -exports[`"localsConvention" option should work with a value equal to "camelCase": result 1`] = ` -Array [ - Array [ - "./modules/localsConvention/localsConvention.css", - ".erBXHZCN_thRYfCnk-aH8 { - color: blue; -} - -._2YsQE-S0o0NRXfC6XNApz2 { - color: blue; -} - -._3gGBcJHZU3seQVP5aq7Ksq { - color: red; -} - -a { - color: yellow; -} - -.jHKqWGMvMrGp5RVPtApZ8 { - color: red; -} -", - "", - ], -] -`; - -exports[`"localsConvention" option should work with a value equal to "camelCase": warnings 1`] = `Array []`; - -exports[`"localsConvention" option should work with a value equal to "camelCaseOnly": errors 1`] = `Array []`; - -exports[`"localsConvention" option should work with a value equal to "camelCaseOnly": module 1`] = ` -"// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../../src/runtime/api.js\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -// Module -exports.push([module.id, \\".erBXHZCN_thRYfCnk-aH8 {\\\\n color: blue;\\\\n}\\\\n\\\\n._2YsQE-S0o0NRXfC6XNApz2 {\\\\n color: blue;\\\\n}\\\\n\\\\n._3gGBcJHZU3seQVP5aq7Ksq {\\\\n color: red;\\\\n}\\\\n\\\\na {\\\\n color: yellow;\\\\n}\\\\n\\\\n.jHKqWGMvMrGp5RVPtApZ8 {\\\\n color: red;\\\\n}\\\\n\\", \\"\\"]); -// Exports -exports.locals = { - \\"foo\\": \\"bar\\", - \\"myBtnInfoIsDisabled\\": \\"value\\", - \\"btnInfoIsDisabled\\": \\"erBXHZCN_thRYfCnk-aH8\\", - \\"btnInfoIsDisabled1\\": \\"_2YsQE-S0o0NRXfC6XNApz2\\", - \\"simple\\": \\"_3gGBcJHZU3seQVP5aq7Ksq\\", - \\"fooBar\\": \\"jHKqWGMvMrGp5RVPtApZ8\\" -}; -module.exports = exports; -" -`; - -exports[`"localsConvention" option should work with a value equal to "camelCaseOnly": result 1`] = ` -Array [ - Array [ - "./modules/localsConvention/localsConvention.css", - ".erBXHZCN_thRYfCnk-aH8 { - color: blue; -} - -._2YsQE-S0o0NRXfC6XNApz2 { - color: blue; -} - -._3gGBcJHZU3seQVP5aq7Ksq { - color: red; -} - -a { - color: yellow; -} - -.jHKqWGMvMrGp5RVPtApZ8 { - color: red; -} -", - "", - ], -] -`; - -exports[`"localsConvention" option should work with a value equal to "camelCaseOnly": warnings 1`] = `Array []`; - -exports[`"localsConvention" option should work with a value equal to "dashes": errors 1`] = `Array []`; - -exports[`"localsConvention" option should work with a value equal to "dashes": module 1`] = ` -"// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../../src/runtime/api.js\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -// Module -exports.push([module.id, \\".erBXHZCN_thRYfCnk-aH8 {\\\\n color: blue;\\\\n}\\\\n\\\\n._2YsQE-S0o0NRXfC6XNApz2 {\\\\n color: blue;\\\\n}\\\\n\\\\n._3gGBcJHZU3seQVP5aq7Ksq {\\\\n color: red;\\\\n}\\\\n\\\\na {\\\\n color: yellow;\\\\n}\\\\n\\\\n.jHKqWGMvMrGp5RVPtApZ8 {\\\\n color: red;\\\\n}\\\\n\\", \\"\\"]); -// Exports -exports.locals = { - \\"foo\\": \\"bar\\", - \\"my-btn-info_is-disabled\\": \\"value\\", - \\"myBtnInfo_isDisabled\\": \\"value\\", - \\"btn-info_is-disabled\\": \\"erBXHZCN_thRYfCnk-aH8\\", - \\"btnInfo_isDisabled\\": \\"erBXHZCN_thRYfCnk-aH8\\", - \\"btn--info_is-disabled_1\\": \\"_2YsQE-S0o0NRXfC6XNApz2\\", - \\"btnInfo_isDisabled_1\\": \\"_2YsQE-S0o0NRXfC6XNApz2\\", - \\"simple\\": \\"_3gGBcJHZU3seQVP5aq7Ksq\\", - \\"foo_bar\\": \\"jHKqWGMvMrGp5RVPtApZ8\\" -}; -module.exports = exports; -" -`; - -exports[`"localsConvention" option should work with a value equal to "dashes": result 1`] = ` -Array [ - Array [ - "./modules/localsConvention/localsConvention.css", - ".erBXHZCN_thRYfCnk-aH8 { - color: blue; -} - -._2YsQE-S0o0NRXfC6XNApz2 { - color: blue; -} - -._3gGBcJHZU3seQVP5aq7Ksq { - color: red; -} - -a { - color: yellow; -} - -.jHKqWGMvMrGp5RVPtApZ8 { - color: red; -} -", - "", - ], -] -`; - -exports[`"localsConvention" option should work with a value equal to "dashes": warnings 1`] = `Array []`; - -exports[`"localsConvention" option should work with a value equal to "dashesOnly": errors 1`] = `Array []`; - -exports[`"localsConvention" option should work with a value equal to "dashesOnly": module 1`] = ` -"// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../../src/runtime/api.js\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -// Module -exports.push([module.id, \\".erBXHZCN_thRYfCnk-aH8 {\\\\n color: blue;\\\\n}\\\\n\\\\n._2YsQE-S0o0NRXfC6XNApz2 {\\\\n color: blue;\\\\n}\\\\n\\\\n._3gGBcJHZU3seQVP5aq7Ksq {\\\\n color: red;\\\\n}\\\\n\\\\na {\\\\n color: yellow;\\\\n}\\\\n\\\\n.jHKqWGMvMrGp5RVPtApZ8 {\\\\n color: red;\\\\n}\\\\n\\", \\"\\"]); -// Exports -exports.locals = { - \\"foo\\": \\"bar\\", - \\"myBtnInfo_isDisabled\\": \\"value\\", - \\"btnInfo_isDisabled\\": \\"erBXHZCN_thRYfCnk-aH8\\", - \\"btnInfo_isDisabled_1\\": \\"_2YsQE-S0o0NRXfC6XNApz2\\", - \\"simple\\": \\"_3gGBcJHZU3seQVP5aq7Ksq\\", - \\"foo_bar\\": \\"jHKqWGMvMrGp5RVPtApZ8\\" -}; -module.exports = exports; -" -`; - -exports[`"localsConvention" option should work with a value equal to "dashesOnly": result 1`] = ` -Array [ - Array [ - "./modules/localsConvention/localsConvention.css", - ".erBXHZCN_thRYfCnk-aH8 { - color: blue; -} - -._2YsQE-S0o0NRXfC6XNApz2 { - color: blue; -} - -._3gGBcJHZU3seQVP5aq7Ksq { - color: red; -} - -a { - color: yellow; -} - -.jHKqWGMvMrGp5RVPtApZ8 { - color: red; -} -", - "", - ], -] -`; - -exports[`"localsConvention" option should work with a value equal to "dashesOnly": warnings 1`] = `Array []`; diff --git a/test/__snapshots__/modules-option.test.js.snap b/test/__snapshots__/modules-option.test.js.snap index 216b4ead..23e2b2b3 100644 --- a/test/__snapshots__/modules-option.test.js.snap +++ b/test/__snapshots__/modules-option.test.js.snap @@ -1,32 +1,32 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP +// Jest Snapshot v1, https://jestjs.io/docs/snapshot-testing -exports[`"modules" option issue #286: errors 1`] = `Array []`; +exports[`"modules" option issue #286: errors 1`] = `[]`; exports[`"modules" option issue #286: module 1`] = ` "// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../../src/runtime/api.js\\"); -var ___CSS_LOADER_ICSS_IMPORT_0___ = require(\\"./dep.css\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -exports.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../../src/runtime/api.js"; +import ___CSS_LOADER_ICSS_IMPORT_0___, * as ___CSS_LOADER_ICSS_IMPORT_0____NAMED___ from "./dep.css"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, "", true); // Module -exports.push([module.id, \\".b--main { }\\\\n\\", \\"\\"]); +___CSS_LOADER_EXPORT___.push([module.id, \`.b--main { } +\`, ""]); // Exports -exports.locals = { - \\"main\\": \\"b--main \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"red\\"] + \\"\\" -}; -module.exports = exports; +export var main = \`b--main \${___CSS_LOADER_ICSS_IMPORT_0____NAMED___["red"]}\`; +export default ___CSS_LOADER_EXPORT___; " `; exports[`"modules" option issue #286: result 1`] = ` -Array [ - Array [ +[ + [ "./modules/issue-286/dep.css", ".a--red { color: red } ", "", ], - Array [ + [ "./modules/issue-286/source.css", ".b--main { } ", @@ -35,36 +35,36 @@ Array [ ] `; -exports[`"modules" option issue #286: warnings 1`] = `Array []`; +exports[`"modules" option issue #286: warnings 1`] = `[]`; -exports[`"modules" option issue #636: errors 1`] = `Array []`; +exports[`"modules" option issue #636: errors 1`] = `[]`; exports[`"modules" option issue #636: module 1`] = ` "// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../../src/runtime/api.js\\"); -var ___CSS_LOADER_ICSS_IMPORT_0___ = require(\\"-!../../../../src/index.js??[ident]!./foo.scss\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -exports.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../../src/runtime/api.js"; +import ___CSS_LOADER_ICSS_IMPORT_0___, * as ___CSS_LOADER_ICSS_IMPORT_0____NAMED___ from "-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!../../../../node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!./foo.scss"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, "", true); // Module -exports.push([module.id, \\".prefix-bar {\\\\n}\\", \\"\\"]); +___CSS_LOADER_EXPORT___.push([module.id, \`.prefix-bar { +}\`, ""]); // Exports -exports.locals = { - \\"bar\\": \\"prefix-bar \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"foo\\"] + \\"\\" -}; -module.exports = exports; +export var bar = \`prefix-bar \${___CSS_LOADER_ICSS_IMPORT_0____NAMED___["foo"]}\`; +export default ___CSS_LOADER_EXPORT___; " `; exports[`"modules" option issue #636: result 1`] = ` -Array [ - Array [ - "../../src/index.js?[ident]!./modules/issue-636/foo.scss", +[ + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!../../node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!./modules/issue-636/foo.scss", ".prefix-foo { color: red; }", "", ], - Array [ + [ "./modules/issue-636/source.scss", ".prefix-bar { }", @@ -73,48 +73,64 @@ Array [ ] `; -exports[`"modules" option issue #636: warnings 1`] = `Array []`; +exports[`"modules" option issue #636: warnings 1`] = ` +[ + "ModuleWarning: Module Warning (from \`replaced original path\`): +Deprecation The legacy JS API is deprecated and will be removed in Dart Sass 2.0.0. + +More info: https://sass-lang.com/d/legacy-js-api", + "ModuleWarning: Module Warning (from \`replaced original path\`): +Deprecation The legacy JS API is deprecated and will be removed in Dart Sass 2.0.0. + +More info: https://sass-lang.com/d/legacy-js-api", +] +`; -exports[`"modules" option issue #861: errors 1`] = `Array []`; +exports[`"modules" option issue #861: errors 1`] = `[]`; exports[`"modules" option issue #861: module 1`] = ` "// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../../src/runtime/api.js\\"); -var ___CSS_LOADER_ICSS_IMPORT_0___ = require(\\"-!../../../../src/index.js??[ident]!./node_modules/@localpackage/color.css\\"); -var ___CSS_LOADER_ICSS_IMPORT_1___ = require(\\"-!../../../../src/index.js??[ident]!./node_modules/@localpackage/style.css\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -exports.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); -exports.i(___CSS_LOADER_ICSS_IMPORT_1___, \\"\\", true); +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../../src/runtime/api.js"; +import ___CSS_LOADER_ICSS_IMPORT_0___, * as ___CSS_LOADER_ICSS_IMPORT_0____NAMED___ from "-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./node_modules/@localpackage/color.css"; +import ___CSS_LOADER_ICSS_IMPORT_1___, * as ___CSS_LOADER_ICSS_IMPORT_1____NAMED___ from "-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./node_modules/@localpackage/style.css"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, "", true); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_1___, "", true); // Module -exports.push([module.id, \\"._2TvhMv03l8C6o3eyE8OUU3 {\\\\n color: \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"color-grey\\"] + \\";\\\\n margin: 0;\\\\n padding: 0;\\\\n}\\\\n\\", \\"\\"]); +___CSS_LOADER_EXPORT___.push([module.id, \`.y19CYJvfPsY__wKRrRBJ { + color: \${ ___CSS_LOADER_ICSS_IMPORT_0____NAMED___["color-grey"] }; + margin: 0; + padding: 0; +} +\`, ""]); // Exports -exports.locals = { - \\"color-grey\\": \\"\\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"color-grey\\"] + \\"\\", - \\"copyright\\": \\"_2TvhMv03l8C6o3eyE8OUU3 \\" + ___CSS_LOADER_ICSS_IMPORT_1___.locals[\\"type-heading\\"] + \\"\\" -}; -module.exports = exports; +var _1 = \`\${___CSS_LOADER_ICSS_IMPORT_0____NAMED___["color-grey"]}\`; +export { _1 as "color-grey" }; +export var copyright = \`y19CYJvfPsY__wKRrRBJ \${___CSS_LOADER_ICSS_IMPORT_1____NAMED___["type-heading"]}\`; +export default ___CSS_LOADER_EXPORT___; " `; exports[`"modules" option issue #861: result 1`] = ` -Array [ - Array [ - "../../src/index.js?[ident]!./modules/issue-861/node_modules/@localpackage/color.css", +[ + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./modules/issue-861/node_modules/@localpackage/color.css", " ", "", ], - Array [ - "../../src/index.js?[ident]!./modules/issue-861/node_modules/@otherlocalpackage/style.css", - "._3_UmHSyGSKHfkAuB_4PF0r { + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./modules/issue-861/node_modules/@otherlocalpackage/style.css", + ".RkMzgETKHXnuOl77obC2 { display: flex; } ", "", ], - Array [ - "../../src/index.js?[ident]!./modules/issue-861/node_modules/@localpackage/style.css", - "._3tsKb6RyTte_M89z1nGia_ { + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./modules/issue-861/node_modules/@localpackage/style.css", + ".z7lux7p74VniQzqVx2Bi { color: red; margin: 0; padding: 0; @@ -122,9 +138,9 @@ Array [ ", "", ], - Array [ + [ "./modules/issue-861/resolving-from-node_modules.css", - "._2TvhMv03l8C6o3eyE8OUU3 { + ".y19CYJvfPsY__wKRrRBJ { color: gray; margin: 0; padding: 0; @@ -135,29 +151,106 @@ Array [ ] `; -exports[`"modules" option issue #861: warnings 1`] = `Array []`; +exports[`"modules" option issue #861: warnings 1`] = `[]`; + +exports[`"modules" option issue #966 - values in selectors aren't escaped properly: errors 1`] = `[]`; + +exports[`"modules" option issue #966 - values in selectors aren't escaped properly: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../../src/runtime/api.js"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`._7-foo-class { + color: red; +} + +.\\\\--bar-class { + color: red; +} + +.\\\\--baz-class { + color: red; +} + +.fooBaz-class-continuation { + color: red; +} + +.some.class { + color: red; +} +\`, ""]); +// Exports +var _1 = \`_7-foo-class\`; +export { _1 as "foo-class" }; +var _2 = \`--bar-class\`; +export { _2 as "bar-class" }; +var _3 = \`--baz-class\`; +export { _3 as "baz-class" }; +var _4 = \`fooBaz-class-continuation\`; +export { _4 as "fooBaz-class" }; +export var some = \`some\`; +var _5 = \`class\`; +export { _5 as "class" }; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option issue #966 - values in selectors aren't escaped properly: result 1`] = ` +[ + [ + "./modules/issue-966/issue-966.css", + "._7-foo-class { + color: red; +} + +.\\--bar-class { + color: red; +} + +.\\--baz-class { + color: red; +} + +.fooBaz-class-continuation { + color: red; +} + +.some.class { + color: red; +} +", + "", + ], +] +`; + +exports[`"modules" option issue #966 - values in selectors aren't escaped properly: warnings 1`] = `[]`; -exports[`"modules" option issue #966: errors 1`] = `Array []`; +exports[`"modules" option issue #966: errors 1`] = `[]`; exports[`"modules" option issue #966: module 1`] = ` "// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../../src/runtime/api.js\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../../src/runtime/api.js"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); // Module -exports.push([module.id, \\".button.hey {\\\\n color: red;\\\\n}\\\\n\\", \\"\\"]); +___CSS_LOADER_EXPORT___.push([module.id, \`.button-hey { + color: red; +} +\`, ""]); // Exports -exports.locals = { - \\"button\\": \\"button.hey\\" -}; -module.exports = exports; +export var button = \`button-hey\`; +export default ___CSS_LOADER_EXPORT___; " `; exports[`"modules" option issue #966: result 1`] = ` -Array [ - Array [ +[ + [ "./modules/issue-966/button.css", - ".button.hey { + ".button-hey { color: red; } ", @@ -166,39 +259,51 @@ Array [ ] `; -exports[`"modules" option issue #966: warnings 1`] = `Array []`; +exports[`"modules" option issue #966: warnings 1`] = `[]`; -exports[`"modules" option issue #967: errors 1`] = `Array []`; +exports[`"modules" option issue #967: errors 1`] = `[]`; exports[`"modules" option issue #967: module 1`] = ` "// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../../src/runtime/api.js\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../../src/runtime/api.js"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); // Module -exports.push([module.id, \\".modules-issue-967-path-placeholder__foo__--sep---sep---sep---sep----sep---sep---sep---sep---sep-- {\\\\n color: red;\\\\n}\\\\n\\\\n.modules-issue-967-path-placeholder__foo\\\\\\\\/bar__--sep---sep---sep---sep----sep---sep---sep---sep---sep-- {\\\\n color: blue;\\\\n}\\\\n\\\\n.modules-issue-967-path-placeholder__\\\\\\\\[\\\\\\\\/\\\\\\\\?\\\\\\\\<\\\\\\\\>\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\3A \\\\\\\\*\\\\\\\\|\\\\\\\\\\\\\\"\\\\\\\\3A \\\\\\\\]__--sep---sep---sep---sep----sep---sep---sep---sep---sep-- {\\\\n color: yellow;\\\\n}\\\\n\\", \\"\\"]); +___CSS_LOADER_EXPORT___.push([module.id, \`.modules-issue-967-path-placeholder__foo__--sep---sep---sep---sep----sep---sep---sep---sep---sep-- { + color: red; +} + +.modules-issue-967-path-placeholder__foo\\\\/bar__--sep---sep---sep---sep----sep---sep---sep---sep---sep-- { + color: blue; +} + +.modules-issue-967-path-placeholder__\\\\[\\\\/\\\\?\\\\<\\\\>\\\\\\\\\\\\\\\\\\\\3A \\\\*\\\\|\\\\"\\\\3A \\\\]__--sep---sep---sep---sep----sep---sep---sep---sep---sep-- { + color: yellow; +} +\`, ""]); // Exports -exports.locals = { - \\"foo\\": \\"modules-issue-967-path-placeholder__foo__--sep---sep---sep---sep----sep---sep---sep---sep---sep--\\", - \\"foo/bar\\": \\"modules-issue-967-path-placeholder__foo/bar__--sep---sep---sep---sep----sep---sep---sep---sep---sep--\\", - \\"[/?<>\\\\\\\\\\\\\\\\:*|\\\\\\":]\\": \\"modules-issue-967-path-placeholder__[/?<>\\\\\\\\\\\\\\\\:*|\\\\\\":]__--sep---sep---sep---sep----sep---sep---sep---sep---sep--\\" -}; -module.exports = exports; +export var foo = \`modules-issue-967-path-placeholder__foo__--sep---sep---sep---sep----sep---sep---sep---sep---sep--\`; +var _1 = \`modules-issue-967-path-placeholder__foo/bar__--sep---sep---sep---sep----sep---sep---sep---sep---sep--\`; +export { _1 as "foo/bar" }; +var _2 = \`modules-issue-967-path-placeholder__[/?<>\\\\\\\\:*|":]__--sep---sep---sep---sep----sep---sep---sep---sep---sep--\`; +export { _2 as "[/?<>\\\\\\\\:*|\\":]" }; +export default ___CSS_LOADER_EXPORT___; " `; exports[`"modules" option issue #967: result 1`] = ` -Array [ - Array [ +[ + [ "./modules/issue-967/path-placeholder.css", ".modules-issue-967-path-placeholder__foo__--sep---sep---sep---sep----sep---sep---sep---sep---sep-- { color: red; } -.modules-issue-967-path-placeholder__foo\\\\/bar__--sep---sep---sep---sep----sep---sep---sep---sep---sep-- { +.modules-issue-967-path-placeholder__foo\\/bar__--sep---sep---sep---sep----sep---sep---sep---sep---sep-- { color: blue; } -.modules-issue-967-path-placeholder__\\\\[\\\\/\\\\?\\\\<\\\\>\\\\\\\\\\\\\\\\\\\\3A \\\\*\\\\|\\\\\\"\\\\3A \\\\]__--sep---sep---sep---sep----sep---sep---sep---sep---sep-- { +.modules-issue-967-path-placeholder__\\[\\/\\?\\<\\>\\\\\\\\\\3A \\*\\|\\"\\3A \\]__--sep---sep---sep---sep----sep---sep---sep---sep---sep-- { color: yellow; } ", @@ -207,29 +312,31 @@ Array [ ] `; -exports[`"modules" option issue #967: warnings 1`] = `Array []`; +exports[`"modules" option issue #967: warnings 1`] = `[]`; -exports[`"modules" option issue #980: errors 1`] = `Array []`; +exports[`"modules" option issue #980: errors 1`] = `[]`; exports[`"modules" option issue #980: module 1`] = ` "// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../../src/runtime/api.js\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../../src/runtime/api.js"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); // Module -exports.push([module.id, \\".file-with-many-dots-in-name_a_22FL3 {\\\\n color: red;\\\\n}\\\\n\\", \\"\\"]); +___CSS_LOADER_EXPORT___.push([module.id, \`.file-with-many-dots-in-name_a_KwVdi { + color: red; +} +\`, ""]); // Exports -exports.locals = { - \\"a\\": \\"file-with-many-dots-in-name_a_22FL3\\" -}; -module.exports = exports; +export var a = \`file-with-many-dots-in-name_a_KwVdi\`; +export default ___CSS_LOADER_EXPORT___; " `; exports[`"modules" option issue #980: result 1`] = ` -Array [ - Array [ +[ + [ "./modules/issue-980/file.with.many.dots.in.name.css", - ".file-with-many-dots-in-name_a_22FL3 { + ".file-with-many-dots-in-name_a_KwVdi { color: red; } ", @@ -238,89 +345,75 @@ Array [ ] `; -exports[`"modules" option issue #980: warnings 1`] = `Array []`; +exports[`"modules" option issue #980: warnings 1`] = `[]`; -exports[`"modules" option issue #995: errors 1`] = `Array []`; +exports[`"modules" option issue #995 #2: errors 1`] = `[]`; -exports[`"modules" option issue #995: module 1`] = ` +exports[`"modules" option issue #995 #2: module 1`] = ` "// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../../src/runtime/api.js\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../../src/runtime/api.js"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); // Module -exports.push([module.id, \\"/* class=\\\\\\"😀\\\\\\" */\\\\n.a {\\\\n color: red;\\\\n}\\\\n\\\\n/* class=\\\\\\"😀 😓\\\\\\" */\\\\n.a.b {\\\\n color: red;\\\\n}\\\\n\\\\n/* class=\\\\\\"😀\\\\\\" > class=\\\\\\"😓\\\\\\" */\\\\n.a .b {\\\\n color: red;\\\\n}\\\\n\\\\n/* class=\\\\\\"😀\\\\\\" */\\\\n.😀 {\\\\n color: red;\\\\n}\\\\n\\\\n/* class=\\\\\\"😀 😓\\\\\\" */\\\\n.😀.😓 {\\\\n color: red;\\\\n}\\\\n\\\\n/* class=\\\\\\"😀\\\\\\" > class=\\\\\\"😓\\\\\\" */\\\\n.😀 .😓 {\\\\n color: red;\\\\n}\\\\n\\\\n/* class=\\\\\\"😀\\\\\\" */\\\\n.\\\\\\\\1F600 {\\\\n color: red;\\\\n}\\\\n\\\\n/* class=\\\\\\"😀 😓\\\\\\" */\\\\n.\\\\\\\\1F600.\\\\\\\\1F613 {\\\\n color: red;\\\\n}\\\\n\\\\n/* class=\\\\\\"😀\\\\\\" > class=\\\\\\"😓\\\\\\" */\\\\n.\\\\\\\\1F600 .\\\\\\\\1F613 {\\\\n color: red;\\\\n}\\\\n\\\\n/* Local */\\\\n\\\\n/* class=\\\\\\"😀\\\\\\" */\\\\n.\\\\\\\\1F600 {\\\\n color: red;\\\\n}\\\\n\\\\n/* class=\\\\\\"😀 😓\\\\\\" */\\\\n.\\\\\\\\1F600.\\\\\\\\1F600 {\\\\n color: red;\\\\n}\\\\n\\\\n/* class=\\\\\\"😀\\\\\\" > class=\\\\\\"😓\\\\\\" */\\\\n.\\\\\\\\1F600 .\\\\\\\\1F600 {\\\\n color: red;\\\\n}\\\\n\\\\n.\\\\\\\\1F600 .a .\\\\\\\\1F600 {\\\\n color: red;\\\\n}\\\\n\\\\n.\\\\\\\\1F600 .\\\\\\\\1F600 .\\\\\\\\1F600 {\\\\n color: red;\\\\n}\\\\n\\\\ndiv:not(.\\\\\\\\1F600) {\\\\n color: red;\\\\n}\\\\n\\\\n.\\\\\\\\1F600 .b {\\\\n color: red;\\\\n}\\\\n\\\\n.b .\\\\\\\\1F600 {\\\\n color: red;\\\\n}\\\\n\\\\n.\\\\\\\\1F613 .\\\\\\\\1F600 {\\\\n color: red;\\\\n}\\\\n\\\\n.\\\\\\\\1F613 .\\\\\\\\1F600 {\\\\n color: red;\\\\n}\\\\n\\\\n.\\\\\\\\1F600 > .\\\\\\\\1F600 > .\\\\\\\\1F600 {\\\\n color: red;\\\\n}\\\\n\\", \\"\\"]); -// Exports -exports.locals = { - \\"a\\": \\"😀\\", - \\"b\\": \\"😀\\", - \\"c\\": \\"😀\\" -}; -module.exports = exports; -" -`; - -exports[`"modules" option issue #995: result 1`] = ` -Array [ - Array [ - "./modules/issue-995/issue-995.css", - "/* class=\\"😀\\" */ +___CSS_LOADER_EXPORT___.push([module.id, \`/* class="😀" */ .a { color: red; } -/* class=\\"😀 😓\\" */ +/* class="😀 😓" */ .a.b { color: red; } -/* class=\\"😀\\" > class=\\"😓\\" */ +/* class="😀" > class="😓" */ .a .b { color: red; } -/* class=\\"😀\\" */ +/* class="😀" */ .😀 { color: red; } -/* class=\\"😀 😓\\" */ +/* class="😀 😓" */ .😀.😓 { color: red; } -/* class=\\"😀\\" > class=\\"😓\\" */ +/* class="😀" > class="😓" */ .😀 .😓 { color: red; } -/* class=\\"😀\\" */ +/* class="😀" */ .\\\\1F600 { color: red; } -/* class=\\"😀 😓\\" */ +/* class="😀 😓" */ .\\\\1F600.\\\\1F613 { color: red; } -/* class=\\"😀\\" > class=\\"😓\\" */ +/* class="😀" > class="😓" */ .\\\\1F600 .\\\\1F613 { color: red; } /* Local */ -/* class=\\"😀\\" */ -.\\\\1F600 { +/* class="😀" */ +.\\\\ { color: red; } -/* class=\\"😀 😓\\" */ -.\\\\1F600.\\\\1F600 { +/* class="😀 😓" */ +.\\\\ .\\\\ { color: red; } -/* class=\\"😀\\" > class=\\"😓\\" */ -.\\\\1F600 .\\\\1F600 { +/* class="😀" > class="😓" */ +.\\\\ .\\\\ { color: red; } @@ -328,201 +421,137 @@ Array [ color: red; } -.\\\\1F600 .\\\\1F600 .\\\\1F600 { +.\\\\ .\\\\ .\\\\ { color: red; } -div:not(.\\\\1F600) { +div:not(.\\\\ ) { color: red; } -.\\\\1F600 .b { +.\\\\ .b { color: red; } -.b .\\\\1F600 { +.b .\\\\ { color: red; } -.\\\\1F613 .\\\\1F600 { +.\\\\1F613 .\\\\ { color: red; } -.\\\\1F613 .\\\\1F600 { +.\\\\1F613 .\\\\ { color: red; } -.\\\\1F600 > .\\\\1F600 > .\\\\1F600 { +.\\\\ > .\\\\ > .\\\\ { color: red; } -", - "", - ], -] -`; - -exports[`"modules" option issue #995: warnings 1`] = `Array []`; - -exports[`"modules" option issue #1063 throw error: errors 1`] = ` -Array [ - "ModuleError: Module Error (from \`replaced original path\`): -options.mode must be either \\"global\\", \\"local\\" or \\"pure\\" (default \\"local\\")", - "ModuleError: Module Error (from \`replaced original path\`): -options.mode must be either \\"global\\", \\"local\\" or \\"pure\\" (default \\"local\\")", - "ModuleError: Module Error (from \`replaced original path\`): -options.mode must be either \\"global\\", \\"local\\" or \\"pure\\" (default \\"local\\")", -] -`; - -exports[`"modules" option issue #1063 throw error: module 1`] = ` -"// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../../src/runtime/api.js\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -// Module -exports.push([module.id, \\".classNameLocalFile {\\\\n color: green;\\\\n}\\\\n\\\\n:global(.otherClassLocalFile) {\\\\n color: blue;\\\\n}\\\\n\\", \\"\\"]); -// Exports -module.exports = exports; -" -`; - -exports[`"modules" option issue #1063 throw error: module 2`] = ` -"// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../../src/runtime/api.js\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -// Module -exports.push([module.id, \\".classNameGlobalFile {\\\\n color: black;\\\\n}\\\\n\\\\n:local(.otherClassGlobalFile) {\\\\n color: coral;\\\\n}\\\\n\\", \\"\\"]); +\`, ""]); // Exports -module.exports = exports; +export var a = \` \`; +export var b = \` \`; +export var c = \` \`; +export default ___CSS_LOADER_EXPORT___; " `; -exports[`"modules" option issue #1063 throw error: result 1`] = ` -".classNameLocalFile { - color: green; +exports[`"modules" option issue #995 #2: result 1`] = ` +[ + [ + "./modules/issue-995/issue-995.css", + "/* class="😀" */ +.a { + color: red; } -:global(.otherClassLocalFile) { - color: blue; +/* class="😀 😓" */ +.a.b { + color: red; } -.classNameGlobalFile { - color: black; + +/* class="😀" > class="😓" */ +.a .b { + color: red; } -:local(.otherClassGlobalFile) { - color: coral; +/* class="😀" */ +.😀 { + color: red; } -.foo :local(.bar) { + +/* class="😀 😓" */ +.😀.😓 { color: red; } -" -`; -exports[`"modules" option issue #1063 throw error: warnings 1`] = `Array []`; +/* class="😀" > class="😓" */ +.😀 .😓 { + color: red; +} -exports[`"modules" option issue #1063: errors 1`] = `Array []`; +/* class="😀" */ +.\\1F600 { + color: red; +} -exports[`"modules" option issue #1063: module with the \`global\` mode 1`] = ` -"// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../../src/runtime/api.js\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -// Module -exports.push([module.id, \\".classNameGlobalFile {\\\\n color: black;\\\\n}\\\\n\\\\n._2rcag09JpwrP4_hfyyRmm- {\\\\n color: coral;\\\\n}\\\\n\\", \\"\\"]); -// Exports -exports.locals = { - \\"otherClassGlobalFile\\": \\"_2rcag09JpwrP4_hfyyRmm-\\" -}; -module.exports = exports; -" -`; +/* class="😀 😓" */ +.\\1F600.\\1F613 { + color: red; +} -exports[`"modules" option issue #1063: module with the \`local\` mode 1`] = ` -"// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../../src/runtime/api.js\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -// Module -exports.push([module.id, \\"._2cZDGA9F7Kx1vfQmWcLP51 {\\\\n color: green;\\\\n}\\\\n\\\\n.otherClassLocalFile {\\\\n color: blue;\\\\n}\\\\n\\", \\"\\"]); -// Exports -exports.locals = { - \\"classNameLocalFile\\": \\"_2cZDGA9F7Kx1vfQmWcLP51\\" -}; -module.exports = exports; -" -`; +/* class="😀" > class="😓" */ +.\\1F600 .\\1F613 { + color: red; +} -exports[`"modules" option issue #1063: module with the \`pure\` mode 1`] = ` -"// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../../src/runtime/api.js\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -// Module -exports.push([module.id, \\"._1rycxa6QkLdgO7vayuTDvk ._3Otdq1jay-xaQGguOXb-0X {\\\\n color: red;\\\\n}\\\\n\\", \\"\\"]); -// Exports -exports.locals = { - \\"foo\\": \\"_1rycxa6QkLdgO7vayuTDvk\\", - \\"bar\\": \\"_3Otdq1jay-xaQGguOXb-0X\\" -}; -module.exports = exports; -" -`; +/* Local */ -exports[`"modules" option issue #1063: result 1`] = ` -"._2cZDGA9F7Kx1vfQmWcLP51 { - color: green; +/* class="😀" */ +.\\ { + color: red; } -.otherClassLocalFile { - color: blue; +/* class="😀 😓" */ +.\\ .\\ { + color: red; } -.classNameGlobalFile { - color: black; + +/* class="😀" > class="😓" */ +.\\ .\\ { + color: red; } -._2rcag09JpwrP4_hfyyRmm- { - color: coral; +.\\1F600 .a .\\1F600 { + color: red; } -._1rycxa6QkLdgO7vayuTDvk ._3Otdq1jay-xaQGguOXb-0X { + +.\\ .\\ .\\ { color: red; } -" -`; -exports[`"modules" option issue #1063: warnings 1`] = `Array []`; +div:not(.\\ ) { + color: red; +} -exports[`"modules" option should avoid unnecessary "require": errors 1`] = `Array []`; +.\\ .b { + color: red; +} -exports[`"modules" option should avoid unnecessary "require": module 1`] = ` -"// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../../src/runtime/api.js\\"); -var ___CSS_LOADER_ICSS_IMPORT_0___ = require(\\"-!../../../../src/index.js??[ident]!./imported-simple.css\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -exports.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); -// Module -exports.push([module.id, \\"._1UgilPFsYxSK4gX5ZkTYCj {\\\\n color: red;\\\\n}\\\\n\\\\n._3V5dPWs_xG519C1PGI1Njd {\\\\n color: red;\\\\n}\\\\n\\", \\"\\"]); -// Exports -exports.locals = { - \\"simple-foo\\": \\"_1UgilPFsYxSK4gX5ZkTYCj \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"imported-simple\\"] + \\"\\", - \\"simple-bar\\": \\"_3V5dPWs_xG519C1PGI1Njd \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"imported-simple\\"] + \\"\\" -}; -module.exports = exports; -" -`; +.b .\\ { + color: red; +} -exports[`"modules" option should avoid unnecessary "require": result 1`] = ` -Array [ - Array [ - "../../src/index.js?[ident]!./modules/composes/imported-simple.css", - "._15HqoDBChWnuDGxJ6jOtUV { - display: block; +.\\1F613 .\\ { + color: red; } -", - "", - ], - Array [ - "./modules/composes/composes-duplicate.css", - "._1UgilPFsYxSK4gX5ZkTYCj { + +.\\1F613 .\\ { color: red; } -._3V5dPWs_xG519C1PGI1Njd { +.\\ > .\\ > .\\ { color: red; } ", @@ -531,321 +560,214 @@ Array [ ] `; -exports[`"modules" option should avoid unnecessary "require": warnings 1`] = `Array []`; +exports[`"modules" option issue #995 #2: warnings 1`] = `[]`; -exports[`"modules" option should dedupe same modules in one module (issue #1037): errors 1`] = `Array []`; +exports[`"modules" option issue #995: errors 1`] = `[]`; -exports[`"modules" option should dedupe same modules in one module (issue #1037): module 1`] = ` +exports[`"modules" option issue #995: module 1`] = ` "// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../../src/runtime/api.js\\"); -var ___CSS_LOADER_ICSS_IMPORT_0___ = require(\\"-!../../../../src/index.js??[ident]!./buttons/primary-button.css\\"); -var ___CSS_LOADER_ICSS_IMPORT_1___ = require(\\"-!../../../../src/index.js??[ident]!./buttons/secondary-button.css\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -exports.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); -exports.i(___CSS_LOADER_ICSS_IMPORT_1___, \\"\\", true); +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../../src/runtime/api.js"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); // Module -exports.push([module.id, \\".EzyG7UwnL9VTWJMm1zvyL\\\\n{\\\\n}\\\\n\\\\n.vO79o4trei2_Dt8Bi8s5W\\\\n{\\\\n}\\\\n\\", \\"\\"]); -// Exports -exports.locals = { - \\"nextButton\\": \\"EzyG7UwnL9VTWJMm1zvyL \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"primaryButton\\"] + \\"\\", - \\"backButton\\": \\"vO79o4trei2_Dt8Bi8s5W \\" + ___CSS_LOADER_ICSS_IMPORT_1___.locals[\\"secondaryButton\\"] + \\"\\" -}; -module.exports = exports; -" -`; - -exports[`"modules" option should dedupe same modules in one module (issue #1037): result 1`] = ` -Array [ - Array [ - "../../src/index.js?[ident]!./modules/dedupe/buttons/button.css", - "._2CDoM-NXLchQ7VXiH4UhCN -{ - border:none; - padding:7px 15px; - cursor:pointer; -} -", - "", - ], - Array [ - "../../src/index.js?[ident]!./modules/dedupe/buttons/primary-button.css", - ".z2okwFUvcW0z_ZC8D-5T_ -{ - background-color:blue; - color:white; -} -", - "", - ], - Array [ - "../../src/index.js?[ident]!./modules/dedupe/buttons/secondary-button.css", - ".L9-xT4xBLmBRaK2WDI00c -{ - background-color:#555; - color:white; -} -", - "", - ], - Array [ - "./modules/dedupe/source.css", - ".EzyG7UwnL9VTWJMm1zvyL -{ +___CSS_LOADER_EXPORT___.push([module.id, \`/* class="😀" */ +.a { + color: red; } -.vO79o4trei2_Dt8Bi8s5W -{ +/* class="😀 😓" */ +.a.b { + color: red; } -", - "", - ], -] -`; -exports[`"modules" option should dedupe same modules in one module (issue #1037): warnings 1`] = `Array []`; +/* class="😀" > class="😓" */ +.a .b { + color: red; +} -exports[`"modules" option should keep order: errors 1`] = `Array []`; +/* class="😀" */ +.😀 { + color: red; +} -exports[`"modules" option should keep order: module 1`] = ` -"// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../../src/runtime/api.js\\"); -var ___CSS_LOADER_ICSS_IMPORT_0___ = require(\\"-!../../../../src/index.js??[ident]!./order-1.css\\"); -var ___CSS_LOADER_ICSS_IMPORT_1___ = require(\\"-!../../../../src/index.js??[ident]!./order-2.css\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -exports.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); -exports.i(___CSS_LOADER_ICSS_IMPORT_1___, \\"\\", true); -// Module -exports.push([module.id, \\".Wjk4jowq_W5p9UqAWNj8p {\\\\n display: block;\\\\n}\\\\n\\\\n._1hTJaGPJyAIYbIwkbYwOGW {\\\\n display: inline;\\\\n}\\\\n\\", \\"\\"]); -// Exports -exports.locals = { - \\"simple\\": \\"Wjk4jowq_W5p9UqAWNj8p \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"order-1\\"] + \\" \\" + ___CSS_LOADER_ICSS_IMPORT_1___.locals[\\"order-2\\"] + \\" \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"order-1-1\\"] + \\" \\" + ___CSS_LOADER_ICSS_IMPORT_1___.locals[\\"order-2-2\\"] + \\"\\", - \\"simple-other\\": \\"_1hTJaGPJyAIYbIwkbYwOGW \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"order-1\\"] + \\"\\" -}; -module.exports = exports; -" -`; +/* class="😀 😓" */ +.😀.😓 { + color: red; +} -exports[`"modules" option should keep order: result 1`] = ` -Array [ - Array [ - "../../src/index.js?[ident]!./modules/order/order-1.css", - "._2r9YTNQEwCk0bSiZCuc7Ol { +/* class="😀" > class="😓" */ +.😀 .😓 { color: red; } -.He7W3er8OE_ZP1m7aP7eb { - color: aliceblue; +/* class="😀" */ +.\\\\1F600 { + color: red; } -", - "", - ], - Array [ - "../../src/index.js?[ident]!./modules/order/order-2.css", - "._18ve634MAK3QtupmRo9lo3 { - color: blue; + +/* class="😀 😓" */ +.\\\\1F600.\\\\1F613 { + color: red; } -.z6vp19LKudIK0nOAVOTAc { - color: azure; +/* class="😀" > class="😓" */ +.\\\\1F600 .\\\\1F613 { + color: red; } -", - "", - ], - Array [ - "./modules/order/index.css", - ".Wjk4jowq_W5p9UqAWNj8p { - display: block; + +/* Local */ + +/* class="😀" */ +.😀 { + color: red; } -._1hTJaGPJyAIYbIwkbYwOGW { - display: inline; +/* class="😀 😓" */ +.😀.😀 { + color: red; +} + +/* class="😀" > class="😓" */ +.😀 .😀 { + color: red; +} + +.\\\\1F600 .a .\\\\1F600 { + color: red; } -", - "", - ], -] -`; -exports[`"modules" option should keep order: warnings 1`] = `Array []`; +.😀 .😀 .😀 { + color: red; +} -exports[`"modules" option should should work with two leading hyphens: errors 1`] = `Array []`; +div:not(.😀) { + color: red; +} -exports[`"modules" option should should work with two leading hyphens: module 1`] = ` -"// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../../src/runtime/api.js\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -// Module -exports.push([module.id, \\"._--test {\\\\n background: red;\\\\n}\\\\n\\\\n._--_test {\\\\n background: blue;\\\\n}\\\\n\\\\n._--className {\\\\n background: red;\\\\n}\\\\n\\\\n#_--someId {\\\\n background: green;\\\\n}\\\\n\\\\n._--className ._--subClass {\\\\n color: green;\\\\n}\\\\n\\\\n#_--someId ._--subClass {\\\\n color: blue;\\\\n}\\\\n\\\\n._---a0-34a___f {\\\\n color: red;\\\\n}\\\\n\\\\n._--m_x_\\\\\\\\@ {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n._--B\\\\\\\\&W\\\\\\\\? {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\":\`(\\\\\\" */\\\\n._--\\\\\\\\3A \\\\\\\\\`\\\\\\\\( {\\\\n color: aqua;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\"1a2b3c\\\\\\" */\\\\n._--\\\\\\\\31 a2b3c {\\\\n color: aliceblue;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"#fake-id\\\\\\" */\\\\n#_--\\\\\\\\#fake-id {\\\\n color: antiquewhite;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"-a-b-c-\\\\\\" */\\\\n#_---a-b-c- {\\\\n color: azure;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"©\\\\\\" */\\\\n#_--© {\\\\n color: black;\\\\n}\\\\n\\\\n._--♥ { background: lime; }\\\\n._--© { background: lime; }\\\\n._--“‘’” { background: lime; }\\\\n._--☺☃ { background: lime; }\\\\n._--⌘⌥ { background: lime; }\\\\n._--𝄞♪♩♫♬ { background: lime; }\\\\n._--💩 { background: lime; }\\\\n._--\\\\\\\\? { background: lime; }\\\\n._--\\\\\\\\@ { background: lime; }\\\\n._--\\\\\\\\. { background: lime; }\\\\n._--\\\\\\\\3A \\\\\\\\) { background: lime; }\\\\n._--\\\\\\\\3A \\\\\\\\\`\\\\\\\\( { background: lime; }\\\\n._--\\\\\\\\31 23 { background: lime; }\\\\n._--\\\\\\\\31 a2b3c { background: lime; }\\\\n._--\\\\\\\\ { background: lime; }\\\\n._--\\\\\\\\<\\\\\\\\>\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\>\\\\\\\\>\\\\\\\\<\\\\\\\\> { background: lime; }\\\\n._--\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\[\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\-\\\\\\\\]\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\<\\\\\\\\<\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\.\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\. { background: lime; }\\\\n._--\\\\\\\\# { background: lime; }\\\\n._--\\\\\\\\#\\\\\\\\# { background: lime; }\\\\n._--\\\\\\\\#\\\\\\\\.\\\\\\\\#\\\\\\\\.\\\\\\\\# { background: lime; }\\\\n._--\\\\\\\\_ { background: lime; }\\\\n._--\\\\\\\\{\\\\\\\\} { background: lime; }\\\\n._--\\\\\\\\#fake\\\\\\\\-id { background: lime; }\\\\n._--foo\\\\\\\\.bar { background: lime; }\\\\n._--\\\\\\\\3A hover { background: lime; }\\\\n._--\\\\\\\\3A hover\\\\\\\\3A focus\\\\\\\\3A active { background: lime; }\\\\n._--\\\\\\\\[attr\\\\\\\\=value\\\\\\\\] { background: lime; }\\\\n._--f\\\\\\\\/o\\\\\\\\/o { background: lime; }\\\\n._--f\\\\\\\\\\\\\\\\o\\\\\\\\\\\\\\\\o { background: lime; }\\\\n._--f\\\\\\\\*o\\\\\\\\*o { background: lime; }\\\\n._--f\\\\\\\\!o\\\\\\\\!o { background: lime; }\\\\n._--f\\\\\\\\'o\\\\\\\\'o { background: lime; }\\\\n._--f\\\\\\\\~o\\\\\\\\~o { background: lime; }\\\\n._--f\\\\\\\\+o\\\\\\\\+o { background: lime; }\\\\n\\\\n._--foo\\\\\\\\/bar {\\\\n background: hotpink;\\\\n}\\\\n\\\\n._--foo\\\\\\\\\\\\\\\\bar {\\\\n background: hotpink;\\\\n}\\\\n\\\\n._--foo\\\\\\\\/bar\\\\\\\\/baz {\\\\n background: hotpink;\\\\n}\\\\n\\\\n._--foo\\\\\\\\\\\\\\\\bar\\\\\\\\\\\\\\\\baz {\\\\n background: hotpink;\\\\n}\\\\n\\", \\"\\"]); -// Exports -exports.locals = { - \\"123\\": \\"_--123\\", - \\"test\\": \\"_--test\\", - \\"_test\\": \\"_--_test\\", - \\"className\\": \\"_--className\\", - \\"someId\\": \\"_--someId\\", - \\"subClass\\": \\"_--subClass\\", - \\"-a0-34a___f\\": \\"_---a0-34a___f\\", - \\"m_x_@\\": \\"_--m_x_@\\", - \\"B&W?\\": \\"_--B&W?\\", - \\":\`(\\": \\"_--:\`(\\", - \\"1a2b3c\\": \\"_--1a2b3c\\", - \\"#fake-id\\": \\"_--#fake-id\\", - \\"-a-b-c-\\": \\"_---a-b-c-\\", - \\"©\\": \\"_--©\\", - \\"♥\\": \\"_--♥\\", - \\"“‘’”\\": \\"_--“‘’”\\", - \\"☺☃\\": \\"_--☺☃\\", - \\"⌘⌥\\": \\"_--⌘⌥\\", - \\"𝄞♪♩♫♬\\": \\"_--𝄞♪♩♫♬\\", - \\"💩\\": \\"_--💩\\", - \\"?\\": \\"_--?\\", - \\"@\\": \\"_--@\\", - \\".\\": \\"_--.\\", - \\":)\\": \\"_--:)\\", - \\"

\\": \\"_--

\\", - \\"<><<<>><>\\": \\"_--<><<<>><>\\", - \\"++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.\\": \\"_--++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.\\", - \\"#\\": \\"_--#\\", - \\"##\\": \\"_--##\\", - \\"#.#.#\\": \\"_--#.#.#\\", - \\"_\\": \\"_--_\\", - \\"{}\\": \\"_--{}\\", - \\"foo.bar\\": \\"_--foo.bar\\", - \\":hover\\": \\"_--:hover\\", - \\":hover:focus:active\\": \\"_--:hover:focus:active\\", - \\"[attr=value]\\": \\"_--[attr=value]\\", - \\"f/o/o\\": \\"_--f/o/o\\", - \\"f\\\\\\\\o\\\\\\\\o\\": \\"_--f\\\\\\\\o\\\\\\\\o\\", - \\"f*o*o\\": \\"_--f*o*o\\", - \\"f!o!o\\": \\"_--f!o!o\\", - \\"f'o'o\\": \\"_--f'o'o\\", - \\"f~o~o\\": \\"_--f~o~o\\", - \\"f+o+o\\": \\"_--f+o+o\\", - \\"foo/bar\\": \\"_--foo/bar\\", - \\"foo\\\\\\\\bar\\": \\"_--foo\\\\\\\\bar\\", - \\"foo/bar/baz\\": \\"_--foo/bar/baz\\", - \\"foo\\\\\\\\bar\\\\\\\\baz\\": \\"_--foo\\\\\\\\bar\\\\\\\\baz\\" -}; -module.exports = exports; +.😀 .b { + color: red; +} + +.b .😀 { + color: red; +} + +.\\\\1F613 .😀 { + color: red; +} + +.\\\\1F613 .😀 { + color: red; +} + +.😀 > .😀 > .😀 { + color: red; +} +\`, ""]); +// Exports +export var a = \`😀\`; +export var b = \`😀\`; +export var c = \`😀\`; +export default ___CSS_LOADER_EXPORT___; " `; -exports[`"modules" option should should work with two leading hyphens: result 1`] = ` -Array [ - Array [ - "./modules/localIdentName/localIdentName.css", - "._--test { - background: red; +exports[`"modules" option issue #995: result 1`] = ` +[ + [ + "./modules/issue-995/issue-995.css", + "/* class="😀" */ +.a { + color: red; } -._--_test { - background: blue; +/* class="😀 😓" */ +.a.b { + color: red; } -._--className { - background: red; +/* class="😀" > class="😓" */ +.a .b { + color: red; } -#_--someId { - background: green; +/* class="😀" */ +.😀 { + color: red; } -._--className ._--subClass { - color: green; +/* class="😀 😓" */ +.😀.😓 { + color: red; } -#_--someId ._--subClass { - color: blue; +/* class="😀" > class="😓" */ +.😀 .😓 { + color: red; } -._---a0-34a___f { +/* class="😀" */ +.\\1F600 { color: red; } -._--m_x_\\\\@ { - margin-left: auto !important; - margin-right: auto !important; +/* class="😀 😓" */ +.\\1F600.\\1F613 { + color: red; } -._--B\\\\&W\\\\? { - margin-left: auto !important; - margin-right: auto !important; +/* class="😀" > class="😓" */ +.\\1F600 .\\1F613 { + color: red; } -/* matches elements with class=\\":\`(\\" */ -._--\\\\3A \\\\\`\\\\( { - color: aqua; +/* Local */ + +/* class="😀" */ +.😀 { + color: red; } -/* matches elements with class=\\"1a2b3c\\" */ -._--\\\\31 a2b3c { - color: aliceblue; +/* class="😀 😓" */ +.😀.😀 { + color: red; } -/* matches the element with id=\\"#fake-id\\" */ -#_--\\\\#fake-id { - color: antiquewhite; +/* class="😀" > class="😓" */ +.😀 .😀 { + color: red; } -/* matches the element with id=\\"-a-b-c-\\" */ -#_---a-b-c- { - color: azure; +.\\1F600 .a .\\1F600 { + color: red; } -/* matches the element with id=\\"©\\" */ -#_--© { - color: black; +.😀 .😀 .😀 { + color: red; } -._--♥ { background: lime; } -._--© { background: lime; } -._--“‘’” { background: lime; } -._--☺☃ { background: lime; } -._--⌘⌥ { background: lime; } -._--𝄞♪♩♫♬ { background: lime; } -._--💩 { background: lime; } -._--\\\\? { background: lime; } -._--\\\\@ { background: lime; } -._--\\\\. { background: lime; } -._--\\\\3A \\\\) { background: lime; } -._--\\\\3A \\\\\`\\\\( { background: lime; } -._--\\\\31 23 { background: lime; } -._--\\\\31 a2b3c { background: lime; } -._--\\\\ { background: lime; } -._--\\\\<\\\\>\\\\<\\\\<\\\\<\\\\>\\\\>\\\\<\\\\> { background: lime; } -._--\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\[\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\>\\\\+\\\\<\\\\<\\\\<\\\\<\\\\-\\\\]\\\\>\\\\+\\\\+\\\\.\\\\>\\\\+\\\\.\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\.\\\\+\\\\+\\\\+\\\\.\\\\>\\\\+\\\\+\\\\.\\\\<\\\\<\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\>\\\\.\\\\+\\\\+\\\\+\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\>\\\\+\\\\.\\\\>\\\\. { background: lime; } -._--\\\\# { background: lime; } -._--\\\\#\\\\# { background: lime; } -._--\\\\#\\\\.\\\\#\\\\.\\\\# { background: lime; } -._--\\\\_ { background: lime; } -._--\\\\{\\\\} { background: lime; } -._--\\\\#fake\\\\-id { background: lime; } -._--foo\\\\.bar { background: lime; } -._--\\\\3A hover { background: lime; } -._--\\\\3A hover\\\\3A focus\\\\3A active { background: lime; } -._--\\\\[attr\\\\=value\\\\] { background: lime; } -._--f\\\\/o\\\\/o { background: lime; } -._--f\\\\\\\\o\\\\\\\\o { background: lime; } -._--f\\\\*o\\\\*o { background: lime; } -._--f\\\\!o\\\\!o { background: lime; } -._--f\\\\'o\\\\'o { background: lime; } -._--f\\\\~o\\\\~o { background: lime; } -._--f\\\\+o\\\\+o { background: lime; } +div:not(.😀) { + color: red; +} -._--foo\\\\/bar { - background: hotpink; +.😀 .b { + color: red; } -._--foo\\\\\\\\bar { - background: hotpink; +.b .😀 { + color: red; } -._--foo\\\\/bar\\\\/baz { - background: hotpink; +.\\1F613 .😀 { + color: red; } -._--foo\\\\\\\\bar\\\\\\\\baz { - background: hotpink; +.\\1F613 .😀 { + color: red; +} + +.😀 > .😀 > .😀 { + color: red; } ", "", @@ -853,447 +775,541 @@ Array [ ] `; -exports[`"modules" option should should work with two leading hyphens: warnings 1`] = `Array []`; +exports[`"modules" option issue #995: warnings 1`] = `[]`; -exports[`"modules" option should should work with two leading underscore: errors 1`] = `Array []`; - -exports[`"modules" option should should work with two leading underscore: module 1`] = ` -"// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../../src/runtime/api.js\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -// Module -exports.push([module.id, \\".__test {\\\\n background: red;\\\\n}\\\\n\\\\n.___test {\\\\n background: blue;\\\\n}\\\\n\\\\n.__className {\\\\n background: red;\\\\n}\\\\n\\\\n#__someId {\\\\n background: green;\\\\n}\\\\n\\\\n.__className .__subClass {\\\\n color: green;\\\\n}\\\\n\\\\n#__someId .__subClass {\\\\n color: blue;\\\\n}\\\\n\\\\n.__-a0-34a___f {\\\\n color: red;\\\\n}\\\\n\\\\n.__m_x_\\\\\\\\@ {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n.__B\\\\\\\\&W\\\\\\\\? {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\":\`(\\\\\\" */\\\\n.__\\\\\\\\3A \\\\\\\\\`\\\\\\\\( {\\\\n color: aqua;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\"1a2b3c\\\\\\" */\\\\n.__\\\\\\\\31 a2b3c {\\\\n color: aliceblue;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"#fake-id\\\\\\" */\\\\n#__\\\\\\\\#fake-id {\\\\n color: antiquewhite;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"-a-b-c-\\\\\\" */\\\\n#__-a-b-c- {\\\\n color: azure;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"©\\\\\\" */\\\\n#__© {\\\\n color: black;\\\\n}\\\\n\\\\n.__♥ { background: lime; }\\\\n.__© { background: lime; }\\\\n.__“‘’” { background: lime; }\\\\n.__☺☃ { background: lime; }\\\\n.__⌘⌥ { background: lime; }\\\\n.__𝄞♪♩♫♬ { background: lime; }\\\\n.__💩 { background: lime; }\\\\n.__\\\\\\\\? { background: lime; }\\\\n.__\\\\\\\\@ { background: lime; }\\\\n.__\\\\\\\\. { background: lime; }\\\\n.__\\\\\\\\3A \\\\\\\\) { background: lime; }\\\\n.__\\\\\\\\3A \\\\\\\\\`\\\\\\\\( { background: lime; }\\\\n.__\\\\\\\\31 23 { background: lime; }\\\\n.__\\\\\\\\31 a2b3c { background: lime; }\\\\n.__\\\\\\\\ { background: lime; }\\\\n.__\\\\\\\\<\\\\\\\\>\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\>\\\\\\\\>\\\\\\\\<\\\\\\\\> { background: lime; }\\\\n.__\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\[\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\-\\\\\\\\]\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\<\\\\\\\\<\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\.\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\. { background: lime; }\\\\n.__\\\\\\\\# { background: lime; }\\\\n.__\\\\\\\\#\\\\\\\\# { background: lime; }\\\\n.__\\\\\\\\#\\\\\\\\.\\\\\\\\#\\\\\\\\.\\\\\\\\# { background: lime; }\\\\n.__\\\\\\\\_ { background: lime; }\\\\n.__\\\\\\\\{\\\\\\\\} { background: lime; }\\\\n.__\\\\\\\\#fake\\\\\\\\-id { background: lime; }\\\\n.__foo\\\\\\\\.bar { background: lime; }\\\\n.__\\\\\\\\3A hover { background: lime; }\\\\n.__\\\\\\\\3A hover\\\\\\\\3A focus\\\\\\\\3A active { background: lime; }\\\\n.__\\\\\\\\[attr\\\\\\\\=value\\\\\\\\] { background: lime; }\\\\n.__f\\\\\\\\/o\\\\\\\\/o { background: lime; }\\\\n.__f\\\\\\\\\\\\\\\\o\\\\\\\\\\\\\\\\o { background: lime; }\\\\n.__f\\\\\\\\*o\\\\\\\\*o { background: lime; }\\\\n.__f\\\\\\\\!o\\\\\\\\!o { background: lime; }\\\\n.__f\\\\\\\\'o\\\\\\\\'o { background: lime; }\\\\n.__f\\\\\\\\~o\\\\\\\\~o { background: lime; }\\\\n.__f\\\\\\\\+o\\\\\\\\+o { background: lime; }\\\\n\\\\n.__foo\\\\\\\\/bar {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.__foo\\\\\\\\\\\\\\\\bar {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.__foo\\\\\\\\/bar\\\\\\\\/baz {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.__foo\\\\\\\\\\\\\\\\bar\\\\\\\\\\\\\\\\baz {\\\\n background: hotpink;\\\\n}\\\\n\\", \\"\\"]); -// Exports -exports.locals = { - \\"123\\": \\"__123\\", - \\"test\\": \\"__test\\", - \\"_test\\": \\"___test\\", - \\"className\\": \\"__className\\", - \\"someId\\": \\"__someId\\", - \\"subClass\\": \\"__subClass\\", - \\"-a0-34a___f\\": \\"__-a0-34a___f\\", - \\"m_x_@\\": \\"__m_x_@\\", - \\"B&W?\\": \\"__B&W?\\", - \\":\`(\\": \\"__:\`(\\", - \\"1a2b3c\\": \\"__1a2b3c\\", - \\"#fake-id\\": \\"__#fake-id\\", - \\"-a-b-c-\\": \\"__-a-b-c-\\", - \\"©\\": \\"__©\\", - \\"♥\\": \\"__♥\\", - \\"“‘’”\\": \\"__“‘’”\\", - \\"☺☃\\": \\"__☺☃\\", - \\"⌘⌥\\": \\"__⌘⌥\\", - \\"𝄞♪♩♫♬\\": \\"__𝄞♪♩♫♬\\", - \\"💩\\": \\"__💩\\", - \\"?\\": \\"__?\\", - \\"@\\": \\"__@\\", - \\".\\": \\"__.\\", - \\":)\\": \\"__:)\\", - \\"

\\": \\"__

\\", - \\"<><<<>><>\\": \\"__<><<<>><>\\", - \\"++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.\\": \\"__++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.\\", - \\"#\\": \\"__#\\", - \\"##\\": \\"__##\\", - \\"#.#.#\\": \\"__#.#.#\\", - \\"_\\": \\"___\\", - \\"{}\\": \\"__{}\\", - \\"foo.bar\\": \\"__foo.bar\\", - \\":hover\\": \\"__:hover\\", - \\":hover:focus:active\\": \\"__:hover:focus:active\\", - \\"[attr=value]\\": \\"__[attr=value]\\", - \\"f/o/o\\": \\"__f/o/o\\", - \\"f\\\\\\\\o\\\\\\\\o\\": \\"__f\\\\\\\\o\\\\\\\\o\\", - \\"f*o*o\\": \\"__f*o*o\\", - \\"f!o!o\\": \\"__f!o!o\\", - \\"f'o'o\\": \\"__f'o'o\\", - \\"f~o~o\\": \\"__f~o~o\\", - \\"f+o+o\\": \\"__f+o+o\\", - \\"foo/bar\\": \\"__foo/bar\\", - \\"foo\\\\\\\\bar\\": \\"__foo\\\\\\\\bar\\", - \\"foo/bar/baz\\": \\"__foo/bar/baz\\", - \\"foo\\\\\\\\bar\\\\\\\\baz\\": \\"__foo\\\\\\\\bar\\\\\\\\baz\\" -}; -module.exports = exports; -" +exports[`"modules" option issue #1063 throw error: errors 1`] = ` +[ + "ModuleError: Module Error (from \`replaced original path\`): +options.mode must be either "global", "local" or "pure" (default "local")", + "ModuleError: Module Error (from \`replaced original path\`): +options.mode must be either "global", "local" or "pure" (default "local")", + "ModuleError: Module Error (from \`replaced original path\`): +options.mode must be either "global", "local" or "pure" (default "local")", +] `; -exports[`"modules" option should should work with two leading underscore: result 1`] = ` -Array [ - Array [ - "./modules/localIdentName/localIdentName.css", - ".__test { - background: red; +exports[`"modules" option issue #1063 throw error: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../../src/runtime/api.js"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`.classNameLocalFile { + color: green; } -.___test { - background: blue; +:global(.otherClassLocalFile) { + color: blue; } +\`, ""]); +// Exports +export default ___CSS_LOADER_EXPORT___; +" +`; -.__className { - background: red; +exports[`"modules" option issue #1063 throw error: module 2`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../../src/runtime/api.js"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`.classNameGlobalFile { + color: black; } -#__someId { - background: green; +:local(.otherClassGlobalFile) { + color: coral; } +\`, ""]); +// Exports +export default ___CSS_LOADER_EXPORT___; +" +`; -.__className .__subClass { +exports[`"modules" option issue #1063 throw error: result 1`] = ` +".classNameLocalFile { color: green; } -#__someId .__subClass { +:global(.otherClassLocalFile) { color: blue; } +.classNameGlobalFile { + color: black; +} -.__-a0-34a___f { +:local(.otherClassGlobalFile) { + color: coral; +} +.foo :local(.bar) { color: red; } +" +`; -.__m_x_\\\\@ { - margin-left: auto !important; - margin-right: auto !important; -} +exports[`"modules" option issue #1063 throw error: warnings 1`] = `[]`; -.__B\\\\&W\\\\? { - margin-left: auto !important; - margin-right: auto !important; +exports[`"modules" option issue #1063: errors 1`] = `[]`; + +exports[`"modules" option issue #1063: module with the \`global\` mode 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../../src/runtime/api.js"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`.classNameGlobalFile { + color: black; } -/* matches elements with class=\\":\`(\\" */ -.__\\\\3A \\\\\`\\\\( { - color: aqua; +.OgdGONvTFtVRlDH24Xxl { + color: coral; } +\`, ""]); +// Exports +export var otherClassGlobalFile = \`OgdGONvTFtVRlDH24Xxl\`; +export default ___CSS_LOADER_EXPORT___; +" +`; -/* matches elements with class=\\"1a2b3c\\" */ -.__\\\\31 a2b3c { - color: aliceblue; +exports[`"modules" option issue #1063: module with the \`local\` mode 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../../src/runtime/api.js"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`.XQP_Uob2ss9FjIlDgMOk { + color: green; } -/* matches the element with id=\\"#fake-id\\" */ -#__\\\\#fake-id { - color: antiquewhite; +.otherClassLocalFile { + color: blue; } +\`, ""]); +// Exports +export var classNameLocalFile = \`XQP_Uob2ss9FjIlDgMOk\`; +export default ___CSS_LOADER_EXPORT___; +" +`; -/* matches the element with id=\\"-a-b-c-\\" */ -#__-a-b-c- { - color: azure; +exports[`"modules" option issue #1063: module with the \`pure\` mode 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../../src/runtime/api.js"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`.O3Bw7YaDjucmoBcLTWv6 .bsnf8w1D6AQzl0nVBMef { + color: red; } +\`, ""]); +// Exports +export var foo = \`O3Bw7YaDjucmoBcLTWv6\`; +export var bar = \`bsnf8w1D6AQzl0nVBMef\`; +export default ___CSS_LOADER_EXPORT___; +" +`; -/* matches the element with id=\\"©\\" */ -#__© { - color: black; +exports[`"modules" option issue #1063: result 1`] = ` +".XQP_Uob2ss9FjIlDgMOk { + color: green; } -.__♥ { background: lime; } -.__© { background: lime; } -.__“‘’” { background: lime; } -.__☺☃ { background: lime; } -.__⌘⌥ { background: lime; } -.__𝄞♪♩♫♬ { background: lime; } -.__💩 { background: lime; } -.__\\\\? { background: lime; } -.__\\\\@ { background: lime; } -.__\\\\. { background: lime; } -.__\\\\3A \\\\) { background: lime; } -.__\\\\3A \\\\\`\\\\( { background: lime; } -.__\\\\31 23 { background: lime; } -.__\\\\31 a2b3c { background: lime; } -.__\\\\ { background: lime; } -.__\\\\<\\\\>\\\\<\\\\<\\\\<\\\\>\\\\>\\\\<\\\\> { background: lime; } -.__\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\[\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\>\\\\+\\\\<\\\\<\\\\<\\\\<\\\\-\\\\]\\\\>\\\\+\\\\+\\\\.\\\\>\\\\+\\\\.\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\.\\\\+\\\\+\\\\+\\\\.\\\\>\\\\+\\\\+\\\\.\\\\<\\\\<\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\>\\\\.\\\\+\\\\+\\\\+\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\>\\\\+\\\\.\\\\>\\\\. { background: lime; } -.__\\\\# { background: lime; } -.__\\\\#\\\\# { background: lime; } -.__\\\\#\\\\.\\\\#\\\\.\\\\# { background: lime; } -.__\\\\_ { background: lime; } -.__\\\\{\\\\} { background: lime; } -.__\\\\#fake\\\\-id { background: lime; } -.__foo\\\\.bar { background: lime; } -.__\\\\3A hover { background: lime; } -.__\\\\3A hover\\\\3A focus\\\\3A active { background: lime; } -.__\\\\[attr\\\\=value\\\\] { background: lime; } -.__f\\\\/o\\\\/o { background: lime; } -.__f\\\\\\\\o\\\\\\\\o { background: lime; } -.__f\\\\*o\\\\*o { background: lime; } -.__f\\\\!o\\\\!o { background: lime; } -.__f\\\\'o\\\\'o { background: lime; } -.__f\\\\~o\\\\~o { background: lime; } -.__f\\\\+o\\\\+o { background: lime; } - -.__foo\\\\/bar { - background: hotpink; +.otherClassLocalFile { + color: blue; } - -.__foo\\\\\\\\bar { - background: hotpink; +.classNameGlobalFile { + color: black; } -.__foo\\\\/bar\\\\/baz { - background: hotpink; +.OgdGONvTFtVRlDH24Xxl { + color: coral; } - -.__foo\\\\\\\\bar\\\\\\\\baz { - background: hotpink; +.O3Bw7YaDjucmoBcLTWv6 .bsnf8w1D6AQzl0nVBMef { + color: red; } -", - "", - ], -] +" `; -exports[`"modules" option should should work with two leading underscore: warnings 1`] = `Array []`; +exports[`"modules" option issue #1063: warnings 1`] = `[]`; -exports[`"modules" option should support resolving in composes: errors 1`] = `Array []`; +exports[`"modules" option issue #1191 - fallback to default getLocalIdent: errors 1`] = `[]`; -exports[`"modules" option should support resolving in composes: module 1`] = ` +exports[`"modules" option issue #1191 - fallback to default getLocalIdent: module 1`] = ` "// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../../src/runtime/api.js\\"); -var ___CSS_LOADER_ICSS_IMPORT_0___ = require(\\"-!../../../../src/index.js??[ident]!./values.css\\"); -var ___CSS_LOADER_ICSS_IMPORT_1___ = require(\\"-!../../../../src/index.js??[ident]!./something.css\\"); -var ___CSS_LOADER_ICSS_IMPORT_2___ = require(\\"-!../../../../src/index.js??[ident]!./imported-simple.css\\"); -var ___CSS_LOADER_ICSS_IMPORT_3___ = require(\\"-!../../../../src/index.js??[ident]!./relative.css\\"); -var ___CSS_LOADER_ICSS_IMPORT_4___ = require(\\"-!../../../../src/index.js??[ident]!./top-relative.css\\"); -var ___CSS_LOADER_ICSS_IMPORT_5___ = require(\\"-!../../../../src/index.js??[ident]!../issue-861/node_modules/package/style.css\\"); -var ___CSS_LOADER_ICSS_IMPORT_6___ = require(\\"-!../../../../src/index.js??[ident]!aliasesComposes/alias.css\\"); -var ___CSS_LOADER_AT_RULE_IMPORT_0___ = require(\\"-!../../../../src/index.js??[ident]!./test-other.css\\"); -var ___CSS_LOADER_GET_URL_IMPORT___ = require(\\"../../../../src/runtime/getUrl.js\\"); -var ___CSS_LOADER_URL_IMPORT_0___ = require(\\"../../url/img.png\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -exports.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); -exports.i(___CSS_LOADER_ICSS_IMPORT_1___, \\"\\", true); -exports.i(___CSS_LOADER_ICSS_IMPORT_2___, \\"\\", true); -exports.i(___CSS_LOADER_ICSS_IMPORT_3___, \\"\\", true); -exports.i(___CSS_LOADER_ICSS_IMPORT_4___, \\"\\", true); -exports.i(___CSS_LOADER_ICSS_IMPORT_5___, \\"\\", true); -exports.i(___CSS_LOADER_ICSS_IMPORT_6___, \\"\\", true); -exports.i(___CSS_LOADER_AT_RULE_IMPORT_0___, \\"(min-width: 100px)\\"); -var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../../src/runtime/api.js"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); // Module -exports.push([module.id, \\".fSErEFKw3e7Iv0EmVr4Ii {\\\\n color: \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"v-def\\"] + \\";\\\\n}\\\\n\\\\n._1NrOxbibeQ5qcRoPL7kDtu {\\\\n color: blue;\\\\n}\\\\n\\\\n.djNAVB7y500wM1pkOwuGn {\\\\n display: block;\\\\n}\\\\n\\\\n._291GtMV2HIwa4Iis74myBh {\\\\n width: \\" + ___CSS_LOADER_ICSS_IMPORT_1___.locals[\\"v-something\\"] + \\";\\\\n}\\\\n\\\\n._2KPSOif5_L54Ue252-4SMZ {\\\\n color: \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"v-other\\"] + \\";\\\\n}\\\\n\\\\n._1ZuFusdyp6cE2KJ9RECux1 {\\\\n prop: \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"v-def\\"] + \\";\\\\n duplicate: \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"v-other\\"] + \\";\\\\n}\\\\n\\\\n.dMcylihD3G3oGCNWDsAa3 {\\\\n color: red;\\\\n}\\\\n\\\\n._2t9qA9qE4OH2A3DVwUtOFP {\\\\n color: yellow;\\\\n}\\\\n\\\\n._1XQGy4UOqsVVHSULdn-uc6 {\\\\n color: gray;\\\\n}\\\\n\\\\n._3oZRfl5v6W4ji2oerfYhpL {\\\\n color: gray;\\\\n}\\\\n\\\\n._1KLfOsDDmt6EGUIDKukOvV {\\\\n color: gainsboro;\\\\n}\\\\n\\\\n.PxB1r-csu3e3lUOZiD69t {\\\\n color: #BF4040;\\\\n}\\\\n\\\\n._2nUmv-YIlxvzza9j2rJQjJ {\\\\n color: black;\\\\n}\\\\n\\\\n@media (min-width: 960px) {\\\\n ._21OP3aGLw7Si4lLuiK3vhf {\\\\n padding: 0 20px;\\\\n }\\\\n}\\\\n\\\\n.\\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"s-white\\"] + \\" {\\\\n color: white;\\\\n}\\\\n\\\\n@media \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"m-small\\"] + \\" {\\\\n ._21OP3aGLw7Si4lLuiK3vhf {\\\\n padding: 20px 20px;\\\\n }\\\\n}\\\\n@value v-comment: /* comment */;\\\\n\\\\n.zbowt65f4EBNzWh_uiPv0 {\\\\n v-ident: validIdent;\\\\n v-pre-defined-ident: left;\\\\n v-string: 'content';\\\\n v-string-1: '';\\\\n v-url: url(https://www.exammple.com/images/my-background.png);\\\\n v-url-1: url('https://www.exammple.com/images/my-background.png');\\\\n v-url-2: url(\\\\\\"https://www.exammple.com/images/my-background.png\\\\\\");\\\\n v-integer: 100;\\\\n v-integer-1: -100;\\\\n v-integer-2: +100;\\\\n v-number: .60;\\\\n v-number-1: -456.8;\\\\n v-number-2: -3.4e-2;\\\\n v-dimension: 12px;\\\\n v-percentage: 100%;\\\\n v-hex: #fff;\\\\n v-comment: v-comment 10px v-comment;\\\\n v-function: rgb(0,0,0);\\\\n v-unicode-range: U+0025-00FF;\\\\n mutliple: #fff .60 100%;\\\\n}\\\\n\\\\n\\\\na {\\\\n content: 'content';\\\\n}\\\\n\\\\n@supports (content: 'content') {\\\\n a {\\\\n content: 'content';\\\\n }\\\\n}\\\\n\\\\n[class~='content'] {\\\\n color:green;\\\\n}\\\\n\\\\n._3yApLlXpoidfnd3JfO_WEf {\\\\n background: url(\\" + ___CSS_LOADER_URL_REPLACEMENT_0___ + \\");\\\\n}\\\\n\\", \\"\\"]); -// Exports -exports.locals = { - \\"v-def\\": \\"\\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"v-def\\"] + \\"\\", - \\"v-other\\": \\"\\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"v-other\\"] + \\"\\", - \\"s-white\\": \\"\\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"s-white\\"] + \\"\\", - \\"m-small\\": \\"\\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"m-small\\"] + \\"\\", - \\"v-something\\": \\"\\" + ___CSS_LOADER_ICSS_IMPORT_1___.locals[\\"v-something\\"] + \\"\\", - \\"v-foo\\": \\"blue\\", - \\"v-bar\\": \\"block\\", - \\"v-primary\\": \\"#BF4040\\", - \\"s-black\\": \\"black-selector\\", - \\"m-large\\": \\"(min-width: 960px)\\", - \\"v-ident\\": \\"validIdent\\", - \\"v-pre-defined-ident\\": \\"left\\", - \\"v-string\\": \\"'content'\\", - \\"v-string-1\\": \\"''\\", - \\"v-url\\": \\"url(https://www.exammple.com/images/my-background.png)\\", - \\"v-url-1\\": \\"url('https://www.exammple.com/images/my-background.png')\\", - \\"v-url-2\\": \\"url(\\\\\\"https://www.exammple.com/images/my-background.png\\\\\\")\\", - \\"v-integer\\": \\"100\\", - \\"v-integer-1\\": \\"-100\\", - \\"v-integer-2\\": \\"+100\\", - \\"v-number\\": \\".60\\", - \\"v-number-1\\": \\"-456.8\\", - \\"v-number-2\\": \\"-3.4e-2\\", - \\"v-dimension\\": \\"12px\\", - \\"v-percentage\\": \\"100%\\", - \\"v-hex\\": \\"#fff\\", - \\"v-function\\": \\"rgb(0,0,0)\\", - \\"v-unicode-range\\": \\"U+0025-00FF\\", - \\"ghi\\": \\"fSErEFKw3e7Iv0EmVr4Ii\\", - \\"class\\": \\"_1NrOxbibeQ5qcRoPL7kDtu\\", - \\"other\\": \\"djNAVB7y500wM1pkOwuGn\\", - \\"other-other\\": \\"_291GtMV2HIwa4Iis74myBh\\", - \\"green\\": \\"_2KPSOif5_L54Ue252-4SMZ\\", - \\"foo\\": \\"_1ZuFusdyp6cE2KJ9RECux1\\", - \\"simple\\": \\"dMcylihD3G3oGCNWDsAa3 \\" + ___CSS_LOADER_ICSS_IMPORT_2___.locals[\\"imported-simple\\"] + \\"\\", - \\"relative\\": \\"_2t9qA9qE4OH2A3DVwUtOFP \\" + ___CSS_LOADER_ICSS_IMPORT_3___.locals[\\"imported-relative\\"] + \\"\\", - \\"top-relative\\": \\"_1XQGy4UOqsVVHSULdn-uc6 \\" + ___CSS_LOADER_ICSS_IMPORT_4___.locals[\\"imported-relative\\"] + \\"\\", - \\"module\\": \\"_3oZRfl5v6W4ji2oerfYhpL \\" + ___CSS_LOADER_ICSS_IMPORT_5___.locals[\\"imported-module\\"] + \\"\\", - \\"alias\\": \\"_1KLfOsDDmt6EGUIDKukOvV \\" + ___CSS_LOADER_ICSS_IMPORT_6___.locals[\\"imported-alias\\"] + \\"\\", - \\"primary-selector\\": \\"PxB1r-csu3e3lUOZiD69t\\", - \\"black-selector\\": \\"_2nUmv-YIlxvzza9j2rJQjJ\\", - \\"header\\": \\"_21OP3aGLw7Si4lLuiK3vhf\\", - \\"foobarbaz\\": \\"zbowt65f4EBNzWh_uiPv0\\", - \\"url\\": \\"_3yApLlXpoidfnd3JfO_WEf\\" -}; -module.exports = exports; +___CSS_LOADER_EXPORT___.push([module.id, \`.some-class { + color: red; +} +\`, ""]); +// Exports +var _1 = \`some-class\`; +export { _1 as "some-class" }; +export default ___CSS_LOADER_EXPORT___; " `; -exports[`"modules" option should support resolving in composes: result 1`] = ` -Array [ - Array [ - "../../src/index.js?[ident]!./modules/composes/values.css", - " +exports[`"modules" option issue #1191 - fallback to default getLocalIdent: result 1`] = ` +{ + "css1": [ + [ + "./modules/issue-1191/issue-1191.css", + ".some-class { + color: red; +} ", - "", + "", + ], ], - Array [ - "../../src/index.js?[ident]!./modules/composes/something.css", - " + "css2": [ + [ + "./modules/issue-1191/issue-1191-custom.css", + ".custom-some-class { + color: red; +} ", - "", + "", + ], ], - Array [ - "../../src/index.js?[ident]!./modules/composes/imported-simple.css", - "._15HqoDBChWnuDGxJ6jOtUV { +} +`; + +exports[`"modules" option issue #1191 - fallback to default getLocalIdent: warnings 1`] = `[]`; + +exports[`"modules" option should avoid unnecessary "require": errors 1`] = `[]`; + +exports[`"modules" option should avoid unnecessary "require": module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../../src/runtime/api.js"; +import ___CSS_LOADER_ICSS_IMPORT_0___, * as ___CSS_LOADER_ICSS_IMPORT_0____NAMED___ from "-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./imported-simple.css"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, "", true); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`.Ps8VWEq9D6yYDbYD8Z74 { + color: red; +} + +.RoQqX1UKTeWtDXMISYk9 { + color: red; +} +\`, ""]); +// Exports +var _1 = \`Ps8VWEq9D6yYDbYD8Z74 \${___CSS_LOADER_ICSS_IMPORT_0____NAMED___["imported-simple"]}\`; +export { _1 as "simple-foo" }; +var _2 = \`RoQqX1UKTeWtDXMISYk9 \${___CSS_LOADER_ICSS_IMPORT_0____NAMED___["imported-simple"]}\`; +export { _2 as "simple-bar" }; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should avoid unnecessary "require": result 1`] = ` +[ + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./modules/composes/imported-simple.css", + ".pCAAqHK9Lcplw9QM7Rj0 { display: block; } ", "", ], - Array [ - "../../src/index.js?[ident]!./modules/composes/relative.css", - "._2XpGrQ60AX7p8fQT9hACyH { - display: inline; + [ + "./modules/composes/composes-duplicate.css", + ".Ps8VWEq9D6yYDbYD8Z74 { + color: red; +} + +.RoQqX1UKTeWtDXMISYk9 { + color: red; } ", "", ], - Array [ - "../../src/index.js?[ident]!./modules/composes/top-relative.css", - "._1Ua1iZV27bUg7cs1NExheb { - display: flex; +] +`; + +exports[`"modules" option should avoid unnecessary "require": warnings 1`] = `[]`; + +exports[`"modules" option should dedupe same modules in one module (issue #1037): errors 1`] = `[]`; + +exports[`"modules" option should dedupe same modules in one module (issue #1037): module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../../src/runtime/api.js"; +import ___CSS_LOADER_ICSS_IMPORT_0___, * as ___CSS_LOADER_ICSS_IMPORT_0____NAMED___ from "-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./buttons/primary-button.css"; +import ___CSS_LOADER_ICSS_IMPORT_1___, * as ___CSS_LOADER_ICSS_IMPORT_1____NAMED___ from "-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./buttons/secondary-button.css"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, "", true); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_1___, "", true); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`.cxBUjVsu_UGx0Xg0ywCw +{ +} + +.mKgsL_hCxK21zxRDQMbn +{ +} +\`, ""]); +// Exports +export var nextButton = \`cxBUjVsu_UGx0Xg0ywCw \${___CSS_LOADER_ICSS_IMPORT_0____NAMED___["primaryButton"]}\`; +export var backButton = \`mKgsL_hCxK21zxRDQMbn \${___CSS_LOADER_ICSS_IMPORT_1____NAMED___["secondaryButton"]}\`; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should dedupe same modules in one module (issue #1037): result 1`] = ` +[ + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./modules/dedupe/buttons/button.css", + ".ETyYv0AQ15QGLXaOjUIU +{ + border:none; + padding:7px 15px; + cursor:pointer; } ", "", ], - Array [ - "../../src/index.js?[ident]!./modules/issue-861/node_modules/package/style.css", - ".HM73Ud1_EQz1eaYocwagZ { - display: inline-block; + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./modules/dedupe/buttons/primary-button.css", + ".T3rsQRYGiFPb789T3nPW +{ + background-color:blue; + color:white; } ", "", ], - Array [ - "../../src/index.js?[ident]!./modules/composes/alias.css", - "._1qxfPu6Vbru-xS0LA5GWJT { - display: table; + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./modules/dedupe/buttons/secondary-button.css", + "._BsvPO61W5jn4UqX0Jck +{ + background-color:#555; + color:white; } ", "", ], - Array [ - "../../src/index.js?[ident]!./modules/composes/test-other.css", - "._2KbNYW68v_VxbQ8XdpUuGh { - d: d; + [ + "./modules/dedupe/source.css", + ".cxBUjVsu_UGx0Xg0ywCw +{ +} + +.mKgsL_hCxK21zxRDQMbn +{ } ", - "(min-width: 100px)", + "", ], - Array [ - "./modules/composes/composes.css", - ".fSErEFKw3e7Iv0EmVr4Ii { - color: red; -} +] +`; -._1NrOxbibeQ5qcRoPL7kDtu { - color: blue; -} +exports[`"modules" option should dedupe same modules in one module (issue #1037): warnings 1`] = `[]`; + +exports[`"modules" option should emit warning when localIdentName is emoji: errors 1`] = `[]`; + +exports[`"modules" option should emit warning when localIdentName is emoji: warnings 1`] = `[]`; + +exports[`"modules" option should invoke the custom getJSON function if provided: args 1`] = ` +[ + [ + { + "exports": [ + { + "name": "a", + "value": "RT7ktT7mB7tfBR25sJDZ ___CSS_LOADER_ICSS_IMPORT_0_REPLACEMENT_0___", + }, + { + "name": "b", + "value": "IZmhTnK9CIeu6ww6Zjbv ___CSS_LOADER_ICSS_IMPORT_0_REPLACEMENT_1___", + }, + ], + "imports": [ + { + "importName": "___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___", + "url": ""../../../../src/runtime/noSourceMaps.js"", + }, + { + "importName": "___CSS_LOADER_API_IMPORT___", + "type": "api_import", + "url": ""../../../../src/runtime/api.js"", + }, + { + "icss": true, + "importName": "___CSS_LOADER_ICSS_IMPORT_0___", + "index": 0, + "type": "icss_import", + "url": ""-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./composeSource.css"", + }, + ], + "replacements": [ + { + "importName": "___CSS_LOADER_ICSS_IMPORT_0___", + "localName": "composedA", + "replacementName": "___CSS_LOADER_ICSS_IMPORT_0_REPLACEMENT_0___", + }, + { + "importName": "___CSS_LOADER_ICSS_IMPORT_0___", + "localName": "composedB", + "replacementName": "___CSS_LOADER_ICSS_IMPORT_0_REPLACEMENT_1___", + }, + ], + "resourcePath": "/test/fixtures/modules/getJSON/source.css", + }, + ], + [ + { + "exports": [ + { + "name": "composedA", + "value": "mm3SuQiO3doywWWliORs", + }, + { + "name": "composedB", + "value": "hFeFcgvjCoj_9RRA4E59 mm3SuQiO3doywWWliORs", + }, + ], + "imports": [ + { + "importName": "___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___", + "url": ""../../../../src/runtime/noSourceMaps.js"", + }, + { + "importName": "___CSS_LOADER_API_IMPORT___", + "type": "api_import", + "url": ""../../../../src/runtime/api.js"", + }, + ], + "replacements": [], + "resourcePath": "/test/fixtures/modules/getJSON/composeSource.css", + }, + ], +] +`; -.djNAVB7y500wM1pkOwuGn { - display: block; -} +exports[`"modules" option should invoke the custom getJSON function if provided: errors 1`] = `[]`; -._291GtMV2HIwa4Iis74myBh { - width: 2112moon; -} +exports[`"modules" option should invoke the custom getJSON function if provided: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../../src/runtime/api.js"; +import ___CSS_LOADER_ICSS_IMPORT_0___, * as ___CSS_LOADER_ICSS_IMPORT_0____NAMED___ from "-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./composeSource.css"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, "", true); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`.RT7ktT7mB7tfBR25sJDZ { -._2KPSOif5_L54Ue252-4SMZ { - color: green; + background-color: aliceblue; } -._1ZuFusdyp6cE2KJ9RECux1 { - prop: red; - duplicate: green; -} +.IZmhTnK9CIeu6ww6Zjbv { -.dMcylihD3G3oGCNWDsAa3 { - color: red; + background-color: blanchedalmond; } +\`, ""]); +// Exports +export var a = \`RT7ktT7mB7tfBR25sJDZ \${___CSS_LOADER_ICSS_IMPORT_0____NAMED___["composedA"]}\`; +export var b = \`IZmhTnK9CIeu6ww6Zjbv \${___CSS_LOADER_ICSS_IMPORT_0____NAMED___["composedB"]}\`; +export default ___CSS_LOADER_EXPORT___; +" +`; -._2t9qA9qE4OH2A3DVwUtOFP { - color: yellow; +exports[`"modules" option should invoke the custom getJSON function if provided: result 1`] = ` +[ + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./modules/getJSON/composeSource.css", + ".mm3SuQiO3doywWWliORs { + height: 200px; } -._1XQGy4UOqsVVHSULdn-uc6 { - color: gray; +.hFeFcgvjCoj_9RRA4E59 { } +", + "", + ], + [ + "./modules/getJSON/source.css", + ".RT7ktT7mB7tfBR25sJDZ { -._3oZRfl5v6W4ji2oerfYhpL { - color: gray; + background-color: aliceblue; } -._1KLfOsDDmt6EGUIDKukOvV { - color: gainsboro; -} +.IZmhTnK9CIeu6ww6Zjbv { -.PxB1r-csu3e3lUOZiD69t { - color: #BF4040; + background-color: blanchedalmond; } +", + "", + ], +] +`; -._2nUmv-YIlxvzza9j2rJQjJ { - color: black; -} +exports[`"modules" option should invoke the custom getJSON function if provided: warnings 1`] = `[]`; -@media (min-width: 960px) { - ._21OP3aGLw7Si4lLuiK3vhf { - padding: 0 20px; - } -} +exports[`"modules" option should keep order: errors 1`] = `[]`; -.white { - color: white; +exports[`"modules" option should keep order: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../../src/runtime/api.js"; +import ___CSS_LOADER_ICSS_IMPORT_0___, * as ___CSS_LOADER_ICSS_IMPORT_0____NAMED___ from "-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./order-1.css"; +import ___CSS_LOADER_ICSS_IMPORT_1___, * as ___CSS_LOADER_ICSS_IMPORT_1____NAMED___ from "-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./order-2.css"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, "", true); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_1___, "", true); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`.Q9ZbfN73CE9nTzgsOKaJ { + display: block; } -@media (min-width: 320px) { - ._21OP3aGLw7Si4lLuiK3vhf { - padding: 20px 20px; - } +.BRalxsptB32EbO5CVyzm { + display: inline; } -@value v-comment: /* comment */; +\`, ""]); +// Exports +export var simple = \`Q9ZbfN73CE9nTzgsOKaJ \${___CSS_LOADER_ICSS_IMPORT_0____NAMED___["order-1"]} \${___CSS_LOADER_ICSS_IMPORT_1____NAMED___["order-2"]} \${___CSS_LOADER_ICSS_IMPORT_0____NAMED___["order-1-1"]} \${___CSS_LOADER_ICSS_IMPORT_1____NAMED___["order-2-2"]}\`; +var _1 = \`BRalxsptB32EbO5CVyzm \${___CSS_LOADER_ICSS_IMPORT_0____NAMED___["order-1"]}\`; +export { _1 as "simple-other" }; +export default ___CSS_LOADER_EXPORT___; +" +`; -.zbowt65f4EBNzWh_uiPv0 { - v-ident: validIdent; - v-pre-defined-ident: left; - v-string: 'content'; - v-string-1: ''; - v-url: url(https://www.exammple.com/images/my-background.png); - v-url-1: url('https://www.exammple.com/images/my-background.png'); - v-url-2: url(\\"https://www.exammple.com/images/my-background.png\\"); - v-integer: 100; - v-integer-1: -100; - v-integer-2: +100; - v-number: .60; - v-number-1: -456.8; - v-number-2: -3.4e-2; - v-dimension: 12px; - v-percentage: 100%; - v-hex: #fff; - v-comment: v-comment 10px v-comment; - v-function: rgb(0,0,0); - v-unicode-range: U+0025-00FF; - mutliple: #fff .60 100%; +exports[`"modules" option should keep order: result 1`] = ` +[ + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./modules/order/order-1.css", + ".f6n4s_1IY8eI9OLwFkLZ { + color: red; } - -a { - content: 'content'; +.xIASfsMafltm9AZOHmbo { + color: aliceblue; } - -@supports (content: 'content') { - a { - content: 'content'; - } +", + "", + ], + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./modules/order/order-2.css", + ".EPgSMUSXLA4RUVdEmb8f { + color: blue; } -[class~='content'] { - color:green; +.WSVzOOOUl82t8IEBx9dS { + color: azure; +} +", + "", + ], + [ + "./modules/order/index.css", + ".Q9ZbfN73CE9nTzgsOKaJ { + display: block; } -._3yApLlXpoidfnd3JfO_WEf { - background: url(/webpack/public/path/img.png); +.BRalxsptB32EbO5CVyzm { + display: inline; } ", "", @@ -1301,559 +1317,426 @@ a { ] `; -exports[`"modules" option should support resolving in composes: warnings 1`] = `Array []`; +exports[`"modules" option should keep order: warnings 1`] = `[]`; -exports[`"modules" option should work and correctly replace escaped symbols: errors 1`] = `Array []`; +exports[`"modules" option should resolve absolute path in composes: errors 1`] = `[]`; -exports[`"modules" option should work and correctly replace escaped symbols: module 1`] = ` +exports[`"modules" option should resolve absolute path in composes: module 1`] = ` "// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../../src/runtime/api.js\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -// Module -exports.push([module.id, \\".test--_cpw {\\\\n background: red;\\\\n}\\\\n\\\\n._test--1dIr {\\\\n background: blue;\\\\n}\\\\n\\\\n.className--2YAI {\\\\n background: red;\\\\n}\\\\n\\\\n#someId--2mXV {\\\\n background: green;\\\\n}\\\\n\\\\n.className--2YAI .subClass--hcOs {\\\\n color: green;\\\\n}\\\\n\\\\n#someId--2mXV .subClass--hcOs {\\\\n color: blue;\\\\n}\\\\n\\\\n.-a0-34a___f--AnzW {\\\\n color: red;\\\\n}\\\\n\\\\n.m_x_\\\\\\\\@--Nqdt {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n.B\\\\\\\\&W\\\\\\\\?--IYdL {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\":\`(\\\\\\" */\\\\n.\\\\\\\\3A \\\\\\\\\`\\\\\\\\(--riRD {\\\\n color: aqua;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\"1a2b3c\\\\\\" */\\\\n.\\\\\\\\31 a2b3c--zIJ8 {\\\\n color: aliceblue;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"#fake-id\\\\\\" */\\\\n#\\\\\\\\#fake-id--3i8C {\\\\n color: antiquewhite;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"-a-b-c-\\\\\\" */\\\\n#-a-b-c---1LFn {\\\\n color: azure;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"©\\\\\\" */\\\\n#©--1rph {\\\\n color: black;\\\\n}\\\\n\\\\n.♥--3hI- { background: lime; }\\\\n.©--1rph { background: lime; }\\\\n.“‘’”--2-Fc { background: lime; }\\\\n.☺☃--1ndr { background: lime; }\\\\n.⌘⌥--gxaZ { background: lime; }\\\\n.𝄞♪♩♫♬--mLhO { background: lime; }\\\\n.💩--2t9K { background: lime; }\\\\n.\\\\\\\\?--2I0o { background: lime; }\\\\n.\\\\\\\\@--sCVd { background: lime; }\\\\n.\\\\\\\\.--1HRZ { background: lime; }\\\\n.\\\\\\\\3A \\\\\\\\)--mhBL { background: lime; }\\\\n.\\\\\\\\3A \\\\\\\\\`\\\\\\\\(--riRD { background: lime; }\\\\n.\\\\\\\\31 23--12FW { background: lime; }\\\\n.\\\\\\\\31 a2b3c--zIJ8 { background: lime; }\\\\n.\\\\\\\\--IjVt { background: lime; }\\\\n.\\\\\\\\<\\\\\\\\>\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\>\\\\\\\\>\\\\\\\\<\\\\\\\\>--oXLW { background: lime; }\\\\n.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\[\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\-\\\\\\\\]\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\<\\\\\\\\<\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\.\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\.--2HMg { background: lime; }\\\\n.\\\\\\\\#--2hLv { background: lime; }\\\\n.\\\\\\\\#\\\\\\\\#--2LwZ { background: lime; }\\\\n.\\\\\\\\#\\\\\\\\.\\\\\\\\#\\\\\\\\.\\\\\\\\#--i0DF { background: lime; }\\\\n.\\\\\\\\_--1er0 { background: lime; }\\\\n.\\\\\\\\{\\\\\\\\}--2qPT { background: lime; }\\\\n.\\\\\\\\#fake\\\\\\\\-id--3i8C { background: lime; }\\\\n.foo\\\\\\\\.bar--1Tdk { background: lime; }\\\\n.\\\\\\\\3A hover--1vI4 { background: lime; }\\\\n.\\\\\\\\3A hover\\\\\\\\3A focus\\\\\\\\3A active--2ElO { background: lime; }\\\\n.\\\\\\\\[attr\\\\\\\\=value\\\\\\\\]--1AJ- { background: lime; }\\\\n.f\\\\\\\\/o\\\\\\\\/o--3Zs0 { background: lime; }\\\\n.f\\\\\\\\\\\\\\\\o\\\\\\\\\\\\\\\\o--3D2d { background: lime; }\\\\n.f\\\\\\\\*o\\\\\\\\*o--2HQY { background: lime; }\\\\n.f\\\\\\\\!o\\\\\\\\!o--1HIX { background: lime; }\\\\n.f\\\\\\\\'o\\\\\\\\'o--3hCQ { background: lime; }\\\\n.f\\\\\\\\~o\\\\\\\\~o--fXtA { background: lime; }\\\\n.f\\\\\\\\+o\\\\\\\\+o--7duh { background: lime; }\\\\n\\\\n.foo\\\\\\\\/bar--1iGa {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.foo\\\\\\\\\\\\\\\\bar--7qaP {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.foo\\\\\\\\/bar\\\\\\\\/baz--24g3 {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.foo\\\\\\\\\\\\\\\\bar\\\\\\\\\\\\\\\\baz--2NRI {\\\\n background: hotpink;\\\\n}\\\\n\\", \\"\\"]); -// Exports -exports.locals = { - \\"123\\": \\"123--12FW\\", - \\"test\\": \\"test--_cpw\\", - \\"_test\\": \\"_test--1dIr\\", - \\"className\\": \\"className--2YAI\\", - \\"someId\\": \\"someId--2mXV\\", - \\"subClass\\": \\"subClass--hcOs\\", - \\"-a0-34a___f\\": \\"-a0-34a___f--AnzW\\", - \\"m_x_@\\": \\"m_x_@--Nqdt\\", - \\"B&W?\\": \\"B&W?--IYdL\\", - \\":\`(\\": \\":\`(--riRD\\", - \\"1a2b3c\\": \\"1a2b3c--zIJ8\\", - \\"#fake-id\\": \\"#fake-id--3i8C\\", - \\"-a-b-c-\\": \\"-a-b-c---1LFn\\", - \\"©\\": \\"©--1rph\\", - \\"♥\\": \\"♥--3hI-\\", - \\"“‘’”\\": \\"“‘’”--2-Fc\\", - \\"☺☃\\": \\"☺☃--1ndr\\", - \\"⌘⌥\\": \\"⌘⌥--gxaZ\\", - \\"𝄞♪♩♫♬\\": \\"𝄞♪♩♫♬--mLhO\\", - \\"💩\\": \\"💩--2t9K\\", - \\"?\\": \\"?--2I0o\\", - \\"@\\": \\"@--sCVd\\", - \\".\\": \\".--1HRZ\\", - \\":)\\": \\":)--mhBL\\", - \\"

\\": \\"

--IjVt\\", - \\"<><<<>><>\\": \\"<><<<>><>--oXLW\\", - \\"++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.\\": \\"++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.--2HMg\\", - \\"#\\": \\"#--2hLv\\", - \\"##\\": \\"##--2LwZ\\", - \\"#.#.#\\": \\"#.#.#--i0DF\\", - \\"_\\": \\"_--1er0\\", - \\"{}\\": \\"{}--2qPT\\", - \\"foo.bar\\": \\"foo.bar--1Tdk\\", - \\":hover\\": \\":hover--1vI4\\", - \\":hover:focus:active\\": \\":hover:focus:active--2ElO\\", - \\"[attr=value]\\": \\"[attr=value]--1AJ-\\", - \\"f/o/o\\": \\"f/o/o--3Zs0\\", - \\"f\\\\\\\\o\\\\\\\\o\\": \\"f\\\\\\\\o\\\\\\\\o--3D2d\\", - \\"f*o*o\\": \\"f*o*o--2HQY\\", - \\"f!o!o\\": \\"f!o!o--1HIX\\", - \\"f'o'o\\": \\"f'o'o--3hCQ\\", - \\"f~o~o\\": \\"f~o~o--fXtA\\", - \\"f+o+o\\": \\"f+o+o--7duh\\", - \\"foo/bar\\": \\"foo/bar--1iGa\\", - \\"foo\\\\\\\\bar\\": \\"foo\\\\\\\\bar--7qaP\\", - \\"foo/bar/baz\\": \\"foo/bar/baz--24g3\\", - \\"foo\\\\\\\\bar\\\\\\\\baz\\": \\"foo\\\\\\\\bar\\\\\\\\baz--2NRI\\" -}; -module.exports = exports; +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../../src/runtime/api.js"; +import ___CSS_LOADER_ICSS_IMPORT_0___, * as ___CSS_LOADER_ICSS_IMPORT_0____NAMED___ from "-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./imported-simple.css"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, "", true); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`.kyvwkn92Lnd2EucgzJse { color: red; }\`, ""]); +// Exports +export var simple = \`kyvwkn92Lnd2EucgzJse \${___CSS_LOADER_ICSS_IMPORT_0____NAMED___["imported-simple"]}\`; +export default ___CSS_LOADER_EXPORT___; " `; -exports[`"modules" option should work and correctly replace escaped symbols: result 1`] = ` -Array [ - Array [ - "./modules/localIdentName/localIdentName.css", - ".test--_cpw { - background: red; +exports[`"modules" option should resolve absolute path in composes: result 1`] = ` +[ + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./modules/composes/imported-simple.css", + ".pCAAqHK9Lcplw9QM7Rj0 { + display: block; } +", + "", + ], + [ + "./modules/composes/composes-absolute.css", + ".kyvwkn92Lnd2EucgzJse { color: red; }", + "", + ], +] +`; -._test--1dIr { - background: blue; -} +exports[`"modules" option should resolve absolute path in composes: warnings 1`] = `[]`; -.className--2YAI { - background: red; -} +exports[`"modules" option should resolve package from node_modules with and without tilde: errors 1`] = `[]`; -#someId--2mXV { - background: green; +exports[`"modules" option should resolve package from node_modules with and without tilde: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../../src/runtime/api.js"; +import ___CSS_LOADER_ICSS_IMPORT_0___, * as ___CSS_LOADER_ICSS_IMPORT_0____NAMED___ from "-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!../node_modules/test/index.css"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, "", true); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`.dplP4w4XMPrlPI5jKzht { + color: \${ ___CSS_LOADER_ICSS_IMPORT_0____NAMED___["foo"] }; + background: \${ ___CSS_LOADER_ICSS_IMPORT_0____NAMED___["bar"] }; } -.className--2YAI .subClass--hcOs { - color: green; -} - -#someId--2mXV .subClass--hcOs { - color: blue; -} +\`, ""]); +// Exports +export var foo = \`\${___CSS_LOADER_ICSS_IMPORT_0____NAMED___["foo"]}\`; +export var bar = \`\${___CSS_LOADER_ICSS_IMPORT_0____NAMED___["bar"]}\`; +export var className = \`dplP4w4XMPrlPI5jKzht\`; +export default ___CSS_LOADER_EXPORT___; +" +`; -.-a0-34a___f--AnzW { +exports[`"modules" option should resolve package from node_modules with and without tilde: result 1`] = ` +[ + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./modules/node_modules/test/index.css", + " +", + "", + ], + [ + "./modules/issue-914/source.css", + ".dplP4w4XMPrlPI5jKzht { color: red; + background: green; } -.m_x_\\\\@--Nqdt { - margin-left: auto !important; - margin-right: auto !important; -} - -.B\\\\&W\\\\?--IYdL { - margin-left: auto !important; - margin-right: auto !important; -} - -/* matches elements with class=\\":\`(\\" */ -.\\\\3A \\\\\`\\\\(--riRD { - color: aqua; -} - -/* matches elements with class=\\"1a2b3c\\" */ -.\\\\31 a2b3c--zIJ8 { - color: aliceblue; -} - -/* matches the element with id=\\"#fake-id\\" */ -#\\\\#fake-id--3i8C { - color: antiquewhite; -} - -/* matches the element with id=\\"-a-b-c-\\" */ -#-a-b-c---1LFn { - color: azure; -} - -/* matches the element with id=\\"©\\" */ -#©--1rph { - color: black; -} - -.♥--3hI- { background: lime; } -.©--1rph { background: lime; } -.“‘’”--2-Fc { background: lime; } -.☺☃--1ndr { background: lime; } -.⌘⌥--gxaZ { background: lime; } -.𝄞♪♩♫♬--mLhO { background: lime; } -.💩--2t9K { background: lime; } -.\\\\?--2I0o { background: lime; } -.\\\\@--sCVd { background: lime; } -.\\\\.--1HRZ { background: lime; } -.\\\\3A \\\\)--mhBL { background: lime; } -.\\\\3A \\\\\`\\\\(--riRD { background: lime; } -.\\\\31 23--12FW { background: lime; } -.\\\\31 a2b3c--zIJ8 { background: lime; } -.\\\\--IjVt { background: lime; } -.\\\\<\\\\>\\\\<\\\\<\\\\<\\\\>\\\\>\\\\<\\\\>--oXLW { background: lime; } -.\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\[\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\>\\\\+\\\\<\\\\<\\\\<\\\\<\\\\-\\\\]\\\\>\\\\+\\\\+\\\\.\\\\>\\\\+\\\\.\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\.\\\\+\\\\+\\\\+\\\\.\\\\>\\\\+\\\\+\\\\.\\\\<\\\\<\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\>\\\\.\\\\+\\\\+\\\\+\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\>\\\\+\\\\.\\\\>\\\\.--2HMg { background: lime; } -.\\\\#--2hLv { background: lime; } -.\\\\#\\\\#--2LwZ { background: lime; } -.\\\\#\\\\.\\\\#\\\\.\\\\#--i0DF { background: lime; } -.\\\\_--1er0 { background: lime; } -.\\\\{\\\\}--2qPT { background: lime; } -.\\\\#fake\\\\-id--3i8C { background: lime; } -.foo\\\\.bar--1Tdk { background: lime; } -.\\\\3A hover--1vI4 { background: lime; } -.\\\\3A hover\\\\3A focus\\\\3A active--2ElO { background: lime; } -.\\\\[attr\\\\=value\\\\]--1AJ- { background: lime; } -.f\\\\/o\\\\/o--3Zs0 { background: lime; } -.f\\\\\\\\o\\\\\\\\o--3D2d { background: lime; } -.f\\\\*o\\\\*o--2HQY { background: lime; } -.f\\\\!o\\\\!o--1HIX { background: lime; } -.f\\\\'o\\\\'o--3hCQ { background: lime; } -.f\\\\~o\\\\~o--fXtA { background: lime; } -.f\\\\+o\\\\+o--7duh { background: lime; } - -.foo\\\\/bar--1iGa { - background: hotpink; -} - -.foo\\\\\\\\bar--7qaP { - background: hotpink; -} - -.foo\\\\/bar\\\\/baz--24g3 { - background: hotpink; -} - -.foo\\\\\\\\bar\\\\\\\\baz--2NRI { - background: hotpink; -} ", "", ], ] `; -exports[`"modules" option should work and correctly replace escaped symbols: warnings 1`] = `Array []`; +exports[`"modules" option should resolve package from node_modules with and without tilde: warnings 1`] = `[]`; -exports[`"modules" option should work and has "undefined" context if no context was given: errors 1`] = `Array []`; +exports[`"modules" option should should work with two leading hyphens: errors 1`] = `[]`; -exports[`"modules" option should work and has "undefined" context if no context was given: module 1`] = ` +exports[`"modules" option should should work with two leading hyphens: module 1`] = ` "// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../../src/runtime/api.js\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -// Module -exports.push([module.id, \\".foo {\\\\n background: red;\\\\n}\\\\n\\\\n.foo {\\\\n background: blue;\\\\n}\\\\n\\\\n.foo {\\\\n background: red;\\\\n}\\\\n\\\\n#foo {\\\\n background: green;\\\\n}\\\\n\\\\n.foo .foo {\\\\n color: green;\\\\n}\\\\n\\\\n#foo .foo {\\\\n color: blue;\\\\n}\\\\n\\\\n.foo {\\\\n color: red;\\\\n}\\\\n\\\\n.foo {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n.foo {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\":\`(\\\\\\" */\\\\n.foo {\\\\n color: aqua;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\"1a2b3c\\\\\\" */\\\\n.foo {\\\\n color: aliceblue;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"#fake-id\\\\\\" */\\\\n#foo {\\\\n color: antiquewhite;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"-a-b-c-\\\\\\" */\\\\n#foo {\\\\n color: azure;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"©\\\\\\" */\\\\n#foo {\\\\n color: black;\\\\n}\\\\n\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n\\\\n.foo {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.foo {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.foo {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.foo {\\\\n background: hotpink;\\\\n}\\\\n\\", \\"\\"]); -// Exports -exports.locals = { - \\"123\\": \\"foo\\", - \\"test\\": \\"foo\\", - \\"_test\\": \\"foo\\", - \\"className\\": \\"foo\\", - \\"someId\\": \\"foo\\", - \\"subClass\\": \\"foo\\", - \\"-a0-34a___f\\": \\"foo\\", - \\"m_x_@\\": \\"foo\\", - \\"B&W?\\": \\"foo\\", - \\":\`(\\": \\"foo\\", - \\"1a2b3c\\": \\"foo\\", - \\"#fake-id\\": \\"foo\\", - \\"-a-b-c-\\": \\"foo\\", - \\"©\\": \\"foo\\", - \\"♥\\": \\"foo\\", - \\"“‘’”\\": \\"foo\\", - \\"☺☃\\": \\"foo\\", - \\"⌘⌥\\": \\"foo\\", - \\"𝄞♪♩♫♬\\": \\"foo\\", - \\"💩\\": \\"foo\\", - \\"?\\": \\"foo\\", - \\"@\\": \\"foo\\", - \\".\\": \\"foo\\", - \\":)\\": \\"foo\\", - \\"

\\": \\"foo\\", - \\"<><<<>><>\\": \\"foo\\", - \\"++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.\\": \\"foo\\", - \\"#\\": \\"foo\\", - \\"##\\": \\"foo\\", - \\"#.#.#\\": \\"foo\\", - \\"_\\": \\"foo\\", - \\"{}\\": \\"foo\\", - \\"foo.bar\\": \\"foo\\", - \\":hover\\": \\"foo\\", - \\":hover:focus:active\\": \\"foo\\", - \\"[attr=value]\\": \\"foo\\", - \\"f/o/o\\": \\"foo\\", - \\"f\\\\\\\\o\\\\\\\\o\\": \\"foo\\", - \\"f*o*o\\": \\"foo\\", - \\"f!o!o\\": \\"foo\\", - \\"f'o'o\\": \\"foo\\", - \\"f~o~o\\": \\"foo\\", - \\"f+o+o\\": \\"foo\\", - \\"foo/bar\\": \\"foo\\", - \\"foo\\\\\\\\bar\\": \\"foo\\", - \\"foo/bar/baz\\": \\"foo\\", - \\"foo\\\\\\\\bar\\\\\\\\baz\\": \\"foo\\" -}; -module.exports = exports; -" -`; - -exports[`"modules" option should work and has "undefined" context if no context was given: result 1`] = ` -Array [ - Array [ - "./modules/localIdentName/localIdentName.css", - ".foo { +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../../src/runtime/api.js"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`._--test { background: red; } -.foo { +._--_test { background: blue; } -.foo { +._--className { background: red; } -#foo { +#_--someId { background: green; } -.foo .foo { +._--className ._--subClass { color: green; } -#foo .foo { +#_--someId ._--subClass { color: blue; } -.foo { +._---a0-34a___f { color: red; } -.foo { +._--m_x_\\\\@ { margin-left: auto !important; margin-right: auto !important; } -.foo { +._--B\\\\&W\\\\? { margin-left: auto !important; margin-right: auto !important; } -/* matches elements with class=\\":\`(\\" */ -.foo { +/* matches elements with class=":\\\`(" */ +._--\\\\3A \\\\\\\`\\\\( { color: aqua; } -/* matches elements with class=\\"1a2b3c\\" */ -.foo { +/* matches elements with class="1a2b3c" */ +._--\\\\31 a2b3c { color: aliceblue; } -/* matches the element with id=\\"#fake-id\\" */ -#foo { +/* matches the element with id="#fake-id" */ +#_--\\\\#fake-id { color: antiquewhite; } -/* matches the element with id=\\"-a-b-c-\\" */ -#foo { +/* matches the element with id="-a-b-c-" */ +#_---a-b-c- { color: azure; } -/* matches the element with id=\\"©\\" */ -#foo { +/* matches the element with id="©" */ +#_--© { color: black; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } +._--♥ { background: lime; } +._--© { background: lime; } +._--😍 { background: lime; } +._--“‘’” { background: lime; } +._--☺☃ { background: lime; } +._--⌘⌥ { background: lime; } +._--𝄞♪♩♫♬ { background: lime; } +._--💩 { background: lime; } +._--\\\\? { background: lime; } +._--\\\\@ { background: lime; } +._--\\\\. { background: lime; } +._--\\\\3A \\\\) { background: lime; } +._--\\\\3A \\\\\\\`\\\\( { background: lime; } +._--\\\\31 23 { background: lime; } +._--\\\\31 a2b3c { background: lime; } +._--\\\\ { background: lime; } +._--\\\\<\\\\>\\\\<\\\\<\\\\<\\\\>\\\\>\\\\<\\\\> { background: lime; } +._--\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\[\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\>\\\\+\\\\<\\\\<\\\\<\\\\<\\\\-\\\\]\\\\>\\\\+\\\\+\\\\.\\\\>\\\\+\\\\.\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\.\\\\+\\\\+\\\\+\\\\.\\\\>\\\\+\\\\+\\\\.\\\\<\\\\<\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\>\\\\.\\\\+\\\\+\\\\+\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\>\\\\+\\\\.\\\\>\\\\. { background: lime; } +._--\\\\# { background: lime; } +._--\\\\#\\\\# { background: lime; } +._--\\\\#\\\\.\\\\#\\\\.\\\\# { background: lime; } +._--\\\\_ { background: lime; } +._--\\\\{\\\\} { background: lime; } +._--\\\\#fake\\\\-id { background: lime; } +._--foo\\\\.bar { background: lime; } +._--\\\\3A hover { background: lime; } +._--\\\\3A hover\\\\3A focus\\\\3A active { background: lime; } +._--\\\\[attr\\\\=value\\\\] { background: lime; } +._--f\\\\/o\\\\/o { background: lime; } +._--f\\\\\\\\o\\\\\\\\o { background: lime; } +._--f\\\\*o\\\\*o { background: lime; } +._--f\\\\!o\\\\!o { background: lime; } +._--f\\\\'o\\\\'o { background: lime; } +._--f\\\\~o\\\\~o { background: lime; } +._--f\\\\+o\\\\+o { background: lime; } -.foo { +._--foo\\\\/bar { background: hotpink; } -.foo { +._--foo\\\\\\\\bar { background: hotpink; } -.foo { +._--foo\\\\/bar\\\\/baz { background: hotpink; } -.foo { +._--foo\\\\\\\\bar\\\\\\\\baz { background: hotpink; } -", - "", - ], -] -`; - -exports[`"modules" option should work and has "undefined" context if no context was given: warnings 1`] = `Array []`; - -exports[`"modules" option should work and prefix leading hyphen when digit is first: errors 1`] = `Array []`; - -exports[`"modules" option should work and prefix leading hyphen when digit is first: module 1`] = ` -"// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../../src/runtime/api.js\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -// Module -exports.push([module.id, \\"._-1test {\\\\n background: red;\\\\n}\\\\n\\\\n._-1_test {\\\\n background: blue;\\\\n}\\\\n\\\\n._-1className {\\\\n background: red;\\\\n}\\\\n\\\\n#_-1someId {\\\\n background: green;\\\\n}\\\\n\\\\n._-1className ._-1subClass {\\\\n color: green;\\\\n}\\\\n\\\\n#_-1someId ._-1subClass {\\\\n color: blue;\\\\n}\\\\n\\\\n._-1-a0-34a___f {\\\\n color: red;\\\\n}\\\\n\\\\n._-1m_x_\\\\\\\\@ {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n._-1B\\\\\\\\&W\\\\\\\\? {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\":\`(\\\\\\" */\\\\n._-1\\\\\\\\3A \\\\\\\\\`\\\\\\\\( {\\\\n color: aqua;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\"1a2b3c\\\\\\" */\\\\n._-1\\\\\\\\31 a2b3c {\\\\n color: aliceblue;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"#fake-id\\\\\\" */\\\\n#_-1\\\\\\\\#fake-id {\\\\n color: antiquewhite;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"-a-b-c-\\\\\\" */\\\\n#_-1-a-b-c- {\\\\n color: azure;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"©\\\\\\" */\\\\n#_-1© {\\\\n color: black;\\\\n}\\\\n\\\\n._-1♥ { background: lime; }\\\\n._-1© { background: lime; }\\\\n._-1“‘’” { background: lime; }\\\\n._-1☺☃ { background: lime; }\\\\n._-1⌘⌥ { background: lime; }\\\\n._-1𝄞♪♩♫♬ { background: lime; }\\\\n._-1💩 { background: lime; }\\\\n._-1\\\\\\\\? { background: lime; }\\\\n._-1\\\\\\\\@ { background: lime; }\\\\n._-1\\\\\\\\. { background: lime; }\\\\n._-1\\\\\\\\3A \\\\\\\\) { background: lime; }\\\\n._-1\\\\\\\\3A \\\\\\\\\`\\\\\\\\( { background: lime; }\\\\n._-1\\\\\\\\31 23 { background: lime; }\\\\n._-1\\\\\\\\31 a2b3c { background: lime; }\\\\n._-1\\\\\\\\ { background: lime; }\\\\n._-1\\\\\\\\<\\\\\\\\>\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\>\\\\\\\\>\\\\\\\\<\\\\\\\\> { background: lime; }\\\\n._-1\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\[\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\-\\\\\\\\]\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\<\\\\\\\\<\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\.\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\. { background: lime; }\\\\n._-1\\\\\\\\# { background: lime; }\\\\n._-1\\\\\\\\#\\\\\\\\# { background: lime; }\\\\n._-1\\\\\\\\#\\\\\\\\.\\\\\\\\#\\\\\\\\.\\\\\\\\# { background: lime; }\\\\n._-1\\\\\\\\_ { background: lime; }\\\\n._-1\\\\\\\\{\\\\\\\\} { background: lime; }\\\\n._-1\\\\\\\\#fake\\\\\\\\-id { background: lime; }\\\\n._-1foo\\\\\\\\.bar { background: lime; }\\\\n._-1\\\\\\\\3A hover { background: lime; }\\\\n._-1\\\\\\\\3A hover\\\\\\\\3A focus\\\\\\\\3A active { background: lime; }\\\\n._-1\\\\\\\\[attr\\\\\\\\=value\\\\\\\\] { background: lime; }\\\\n._-1f\\\\\\\\/o\\\\\\\\/o { background: lime; }\\\\n._-1f\\\\\\\\\\\\\\\\o\\\\\\\\\\\\\\\\o { background: lime; }\\\\n._-1f\\\\\\\\*o\\\\\\\\*o { background: lime; }\\\\n._-1f\\\\\\\\!o\\\\\\\\!o { background: lime; }\\\\n._-1f\\\\\\\\'o\\\\\\\\'o { background: lime; }\\\\n._-1f\\\\\\\\~o\\\\\\\\~o { background: lime; }\\\\n._-1f\\\\\\\\+o\\\\\\\\+o { background: lime; }\\\\n\\\\n._-1foo\\\\\\\\/bar {\\\\n background: hotpink;\\\\n}\\\\n\\\\n._-1foo\\\\\\\\\\\\\\\\bar {\\\\n background: hotpink;\\\\n}\\\\n\\\\n._-1foo\\\\\\\\/bar\\\\\\\\/baz {\\\\n background: hotpink;\\\\n}\\\\n\\\\n._-1foo\\\\\\\\\\\\\\\\bar\\\\\\\\\\\\\\\\baz {\\\\n background: hotpink;\\\\n}\\\\n\\", \\"\\"]); -// Exports -exports.locals = { - \\"123\\": \\"_-1123\\", - \\"test\\": \\"_-1test\\", - \\"_test\\": \\"_-1_test\\", - \\"className\\": \\"_-1className\\", - \\"someId\\": \\"_-1someId\\", - \\"subClass\\": \\"_-1subClass\\", - \\"-a0-34a___f\\": \\"_-1-a0-34a___f\\", - \\"m_x_@\\": \\"_-1m_x_@\\", - \\"B&W?\\": \\"_-1B&W?\\", - \\":\`(\\": \\"_-1:\`(\\", - \\"1a2b3c\\": \\"_-11a2b3c\\", - \\"#fake-id\\": \\"_-1#fake-id\\", - \\"-a-b-c-\\": \\"_-1-a-b-c-\\", - \\"©\\": \\"_-1©\\", - \\"♥\\": \\"_-1♥\\", - \\"“‘’”\\": \\"_-1“‘’”\\", - \\"☺☃\\": \\"_-1☺☃\\", - \\"⌘⌥\\": \\"_-1⌘⌥\\", - \\"𝄞♪♩♫♬\\": \\"_-1𝄞♪♩♫♬\\", - \\"💩\\": \\"_-1💩\\", - \\"?\\": \\"_-1?\\", - \\"@\\": \\"_-1@\\", - \\".\\": \\"_-1.\\", - \\":)\\": \\"_-1:)\\", - \\"

\\": \\"_-1

\\", - \\"<><<<>><>\\": \\"_-1<><<<>><>\\", - \\"++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.\\": \\"_-1++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.\\", - \\"#\\": \\"_-1#\\", - \\"##\\": \\"_-1##\\", - \\"#.#.#\\": \\"_-1#.#.#\\", - \\"_\\": \\"_-1_\\", - \\"{}\\": \\"_-1{}\\", - \\"foo.bar\\": \\"_-1foo.bar\\", - \\":hover\\": \\"_-1:hover\\", - \\":hover:focus:active\\": \\"_-1:hover:focus:active\\", - \\"[attr=value]\\": \\"_-1[attr=value]\\", - \\"f/o/o\\": \\"_-1f/o/o\\", - \\"f\\\\\\\\o\\\\\\\\o\\": \\"_-1f\\\\\\\\o\\\\\\\\o\\", - \\"f*o*o\\": \\"_-1f*o*o\\", - \\"f!o!o\\": \\"_-1f!o!o\\", - \\"f'o'o\\": \\"_-1f'o'o\\", - \\"f~o~o\\": \\"_-1f~o~o\\", - \\"f+o+o\\": \\"_-1f+o+o\\", - \\"foo/bar\\": \\"_-1foo/bar\\", - \\"foo\\\\\\\\bar\\": \\"_-1foo\\\\\\\\bar\\", - \\"foo/bar/baz\\": \\"_-1foo/bar/baz\\", - \\"foo\\\\\\\\bar\\\\\\\\baz\\": \\"_-1foo\\\\\\\\bar\\\\\\\\baz\\" -}; -module.exports = exports; +\`, ""]); +// Exports +var _1 = \`_--123\`; +export { _1 as "123" }; +export var test = \`_--test\`; +export var _test = \`_--_test\`; +export var className = \`_--className\`; +export var someId = \`_--someId\`; +export var subClass = \`_--subClass\`; +var _2 = \`_---a0-34a___f\`; +export { _2 as "-a0-34a___f" }; +var _3 = \`_--m_x_@\`; +export { _3 as "m_x_@" }; +var _4 = \`_--B&W?\`; +export { _4 as "B&W?" }; +var _5 = \`_--:\\\`(\`; +export { _5 as ":\`(" }; +var _6 = \`_--1a2b3c\`; +export { _6 as "1a2b3c" }; +var _7 = \`_--#fake-id\`; +export { _7 as "#fake-id" }; +var _8 = \`_---a-b-c-\`; +export { _8 as "-a-b-c-" }; +var _9 = \`_--©\`; +export { _9 as "©" }; +var _a = \`_--♥\`; +export { _a as "♥" }; +var _b = \`_--😍\`; +export { _b as "😍" }; +var _c = \`_--“‘’”\`; +export { _c as "“‘’”" }; +var _d = \`_--☺☃\`; +export { _d as "☺☃" }; +var _e = \`_--⌘⌥\`; +export { _e as "⌘⌥" }; +var _f = \`_--𝄞♪♩♫♬\`; +export { _f as "𝄞♪♩♫♬" }; +var _10 = \`_--💩\`; +export { _10 as "💩" }; +var _11 = \`_--?\`; +export { _11 as "?" }; +var _12 = \`_--@\`; +export { _12 as "@" }; +var _13 = \`_--.\`; +export { _13 as "." }; +var _14 = \`_--:)\`; +export { _14 as ":)" }; +var _15 = \`_--

\`; +export { _15 as "

" }; +var _16 = \`_--<><<<>><>\`; +export { _16 as "<><<<>><>" }; +var _17 = \`_--++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.\`; +export { _17 as "++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>." }; +var _18 = \`_--#\`; +export { _18 as "#" }; +var _19 = \`_--##\`; +export { _19 as "##" }; +var _1a = \`_--#.#.#\`; +export { _1a as "#.#.#" }; +export var _ = \`_--_\`; +var _1b = \`_--{}\`; +export { _1b as "{}" }; +var _1c = \`_--foo.bar\`; +export { _1c as "foo.bar" }; +var _1d = \`_--:hover\`; +export { _1d as ":hover" }; +var _1e = \`_--:hover:focus:active\`; +export { _1e as ":hover:focus:active" }; +var _1f = \`_--[attr=value]\`; +export { _1f as "[attr=value]" }; +var _20 = \`_--f/o/o\`; +export { _20 as "f/o/o" }; +var _21 = \`_--f\\\\o\\\\o\`; +export { _21 as "f\\\\o\\\\o" }; +var _22 = \`_--f*o*o\`; +export { _22 as "f*o*o" }; +var _23 = \`_--f!o!o\`; +export { _23 as "f!o!o" }; +var _24 = \`_--f'o'o\`; +export { _24 as "f'o'o" }; +var _25 = \`_--f~o~o\`; +export { _25 as "f~o~o" }; +var _26 = \`_--f+o+o\`; +export { _26 as "f+o+o" }; +var _27 = \`_--foo/bar\`; +export { _27 as "foo/bar" }; +var _28 = \`_--foo\\\\bar\`; +export { _28 as "foo\\\\bar" }; +var _29 = \`_--foo/bar/baz\`; +export { _29 as "foo/bar/baz" }; +var _2a = \`_--foo\\\\bar\\\\baz\`; +export { _2a as "foo\\\\bar\\\\baz" }; +export default ___CSS_LOADER_EXPORT___; " `; -exports[`"modules" option should work and prefix leading hyphen when digit is first: result 1`] = ` -Array [ - Array [ +exports[`"modules" option should should work with two leading hyphens: result 1`] = ` +[ + [ "./modules/localIdentName/localIdentName.css", - "._-1test { + "._--test { background: red; } -._-1_test { +._--_test { background: blue; } -._-1className { +._--className { background: red; } -#_-1someId { +#_--someId { background: green; } -._-1className ._-1subClass { +._--className ._--subClass { color: green; } -#_-1someId ._-1subClass { +#_--someId ._--subClass { color: blue; } -._-1-a0-34a___f { +._---a0-34a___f { color: red; } -._-1m_x_\\\\@ { +._--m_x_\\@ { margin-left: auto !important; margin-right: auto !important; } -._-1B\\\\&W\\\\? { +._--B\\&W\\? { margin-left: auto !important; margin-right: auto !important; } -/* matches elements with class=\\":\`(\\" */ -._-1\\\\3A \\\\\`\\\\( { +/* matches elements with class=":\`(" */ +._--\\3A \\\`\\( { color: aqua; } -/* matches elements with class=\\"1a2b3c\\" */ -._-1\\\\31 a2b3c { +/* matches elements with class="1a2b3c" */ +._--\\31 a2b3c { color: aliceblue; } -/* matches the element with id=\\"#fake-id\\" */ -#_-1\\\\#fake-id { +/* matches the element with id="#fake-id" */ +#_--\\#fake-id { color: antiquewhite; } -/* matches the element with id=\\"-a-b-c-\\" */ -#_-1-a-b-c- { +/* matches the element with id="-a-b-c-" */ +#_---a-b-c- { color: azure; } -/* matches the element with id=\\"©\\" */ -#_-1© { +/* matches the element with id="©" */ +#_--© { color: black; } -._-1♥ { background: lime; } -._-1© { background: lime; } -._-1“‘’” { background: lime; } -._-1☺☃ { background: lime; } -._-1⌘⌥ { background: lime; } -._-1𝄞♪♩♫♬ { background: lime; } -._-1💩 { background: lime; } -._-1\\\\? { background: lime; } -._-1\\\\@ { background: lime; } -._-1\\\\. { background: lime; } -._-1\\\\3A \\\\) { background: lime; } -._-1\\\\3A \\\\\`\\\\( { background: lime; } -._-1\\\\31 23 { background: lime; } -._-1\\\\31 a2b3c { background: lime; } -._-1\\\\ { background: lime; } -._-1\\\\<\\\\>\\\\<\\\\<\\\\<\\\\>\\\\>\\\\<\\\\> { background: lime; } -._-1\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\[\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\>\\\\+\\\\<\\\\<\\\\<\\\\<\\\\-\\\\]\\\\>\\\\+\\\\+\\\\.\\\\>\\\\+\\\\.\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\.\\\\+\\\\+\\\\+\\\\.\\\\>\\\\+\\\\+\\\\.\\\\<\\\\<\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\>\\\\.\\\\+\\\\+\\\\+\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\>\\\\+\\\\.\\\\>\\\\. { background: lime; } -._-1\\\\# { background: lime; } -._-1\\\\#\\\\# { background: lime; } -._-1\\\\#\\\\.\\\\#\\\\.\\\\# { background: lime; } -._-1\\\\_ { background: lime; } -._-1\\\\{\\\\} { background: lime; } -._-1\\\\#fake\\\\-id { background: lime; } -._-1foo\\\\.bar { background: lime; } -._-1\\\\3A hover { background: lime; } -._-1\\\\3A hover\\\\3A focus\\\\3A active { background: lime; } -._-1\\\\[attr\\\\=value\\\\] { background: lime; } -._-1f\\\\/o\\\\/o { background: lime; } -._-1f\\\\\\\\o\\\\\\\\o { background: lime; } -._-1f\\\\*o\\\\*o { background: lime; } -._-1f\\\\!o\\\\!o { background: lime; } -._-1f\\\\'o\\\\'o { background: lime; } -._-1f\\\\~o\\\\~o { background: lime; } -._-1f\\\\+o\\\\+o { background: lime; } - -._-1foo\\\\/bar { +._--♥ { background: lime; } +._--© { background: lime; } +._--😍 { background: lime; } +._--“‘’” { background: lime; } +._--☺☃ { background: lime; } +._--⌘⌥ { background: lime; } +._--𝄞♪♩♫♬ { background: lime; } +._--💩 { background: lime; } +._--\\? { background: lime; } +._--\\@ { background: lime; } +._--\\. { background: lime; } +._--\\3A \\) { background: lime; } +._--\\3A \\\`\\( { background: lime; } +._--\\31 23 { background: lime; } +._--\\31 a2b3c { background: lime; } +._--\\ { background: lime; } +._--\\<\\>\\<\\<\\<\\>\\>\\<\\> { background: lime; } +._--\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\[\\>\\+\\+\\+\\+\\+\\+\\+\\>\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\>\\+\\+\\+\\>\\+\\<\\<\\<\\<\\-\\]\\>\\+\\+\\.\\>\\+\\.\\+\\+\\+\\+\\+\\+\\+\\.\\.\\+\\+\\+\\.\\>\\+\\+\\.\\<\\<\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\.\\>\\.\\+\\+\\+\\.\\-\\-\\-\\-\\-\\-\\.\\-\\-\\-\\-\\-\\-\\-\\-\\.\\>\\+\\.\\>\\. { background: lime; } +._--\\# { background: lime; } +._--\\#\\# { background: lime; } +._--\\#\\.\\#\\.\\# { background: lime; } +._--\\_ { background: lime; } +._--\\{\\} { background: lime; } +._--\\#fake\\-id { background: lime; } +._--foo\\.bar { background: lime; } +._--\\3A hover { background: lime; } +._--\\3A hover\\3A focus\\3A active { background: lime; } +._--\\[attr\\=value\\] { background: lime; } +._--f\\/o\\/o { background: lime; } +._--f\\\\o\\\\o { background: lime; } +._--f\\*o\\*o { background: lime; } +._--f\\!o\\!o { background: lime; } +._--f\\'o\\'o { background: lime; } +._--f\\~o\\~o { background: lime; } +._--f\\+o\\+o { background: lime; } + +._--foo\\/bar { background: hotpink; } -._-1foo\\\\\\\\bar { +._--foo\\\\bar { background: hotpink; } -._-1foo\\\\/bar\\\\/baz { +._--foo\\/bar\\/baz { background: hotpink; } -._-1foo\\\\\\\\bar\\\\\\\\baz { +._--foo\\\\bar\\\\baz { background: hotpink; } ", @@ -1862,372 +1745,342 @@ Array [ ] `; -exports[`"modules" option should work and prefix leading hyphen when digit is first: warnings 1`] = `Array []`; +exports[`"modules" option should should work with two leading hyphens: warnings 1`] = `[]`; -exports[`"modules" option should work and respect the "context" option: errors 1`] = `Array []`; +exports[`"modules" option should should work with two leading underscore: errors 1`] = `[]`; -exports[`"modules" option should work and respect the "context" option: module 1`] = ` +exports[`"modules" option should should work with two leading underscore: module 1`] = ` "// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../../src/runtime/api.js\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -// Module -exports.push([module.id, \\"._3bArYx5R {\\\\n background: red;\\\\n}\\\\n\\\\n.XTGsNhBt {\\\\n background: blue;\\\\n}\\\\n\\\\n._2ilfWoxp {\\\\n background: red;\\\\n}\\\\n\\\\n#_3v-9Lk1C {\\\\n background: green;\\\\n}\\\\n\\\\n._2ilfWoxp ._3DLY7Ja5 {\\\\n color: green;\\\\n}\\\\n\\\\n#_3v-9Lk1C ._3DLY7Ja5 {\\\\n color: blue;\\\\n}\\\\n\\\\n._2skz9EDS {\\\\n color: red;\\\\n}\\\\n\\\\n._1pEJLEFa {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n._36Mz6bXX {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\":\`(\\\\\\" */\\\\n._3smFtgP1 {\\\\n color: aqua;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\"1a2b3c\\\\\\" */\\\\n._3nWh_bmc {\\\\n color: aliceblue;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"#fake-id\\\\\\" */\\\\n#_3zyOTdoW {\\\\n color: antiquewhite;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"-a-b-c-\\\\\\" */\\\\n#SXlBpmLd {\\\\n color: azure;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"©\\\\\\" */\\\\n#_3wIdKrg5 {\\\\n color: black;\\\\n}\\\\n\\\\n._3CvZATcw { background: lime; }\\\\n._3wIdKrg5 { background: lime; }\\\\n._1lLtTh58 { background: lime; }\\\\n._129OOBpF { background: lime; }\\\\n._31l8-xW6 { background: lime; }\\\\n._3PTmP7dH { background: lime; }\\\\n._3iDx9JjF { background: lime; }\\\\n.gjylLYRz { background: lime; }\\\\n.t5XxN6Cw { background: lime; }\\\\n.fEcdI_Ta { background: lime; }\\\\n._3JwMk5Ks { background: lime; }\\\\n._3smFtgP1 { background: lime; }\\\\n._30YAJl6C { background: lime; }\\\\n._3nWh_bmc { background: lime; }\\\\n.juMfCdyH { background: lime; }\\\\n._1nZHf2m5 { background: lime; }\\\\n._3tH-JgLJ { background: lime; }\\\\n._1d4pWlls { background: lime; }\\\\n._1yrD9kGf { background: lime; }\\\\n._181tN6YI { background: lime; }\\\\n._3XX_EoMh { background: lime; }\\\\n._1okItBzL { background: lime; }\\\\n._3zyOTdoW { background: lime; }\\\\n.D1UTMFUQ { background: lime; }\\\\n._1VdiVnid { background: lime; }\\\\n._3bwG403y { background: lime; }\\\\n._2dg-ho4t { background: lime; }\\\\n._3MAXcubw { background: lime; }\\\\n.S0VDfqvq { background: lime; }\\\\n._1Dj0PRAS { background: lime; }\\\\n._3SZwCzRS { background: lime; }\\\\n.mapSsRAG { background: lime; }\\\\n._10Kpk0ys { background: lime; }\\\\n._3t38eY4A { background: lime; }\\\\n\\\\n._37a0QYL7 {\\\\n background: hotpink;\\\\n}\\\\n\\\\n._2hUYlBhh {\\\\n background: hotpink;\\\\n}\\\\n\\\\n._1GrpvCLQ {\\\\n background: hotpink;\\\\n}\\\\n\\\\n._2iqkFI_a {\\\\n background: hotpink;\\\\n}\\\\n\\", \\"\\"]); -// Exports -exports.locals = { - \\"123\\": \\"_30YAJl6C\\", - \\"test\\": \\"_3bArYx5R\\", - \\"_test\\": \\"XTGsNhBt\\", - \\"className\\": \\"_2ilfWoxp\\", - \\"someId\\": \\"_3v-9Lk1C\\", - \\"subClass\\": \\"_3DLY7Ja5\\", - \\"-a0-34a___f\\": \\"_2skz9EDS\\", - \\"m_x_@\\": \\"_1pEJLEFa\\", - \\"B&W?\\": \\"_36Mz6bXX\\", - \\":\`(\\": \\"_3smFtgP1\\", - \\"1a2b3c\\": \\"_3nWh_bmc\\", - \\"#fake-id\\": \\"_3zyOTdoW\\", - \\"-a-b-c-\\": \\"SXlBpmLd\\", - \\"©\\": \\"_3wIdKrg5\\", - \\"♥\\": \\"_3CvZATcw\\", - \\"“‘’”\\": \\"_1lLtTh58\\", - \\"☺☃\\": \\"_129OOBpF\\", - \\"⌘⌥\\": \\"_31l8-xW6\\", - \\"𝄞♪♩♫♬\\": \\"_3PTmP7dH\\", - \\"💩\\": \\"_3iDx9JjF\\", - \\"?\\": \\"gjylLYRz\\", - \\"@\\": \\"t5XxN6Cw\\", - \\".\\": \\"fEcdI_Ta\\", - \\":)\\": \\"_3JwMk5Ks\\", - \\"

\\": \\"juMfCdyH\\", - \\"<><<<>><>\\": \\"_1nZHf2m5\\", - \\"++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.\\": \\"_3tH-JgLJ\\", - \\"#\\": \\"_1d4pWlls\\", - \\"##\\": \\"_1yrD9kGf\\", - \\"#.#.#\\": \\"_181tN6YI\\", - \\"_\\": \\"_3XX_EoMh\\", - \\"{}\\": \\"_1okItBzL\\", - \\"foo.bar\\": \\"D1UTMFUQ\\", - \\":hover\\": \\"_1VdiVnid\\", - \\":hover:focus:active\\": \\"_3bwG403y\\", - \\"[attr=value]\\": \\"_2dg-ho4t\\", - \\"f/o/o\\": \\"_3MAXcubw\\", - \\"f\\\\\\\\o\\\\\\\\o\\": \\"S0VDfqvq\\", - \\"f*o*o\\": \\"_1Dj0PRAS\\", - \\"f!o!o\\": \\"_3SZwCzRS\\", - \\"f'o'o\\": \\"mapSsRAG\\", - \\"f~o~o\\": \\"_10Kpk0ys\\", - \\"f+o+o\\": \\"_3t38eY4A\\", - \\"foo/bar\\": \\"_37a0QYL7\\", - \\"foo\\\\\\\\bar\\": \\"_2hUYlBhh\\", - \\"foo/bar/baz\\": \\"_1GrpvCLQ\\", - \\"foo\\\\\\\\bar\\\\\\\\baz\\": \\"_2iqkFI_a\\" -}; -module.exports = exports; -" -`; - -exports[`"modules" option should work and respect the "context" option: result 1`] = ` -Array [ - Array [ - "./modules/localIdentName/localIdentName.css", - "._3bArYx5R { +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../../src/runtime/api.js"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`.__test { background: red; } -.XTGsNhBt { +.___test { background: blue; } -._2ilfWoxp { +.__className { background: red; } -#_3v-9Lk1C { +#__someId { background: green; } -._2ilfWoxp ._3DLY7Ja5 { +.__className .__subClass { color: green; } -#_3v-9Lk1C ._3DLY7Ja5 { +#__someId .__subClass { color: blue; } -._2skz9EDS { +.__-a0-34a___f { color: red; } -._1pEJLEFa { +.__m_x_\\\\@ { margin-left: auto !important; margin-right: auto !important; } -._36Mz6bXX { +.__B\\\\&W\\\\? { margin-left: auto !important; margin-right: auto !important; } -/* matches elements with class=\\":\`(\\" */ -._3smFtgP1 { +/* matches elements with class=":\\\`(" */ +.__\\\\3A \\\\\\\`\\\\( { color: aqua; } -/* matches elements with class=\\"1a2b3c\\" */ -._3nWh_bmc { +/* matches elements with class="1a2b3c" */ +.__\\\\31 a2b3c { color: aliceblue; } -/* matches the element with id=\\"#fake-id\\" */ -#_3zyOTdoW { +/* matches the element with id="#fake-id" */ +#__\\\\#fake-id { color: antiquewhite; } -/* matches the element with id=\\"-a-b-c-\\" */ -#SXlBpmLd { +/* matches the element with id="-a-b-c-" */ +#__-a-b-c- { color: azure; } -/* matches the element with id=\\"©\\" */ -#_3wIdKrg5 { +/* matches the element with id="©" */ +#__© { color: black; } -._3CvZATcw { background: lime; } -._3wIdKrg5 { background: lime; } -._1lLtTh58 { background: lime; } -._129OOBpF { background: lime; } -._31l8-xW6 { background: lime; } -._3PTmP7dH { background: lime; } -._3iDx9JjF { background: lime; } -.gjylLYRz { background: lime; } -.t5XxN6Cw { background: lime; } -.fEcdI_Ta { background: lime; } -._3JwMk5Ks { background: lime; } -._3smFtgP1 { background: lime; } -._30YAJl6C { background: lime; } -._3nWh_bmc { background: lime; } -.juMfCdyH { background: lime; } -._1nZHf2m5 { background: lime; } -._3tH-JgLJ { background: lime; } -._1d4pWlls { background: lime; } -._1yrD9kGf { background: lime; } -._181tN6YI { background: lime; } -._3XX_EoMh { background: lime; } -._1okItBzL { background: lime; } -._3zyOTdoW { background: lime; } -.D1UTMFUQ { background: lime; } -._1VdiVnid { background: lime; } -._3bwG403y { background: lime; } -._2dg-ho4t { background: lime; } -._3MAXcubw { background: lime; } -.S0VDfqvq { background: lime; } -._1Dj0PRAS { background: lime; } -._3SZwCzRS { background: lime; } -.mapSsRAG { background: lime; } -._10Kpk0ys { background: lime; } -._3t38eY4A { background: lime; } +.__♥ { background: lime; } +.__© { background: lime; } +.__😍 { background: lime; } +.__“‘’” { background: lime; } +.__☺☃ { background: lime; } +.__⌘⌥ { background: lime; } +.__𝄞♪♩♫♬ { background: lime; } +.__💩 { background: lime; } +.__\\\\? { background: lime; } +.__\\\\@ { background: lime; } +.__\\\\. { background: lime; } +.__\\\\3A \\\\) { background: lime; } +.__\\\\3A \\\\\\\`\\\\( { background: lime; } +.__\\\\31 23 { background: lime; } +.__\\\\31 a2b3c { background: lime; } +.__\\\\ { background: lime; } +.__\\\\<\\\\>\\\\<\\\\<\\\\<\\\\>\\\\>\\\\<\\\\> { background: lime; } +.__\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\[\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\>\\\\+\\\\<\\\\<\\\\<\\\\<\\\\-\\\\]\\\\>\\\\+\\\\+\\\\.\\\\>\\\\+\\\\.\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\.\\\\+\\\\+\\\\+\\\\.\\\\>\\\\+\\\\+\\\\.\\\\<\\\\<\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\>\\\\.\\\\+\\\\+\\\\+\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\>\\\\+\\\\.\\\\>\\\\. { background: lime; } +.__\\\\# { background: lime; } +.__\\\\#\\\\# { background: lime; } +.__\\\\#\\\\.\\\\#\\\\.\\\\# { background: lime; } +.__\\\\_ { background: lime; } +.__\\\\{\\\\} { background: lime; } +.__\\\\#fake\\\\-id { background: lime; } +.__foo\\\\.bar { background: lime; } +.__\\\\3A hover { background: lime; } +.__\\\\3A hover\\\\3A focus\\\\3A active { background: lime; } +.__\\\\[attr\\\\=value\\\\] { background: lime; } +.__f\\\\/o\\\\/o { background: lime; } +.__f\\\\\\\\o\\\\\\\\o { background: lime; } +.__f\\\\*o\\\\*o { background: lime; } +.__f\\\\!o\\\\!o { background: lime; } +.__f\\\\'o\\\\'o { background: lime; } +.__f\\\\~o\\\\~o { background: lime; } +.__f\\\\+o\\\\+o { background: lime; } -._37a0QYL7 { +.__foo\\\\/bar { background: hotpink; } -._2hUYlBhh { +.__foo\\\\\\\\bar { background: hotpink; } -._1GrpvCLQ { +.__foo\\\\/bar\\\\/baz { background: hotpink; } -._2iqkFI_a { +.__foo\\\\\\\\bar\\\\\\\\baz { background: hotpink; } -", - "", - ], -] -`; - -exports[`"modules" option should work and respect the "context" option: warnings 1`] = `Array []`; - -exports[`"modules" option should work and respect the "getLocalIdent" option: errors 1`] = `Array []`; - -exports[`"modules" option should work and respect the "getLocalIdent" option: module 1`] = ` -"// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../../src/runtime/api.js\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -// Module -exports.push([module.id, \\".foo {\\\\n background: red;\\\\n}\\\\n\\\\n.foo {\\\\n background: blue;\\\\n}\\\\n\\\\n.foo {\\\\n background: red;\\\\n}\\\\n\\\\n#foo {\\\\n background: green;\\\\n}\\\\n\\\\n.foo .foo {\\\\n color: green;\\\\n}\\\\n\\\\n#foo .foo {\\\\n color: blue;\\\\n}\\\\n\\\\n.foo {\\\\n color: red;\\\\n}\\\\n\\\\n.foo {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n.foo {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\":\`(\\\\\\" */\\\\n.foo {\\\\n color: aqua;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\"1a2b3c\\\\\\" */\\\\n.foo {\\\\n color: aliceblue;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"#fake-id\\\\\\" */\\\\n#foo {\\\\n color: antiquewhite;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"-a-b-c-\\\\\\" */\\\\n#foo {\\\\n color: azure;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"©\\\\\\" */\\\\n#foo {\\\\n color: black;\\\\n}\\\\n\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n\\\\n.foo {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.foo {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.foo {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.foo {\\\\n background: hotpink;\\\\n}\\\\n\\", \\"\\"]); -// Exports -exports.locals = { - \\"123\\": \\"foo\\", - \\"test\\": \\"foo\\", - \\"_test\\": \\"foo\\", - \\"className\\": \\"foo\\", - \\"someId\\": \\"foo\\", - \\"subClass\\": \\"foo\\", - \\"-a0-34a___f\\": \\"foo\\", - \\"m_x_@\\": \\"foo\\", - \\"B&W?\\": \\"foo\\", - \\":\`(\\": \\"foo\\", - \\"1a2b3c\\": \\"foo\\", - \\"#fake-id\\": \\"foo\\", - \\"-a-b-c-\\": \\"foo\\", - \\"©\\": \\"foo\\", - \\"♥\\": \\"foo\\", - \\"“‘’”\\": \\"foo\\", - \\"☺☃\\": \\"foo\\", - \\"⌘⌥\\": \\"foo\\", - \\"𝄞♪♩♫♬\\": \\"foo\\", - \\"💩\\": \\"foo\\", - \\"?\\": \\"foo\\", - \\"@\\": \\"foo\\", - \\".\\": \\"foo\\", - \\":)\\": \\"foo\\", - \\"

\\": \\"foo\\", - \\"<><<<>><>\\": \\"foo\\", - \\"++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.\\": \\"foo\\", - \\"#\\": \\"foo\\", - \\"##\\": \\"foo\\", - \\"#.#.#\\": \\"foo\\", - \\"_\\": \\"foo\\", - \\"{}\\": \\"foo\\", - \\"foo.bar\\": \\"foo\\", - \\":hover\\": \\"foo\\", - \\":hover:focus:active\\": \\"foo\\", - \\"[attr=value]\\": \\"foo\\", - \\"f/o/o\\": \\"foo\\", - \\"f\\\\\\\\o\\\\\\\\o\\": \\"foo\\", - \\"f*o*o\\": \\"foo\\", - \\"f!o!o\\": \\"foo\\", - \\"f'o'o\\": \\"foo\\", - \\"f~o~o\\": \\"foo\\", - \\"f+o+o\\": \\"foo\\", - \\"foo/bar\\": \\"foo\\", - \\"foo\\\\\\\\bar\\": \\"foo\\", - \\"foo/bar/baz\\": \\"foo\\", - \\"foo\\\\\\\\bar\\\\\\\\baz\\": \\"foo\\" -}; -module.exports = exports; +\`, ""]); +// Exports +var _1 = \`__123\`; +export { _1 as "123" }; +export var test = \`__test\`; +export var _test = \`___test\`; +export var className = \`__className\`; +export var someId = \`__someId\`; +export var subClass = \`__subClass\`; +var _2 = \`__-a0-34a___f\`; +export { _2 as "-a0-34a___f" }; +var _3 = \`__m_x_@\`; +export { _3 as "m_x_@" }; +var _4 = \`__B&W?\`; +export { _4 as "B&W?" }; +var _5 = \`__:\\\`(\`; +export { _5 as ":\`(" }; +var _6 = \`__1a2b3c\`; +export { _6 as "1a2b3c" }; +var _7 = \`__#fake-id\`; +export { _7 as "#fake-id" }; +var _8 = \`__-a-b-c-\`; +export { _8 as "-a-b-c-" }; +var _9 = \`__©\`; +export { _9 as "©" }; +var _a = \`__♥\`; +export { _a as "♥" }; +var _b = \`__😍\`; +export { _b as "😍" }; +var _c = \`__“‘’”\`; +export { _c as "“‘’”" }; +var _d = \`__☺☃\`; +export { _d as "☺☃" }; +var _e = \`__⌘⌥\`; +export { _e as "⌘⌥" }; +var _f = \`__𝄞♪♩♫♬\`; +export { _f as "𝄞♪♩♫♬" }; +var _10 = \`__💩\`; +export { _10 as "💩" }; +var _11 = \`__?\`; +export { _11 as "?" }; +var _12 = \`__@\`; +export { _12 as "@" }; +var _13 = \`__.\`; +export { _13 as "." }; +var _14 = \`__:)\`; +export { _14 as ":)" }; +var _15 = \`__

\`; +export { _15 as "

" }; +var _16 = \`__<><<<>><>\`; +export { _16 as "<><<<>><>" }; +var _17 = \`__++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.\`; +export { _17 as "++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>." }; +var _18 = \`__#\`; +export { _18 as "#" }; +var _19 = \`__##\`; +export { _19 as "##" }; +var _1a = \`__#.#.#\`; +export { _1a as "#.#.#" }; +export var _ = \`___\`; +var _1b = \`__{}\`; +export { _1b as "{}" }; +var _1c = \`__foo.bar\`; +export { _1c as "foo.bar" }; +var _1d = \`__:hover\`; +export { _1d as ":hover" }; +var _1e = \`__:hover:focus:active\`; +export { _1e as ":hover:focus:active" }; +var _1f = \`__[attr=value]\`; +export { _1f as "[attr=value]" }; +var _20 = \`__f/o/o\`; +export { _20 as "f/o/o" }; +var _21 = \`__f\\\\o\\\\o\`; +export { _21 as "f\\\\o\\\\o" }; +var _22 = \`__f*o*o\`; +export { _22 as "f*o*o" }; +var _23 = \`__f!o!o\`; +export { _23 as "f!o!o" }; +var _24 = \`__f'o'o\`; +export { _24 as "f'o'o" }; +var _25 = \`__f~o~o\`; +export { _25 as "f~o~o" }; +var _26 = \`__f+o+o\`; +export { _26 as "f+o+o" }; +var _27 = \`__foo/bar\`; +export { _27 as "foo/bar" }; +var _28 = \`__foo\\\\bar\`; +export { _28 as "foo\\\\bar" }; +var _29 = \`__foo/bar/baz\`; +export { _29 as "foo/bar/baz" }; +var _2a = \`__foo\\\\bar\\\\baz\`; +export { _2a as "foo\\\\bar\\\\baz" }; +export default ___CSS_LOADER_EXPORT___; " `; -exports[`"modules" option should work and respect the "getLocalIdent" option: result 1`] = ` -Array [ - Array [ +exports[`"modules" option should should work with two leading underscore: result 1`] = ` +[ + [ "./modules/localIdentName/localIdentName.css", - ".foo { + ".__test { background: red; } -.foo { +.___test { background: blue; } -.foo { +.__className { background: red; } -#foo { +#__someId { background: green; } -.foo .foo { +.__className .__subClass { color: green; } -#foo .foo { +#__someId .__subClass { color: blue; } -.foo { +.__-a0-34a___f { color: red; } -.foo { +.__m_x_\\@ { margin-left: auto !important; margin-right: auto !important; } -.foo { +.__B\\&W\\? { margin-left: auto !important; margin-right: auto !important; } -/* matches elements with class=\\":\`(\\" */ -.foo { +/* matches elements with class=":\`(" */ +.__\\3A \\\`\\( { color: aqua; } -/* matches elements with class=\\"1a2b3c\\" */ -.foo { +/* matches elements with class="1a2b3c" */ +.__\\31 a2b3c { color: aliceblue; } -/* matches the element with id=\\"#fake-id\\" */ -#foo { +/* matches the element with id="#fake-id" */ +#__\\#fake-id { color: antiquewhite; } -/* matches the element with id=\\"-a-b-c-\\" */ -#foo { +/* matches the element with id="-a-b-c-" */ +#__-a-b-c- { color: azure; } -/* matches the element with id=\\"©\\" */ -#foo { +/* matches the element with id="©" */ +#__© { color: black; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } -.foo { background: lime; } - -.foo { +.__♥ { background: lime; } +.__© { background: lime; } +.__😍 { background: lime; } +.__“‘’” { background: lime; } +.__☺☃ { background: lime; } +.__⌘⌥ { background: lime; } +.__𝄞♪♩♫♬ { background: lime; } +.__💩 { background: lime; } +.__\\? { background: lime; } +.__\\@ { background: lime; } +.__\\. { background: lime; } +.__\\3A \\) { background: lime; } +.__\\3A \\\`\\( { background: lime; } +.__\\31 23 { background: lime; } +.__\\31 a2b3c { background: lime; } +.__\\ { background: lime; } +.__\\<\\>\\<\\<\\<\\>\\>\\<\\> { background: lime; } +.__\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\[\\>\\+\\+\\+\\+\\+\\+\\+\\>\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\>\\+\\+\\+\\>\\+\\<\\<\\<\\<\\-\\]\\>\\+\\+\\.\\>\\+\\.\\+\\+\\+\\+\\+\\+\\+\\.\\.\\+\\+\\+\\.\\>\\+\\+\\.\\<\\<\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\.\\>\\.\\+\\+\\+\\.\\-\\-\\-\\-\\-\\-\\.\\-\\-\\-\\-\\-\\-\\-\\-\\.\\>\\+\\.\\>\\. { background: lime; } +.__\\# { background: lime; } +.__\\#\\# { background: lime; } +.__\\#\\.\\#\\.\\# { background: lime; } +.__\\_ { background: lime; } +.__\\{\\} { background: lime; } +.__\\#fake\\-id { background: lime; } +.__foo\\.bar { background: lime; } +.__\\3A hover { background: lime; } +.__\\3A hover\\3A focus\\3A active { background: lime; } +.__\\[attr\\=value\\] { background: lime; } +.__f\\/o\\/o { background: lime; } +.__f\\\\o\\\\o { background: lime; } +.__f\\*o\\*o { background: lime; } +.__f\\!o\\!o { background: lime; } +.__f\\'o\\'o { background: lime; } +.__f\\~o\\~o { background: lime; } +.__f\\+o\\+o { background: lime; } + +.__foo\\/bar { background: hotpink; } -.foo { +.__foo\\\\bar { background: hotpink; } -.foo { +.__foo\\/bar\\/baz { background: hotpink; } -.foo { +.__foo\\\\bar\\\\baz { background: hotpink; } ", @@ -2236,186 +2089,106 @@ Array [ ] `; -exports[`"modules" option should work and respect the "getLocalIdent" option: warnings 1`] = `Array []`; - -exports[`"modules" option should work and respect the "hashPrefix" option: errors 1`] = `Array []`; - -exports[`"modules" option should work and respect the "hashPrefix" option: module 1`] = ` -"// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../../src/runtime/api.js\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -// Module -exports.push([module.id, \\".test--0142b21a44dabb9819108414c865df64 {\\\\n background: red;\\\\n}\\\\n\\\\n._test--cde93c8860a038e1411d22cb771488ac {\\\\n background: blue;\\\\n}\\\\n\\\\n.className--c26790b0ff95d07b06b20d60cf577fd0 {\\\\n background: red;\\\\n}\\\\n\\\\n#someId--8eb7b7f9ce9981fd21fd6d5fc4381bf6 {\\\\n background: green;\\\\n}\\\\n\\\\n.className--c26790b0ff95d07b06b20d60cf577fd0 .subClass--54070e7ec2a737162df117984ecc1761 {\\\\n color: green;\\\\n}\\\\n\\\\n#someId--8eb7b7f9ce9981fd21fd6d5fc4381bf6 .subClass--54070e7ec2a737162df117984ecc1761 {\\\\n color: blue;\\\\n}\\\\n\\\\n.-a0-34a___f--e6b44b8956c576006aee9cdfc7b8d960 {\\\\n color: red;\\\\n}\\\\n\\\\n.m_x_\\\\\\\\@--fbb667cb25a70369de60821c8e36b6fd {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n.B\\\\\\\\&W\\\\\\\\?--f1decb173a621f94b1a405675462d8d2 {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\":\`(\\\\\\" */\\\\n.\\\\\\\\3A \\\\\\\\\`\\\\\\\\(--0cb50f97a33928f08d2935be79b3fb60 {\\\\n color: aqua;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\"1a2b3c\\\\\\" */\\\\n.\\\\\\\\31 a2b3c--4fd20a7ba770527d2b5181e00d5edc42 {\\\\n color: aliceblue;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"#fake-id\\\\\\" */\\\\n#\\\\\\\\#fake-id--f50da82e1d107cda50fa45b135c86822 {\\\\n color: antiquewhite;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"-a-b-c-\\\\\\" */\\\\n#-a-b-c---db03ce70db75ed1c1bce599b1d18a186 {\\\\n color: azure;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"©\\\\\\" */\\\\n#©--7e0826759ac2aeb5fca6e32aa1edb329 {\\\\n color: black;\\\\n}\\\\n\\\\n.♥--e5560e4053337bd76daf9c2e75d3d7d0 { background: lime; }\\\\n.©--7e0826759ac2aeb5fca6e32aa1edb329 { background: lime; }\\\\n.“‘’”--8e1e3e4cc7221b3ff51633038fafe426 { background: lime; }\\\\n.☺☃--ebe5c837d5daf12d16f0daa8c61eb11e { background: lime; }\\\\n.⌘⌥--a85dfad97e5b6b370e7c1477411c7af2 { background: lime; }\\\\n.𝄞♪♩♫♬--4c4549c449045769b60d0b58e8938127 { background: lime; }\\\\n.💩--864ce6a5b06391cf964f32c546bfda16 { background: lime; }\\\\n.\\\\\\\\?--03cb0d319a1c01d96b21cce53cc35bf4 { background: lime; }\\\\n.\\\\\\\\@--dd774107a0c2a338e9f095f7f70b54d7 { background: lime; }\\\\n.\\\\\\\\.--e11fe8c7f53154b0b2d6cc27502a200e { background: lime; }\\\\n.\\\\\\\\3A \\\\\\\\)--a796bbeca4dff990227350b8dd6f9034 { background: lime; }\\\\n.\\\\\\\\3A \\\\\\\\\`\\\\\\\\(--0cb50f97a33928f08d2935be79b3fb60 { background: lime; }\\\\n.\\\\\\\\31 23--87aac6eecc0561fe00a4fab8675db52e { background: lime; }\\\\n.\\\\\\\\31 a2b3c--4fd20a7ba770527d2b5181e00d5edc42 { background: lime; }\\\\n.\\\\\\\\--3477ce97df51423d68db9eb33e056c6b { background: lime; }\\\\n.\\\\\\\\<\\\\\\\\>\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\>\\\\\\\\>\\\\\\\\<\\\\\\\\>--a62ab97a8311b28d0df9758cadb75555 { background: lime; }\\\\n.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\[\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\-\\\\\\\\]\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\<\\\\\\\\<\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\.\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\.--8a18745abe2facd291ae8c5c6ceabbdf { background: lime; }\\\\n.\\\\\\\\#--57d53edb0e5a6757ce6b205b47cc174d { background: lime; }\\\\n.\\\\\\\\#\\\\\\\\#--ed672da0a00b94520ab8a4eb3c786471 { background: lime; }\\\\n.\\\\\\\\#\\\\\\\\.\\\\\\\\#\\\\\\\\.\\\\\\\\#--f686c0028f3b4932cfd2689eae7db8e7 { background: lime; }\\\\n.\\\\\\\\_--709d19d25c02b59c930033d7ebb27bf3 { background: lime; }\\\\n.\\\\\\\\{\\\\\\\\}--03559aa34d08925b7b37b68cbbbab061 { background: lime; }\\\\n.\\\\\\\\#fake\\\\\\\\-id--f50da82e1d107cda50fa45b135c86822 { background: lime; }\\\\n.foo\\\\\\\\.bar--cdeeba651d743a1c9c8726b82a53f3e7 { background: lime; }\\\\n.\\\\\\\\3A hover--eedb9b11365e5f804ae9e9ca4e4a93eb { background: lime; }\\\\n.\\\\\\\\3A hover\\\\\\\\3A focus\\\\\\\\3A active--fd12204dbd7c44f5cdba57e249953c73 { background: lime; }\\\\n.\\\\\\\\[attr\\\\\\\\=value\\\\\\\\]--fedf0fe616433390cc587cefb1e06f3c { background: lime; }\\\\n.f\\\\\\\\/o\\\\\\\\/o--872f3df58491fec851e2d142ef35a3f6 { background: lime; }\\\\n.f\\\\\\\\\\\\\\\\o\\\\\\\\\\\\\\\\o--afacca2cad66f8fa5b5cf8423518de57 { background: lime; }\\\\n.f\\\\\\\\*o\\\\\\\\*o--098250e92a511c126ef033e2590afcf0 { background: lime; }\\\\n.f\\\\\\\\!o\\\\\\\\!o--5f5ea08f8761ed29077cbf1f17dc6b68 { background: lime; }\\\\n.f\\\\\\\\'o\\\\\\\\'o--43951ef60179b3812e63d74831c1e010 { background: lime; }\\\\n.f\\\\\\\\~o\\\\\\\\~o--5f27f8554b923243815e3866b257c4e4 { background: lime; }\\\\n.f\\\\\\\\+o\\\\\\\\+o--61ecc2824b4db3e9cc7e5a2afedce309 { background: lime; }\\\\n\\\\n.foo\\\\\\\\/bar--282fddfcdf932d9d3664c146306a3c3a {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.foo\\\\\\\\\\\\\\\\bar--aec6247bb9290ae6726f5a36f5816c09 {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.foo\\\\\\\\/bar\\\\\\\\/baz--d2a732e8a4a273013b0b929ab95835c2 {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.foo\\\\\\\\\\\\\\\\bar\\\\\\\\\\\\\\\\baz--bc6ce37cc0c680420ee5056f527a94e7 {\\\\n background: hotpink;\\\\n}\\\\n\\", \\"\\"]); -// Exports -exports.locals = { - \\"123\\": \\"123--87aac6eecc0561fe00a4fab8675db52e\\", - \\"test\\": \\"test--0142b21a44dabb9819108414c865df64\\", - \\"_test\\": \\"_test--cde93c8860a038e1411d22cb771488ac\\", - \\"className\\": \\"className--c26790b0ff95d07b06b20d60cf577fd0\\", - \\"someId\\": \\"someId--8eb7b7f9ce9981fd21fd6d5fc4381bf6\\", - \\"subClass\\": \\"subClass--54070e7ec2a737162df117984ecc1761\\", - \\"-a0-34a___f\\": \\"-a0-34a___f--e6b44b8956c576006aee9cdfc7b8d960\\", - \\"m_x_@\\": \\"m_x_@--fbb667cb25a70369de60821c8e36b6fd\\", - \\"B&W?\\": \\"B&W?--f1decb173a621f94b1a405675462d8d2\\", - \\":\`(\\": \\":\`(--0cb50f97a33928f08d2935be79b3fb60\\", - \\"1a2b3c\\": \\"1a2b3c--4fd20a7ba770527d2b5181e00d5edc42\\", - \\"#fake-id\\": \\"#fake-id--f50da82e1d107cda50fa45b135c86822\\", - \\"-a-b-c-\\": \\"-a-b-c---db03ce70db75ed1c1bce599b1d18a186\\", - \\"©\\": \\"©--7e0826759ac2aeb5fca6e32aa1edb329\\", - \\"♥\\": \\"♥--e5560e4053337bd76daf9c2e75d3d7d0\\", - \\"“‘’”\\": \\"“‘’”--8e1e3e4cc7221b3ff51633038fafe426\\", - \\"☺☃\\": \\"☺☃--ebe5c837d5daf12d16f0daa8c61eb11e\\", - \\"⌘⌥\\": \\"⌘⌥--a85dfad97e5b6b370e7c1477411c7af2\\", - \\"𝄞♪♩♫♬\\": \\"𝄞♪♩♫♬--4c4549c449045769b60d0b58e8938127\\", - \\"💩\\": \\"💩--864ce6a5b06391cf964f32c546bfda16\\", - \\"?\\": \\"?--03cb0d319a1c01d96b21cce53cc35bf4\\", - \\"@\\": \\"@--dd774107a0c2a338e9f095f7f70b54d7\\", - \\".\\": \\".--e11fe8c7f53154b0b2d6cc27502a200e\\", - \\":)\\": \\":)--a796bbeca4dff990227350b8dd6f9034\\", - \\"

\\": \\"

--3477ce97df51423d68db9eb33e056c6b\\", - \\"<><<<>><>\\": \\"<><<<>><>--a62ab97a8311b28d0df9758cadb75555\\", - \\"++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.\\": \\"++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.--8a18745abe2facd291ae8c5c6ceabbdf\\", - \\"#\\": \\"#--57d53edb0e5a6757ce6b205b47cc174d\\", - \\"##\\": \\"##--ed672da0a00b94520ab8a4eb3c786471\\", - \\"#.#.#\\": \\"#.#.#--f686c0028f3b4932cfd2689eae7db8e7\\", - \\"_\\": \\"_--709d19d25c02b59c930033d7ebb27bf3\\", - \\"{}\\": \\"{}--03559aa34d08925b7b37b68cbbbab061\\", - \\"foo.bar\\": \\"foo.bar--cdeeba651d743a1c9c8726b82a53f3e7\\", - \\":hover\\": \\":hover--eedb9b11365e5f804ae9e9ca4e4a93eb\\", - \\":hover:focus:active\\": \\":hover:focus:active--fd12204dbd7c44f5cdba57e249953c73\\", - \\"[attr=value]\\": \\"[attr=value]--fedf0fe616433390cc587cefb1e06f3c\\", - \\"f/o/o\\": \\"f/o/o--872f3df58491fec851e2d142ef35a3f6\\", - \\"f\\\\\\\\o\\\\\\\\o\\": \\"f\\\\\\\\o\\\\\\\\o--afacca2cad66f8fa5b5cf8423518de57\\", - \\"f*o*o\\": \\"f*o*o--098250e92a511c126ef033e2590afcf0\\", - \\"f!o!o\\": \\"f!o!o--5f5ea08f8761ed29077cbf1f17dc6b68\\", - \\"f'o'o\\": \\"f'o'o--43951ef60179b3812e63d74831c1e010\\", - \\"f~o~o\\": \\"f~o~o--5f27f8554b923243815e3866b257c4e4\\", - \\"f+o+o\\": \\"f+o+o--61ecc2824b4db3e9cc7e5a2afedce309\\", - \\"foo/bar\\": \\"foo/bar--282fddfcdf932d9d3664c146306a3c3a\\", - \\"foo\\\\\\\\bar\\": \\"foo\\\\\\\\bar--aec6247bb9290ae6726f5a36f5816c09\\", - \\"foo/bar/baz\\": \\"foo/bar/baz--d2a732e8a4a273013b0b929ab95835c2\\", - \\"foo\\\\\\\\bar\\\\\\\\baz\\": \\"foo\\\\\\\\bar\\\\\\\\baz--bc6ce37cc0c680420ee5056f527a94e7\\" -}; -module.exports = exports; -" -`; - -exports[`"modules" option should work and respect the "hashPrefix" option: result 1`] = ` -Array [ - Array [ - "./modules/localIdentName/localIdentName.css", - ".test--0142b21a44dabb9819108414c865df64 { - background: red; -} - -._test--cde93c8860a038e1411d22cb771488ac { - background: blue; -} - -.className--c26790b0ff95d07b06b20d60cf577fd0 { - background: red; -} - -#someId--8eb7b7f9ce9981fd21fd6d5fc4381bf6 { - background: green; -} +exports[`"modules" option should should work with two leading underscore: warnings 1`] = `[]`; -.className--c26790b0ff95d07b06b20d60cf577fd0 .subClass--54070e7ec2a737162df117984ecc1761 { - color: green; -} - -#someId--8eb7b7f9ce9981fd21fd6d5fc4381bf6 .subClass--54070e7ec2a737162df117984ecc1761 { - color: blue; -} +exports[`"modules" option should support resolving in composes preprocessor files with extensions: errors 1`] = `[]`; -.-a0-34a___f--e6b44b8956c576006aee9cdfc7b8d960 { - color: red; +exports[`"modules" option should support resolving in composes preprocessor files with extensions: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../../src/runtime/api.js"; +import ___CSS_LOADER_ICSS_IMPORT_0___, * as ___CSS_LOADER_ICSS_IMPORT_0____NAMED___ from "-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./values.css"; +import ___CSS_LOADER_ICSS_IMPORT_1___, * as ___CSS_LOADER_ICSS_IMPORT_1____NAMED___ from "-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./less-file.less"; +import ___CSS_LOADER_ICSS_IMPORT_2___, * as ___CSS_LOADER_ICSS_IMPORT_2____NAMED___ from "-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./scss-file.scss"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, "", true); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_1___, "", true); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_2___, "", true); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`.globalClassName { + color: orange; } -.m_x_\\\\@--fbb667cb25a70369de60821c8e36b6fd { - margin-left: auto !important; - margin-right: auto !important; +.jfnINdjNmjmNE30hJhM2 { + color: \${ ___CSS_LOADER_ICSS_IMPORT_0____NAMED___["v-def"] }; } -.B\\\\&W\\\\?--f1decb173a621f94b1a405675462d8d2 { - margin-left: auto !important; - margin-right: auto !important; +.UIbsE5LKj9LULxJh5lui { + color: \${ ___CSS_LOADER_ICSS_IMPORT_1____NAMED___["v-foo"] }; } -/* matches elements with class=\\":\`(\\" */ -.\\\\3A \\\\\`\\\\(--0cb50f97a33928f08d2935be79b3fb60 { - color: aqua; +.IhDiFbofjUNbC6vdWN9Z { + color: \${ ___CSS_LOADER_ICSS_IMPORT_2____NAMED___["v-bar"] }; } -/* matches elements with class=\\"1a2b3c\\" */ -.\\\\31 a2b3c--4fd20a7ba770527d2b5181e00d5edc42 { - color: aliceblue; +.vtrwouBgSegFPwkaXOt_ { + background: #000; } +\`, ""]); +// Exports +var _1 = \`\${___CSS_LOADER_ICSS_IMPORT_0____NAMED___["v-def"]}\`; +export { _1 as "v-def" }; +var _2 = \`\${___CSS_LOADER_ICSS_IMPORT_1____NAMED___["v-foo"]}\`; +export { _2 as "v-foo" }; +var _3 = \`\${___CSS_LOADER_ICSS_IMPORT_2____NAMED___["v-bar"]}\`; +export { _3 as "v-bar" }; +export var globalClassName = \`globalClassName\`; +export var ghi = \`jfnINdjNmjmNE30hJhM2\`; +var _4 = \`UIbsE5LKj9LULxJh5lui \${___CSS_LOADER_ICSS_IMPORT_1____NAMED___["lessClass"]}\`; +export { _4 as "class" }; +export var other = \`IhDiFbofjUNbC6vdWN9Z \${___CSS_LOADER_ICSS_IMPORT_2____NAMED___["scssClass"]}\`; +export var otherClassName = \`vtrwouBgSegFPwkaXOt_ globalClassName\`; +export default ___CSS_LOADER_EXPORT___; +" +`; -/* matches the element with id=\\"#fake-id\\" */ -#\\\\#fake-id--f50da82e1d107cda50fa45b135c86822 { - color: antiquewhite; +exports[`"modules" option should support resolving in composes preprocessor files with extensions: result 1`] = ` +[ + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./modules/composes/values.css", + " +", + "", + ], + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./modules/composes/less-file.less", + ".t5MH7YkQgNxGoiYDjLHG { + padding: 5px; } +", + "", + ], + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./modules/composes/scss-file.scss", + "$color: red; -/* matches the element with id=\\"-a-b-c-\\" */ -#-a-b-c---db03ce70db75ed1c1bce599b1d18a186 { - color: azure; +.oNU7JF6MtPAFrlrthaOD { + color: $color; + padding: 15px; } - -/* matches the element with id=\\"©\\" */ -#©--7e0826759ac2aeb5fca6e32aa1edb329 { - color: black; +", + "", + ], + [ + "./modules/composes/composes-preprocessors.css", + ".globalClassName { + color: orange; } -.♥--e5560e4053337bd76daf9c2e75d3d7d0 { background: lime; } -.©--7e0826759ac2aeb5fca6e32aa1edb329 { background: lime; } -.“‘’”--8e1e3e4cc7221b3ff51633038fafe426 { background: lime; } -.☺☃--ebe5c837d5daf12d16f0daa8c61eb11e { background: lime; } -.⌘⌥--a85dfad97e5b6b370e7c1477411c7af2 { background: lime; } -.𝄞♪♩♫♬--4c4549c449045769b60d0b58e8938127 { background: lime; } -.💩--864ce6a5b06391cf964f32c546bfda16 { background: lime; } -.\\\\?--03cb0d319a1c01d96b21cce53cc35bf4 { background: lime; } -.\\\\@--dd774107a0c2a338e9f095f7f70b54d7 { background: lime; } -.\\\\.--e11fe8c7f53154b0b2d6cc27502a200e { background: lime; } -.\\\\3A \\\\)--a796bbeca4dff990227350b8dd6f9034 { background: lime; } -.\\\\3A \\\\\`\\\\(--0cb50f97a33928f08d2935be79b3fb60 { background: lime; } -.\\\\31 23--87aac6eecc0561fe00a4fab8675db52e { background: lime; } -.\\\\31 a2b3c--4fd20a7ba770527d2b5181e00d5edc42 { background: lime; } -.\\\\--3477ce97df51423d68db9eb33e056c6b { background: lime; } -.\\\\<\\\\>\\\\<\\\\<\\\\<\\\\>\\\\>\\\\<\\\\>--a62ab97a8311b28d0df9758cadb75555 { background: lime; } -.\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\[\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\>\\\\+\\\\<\\\\<\\\\<\\\\<\\\\-\\\\]\\\\>\\\\+\\\\+\\\\.\\\\>\\\\+\\\\.\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\.\\\\+\\\\+\\\\+\\\\.\\\\>\\\\+\\\\+\\\\.\\\\<\\\\<\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\>\\\\.\\\\+\\\\+\\\\+\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\>\\\\+\\\\.\\\\>\\\\.--8a18745abe2facd291ae8c5c6ceabbdf { background: lime; } -.\\\\#--57d53edb0e5a6757ce6b205b47cc174d { background: lime; } -.\\\\#\\\\#--ed672da0a00b94520ab8a4eb3c786471 { background: lime; } -.\\\\#\\\\.\\\\#\\\\.\\\\#--f686c0028f3b4932cfd2689eae7db8e7 { background: lime; } -.\\\\_--709d19d25c02b59c930033d7ebb27bf3 { background: lime; } -.\\\\{\\\\}--03559aa34d08925b7b37b68cbbbab061 { background: lime; } -.\\\\#fake\\\\-id--f50da82e1d107cda50fa45b135c86822 { background: lime; } -.foo\\\\.bar--cdeeba651d743a1c9c8726b82a53f3e7 { background: lime; } -.\\\\3A hover--eedb9b11365e5f804ae9e9ca4e4a93eb { background: lime; } -.\\\\3A hover\\\\3A focus\\\\3A active--fd12204dbd7c44f5cdba57e249953c73 { background: lime; } -.\\\\[attr\\\\=value\\\\]--fedf0fe616433390cc587cefb1e06f3c { background: lime; } -.f\\\\/o\\\\/o--872f3df58491fec851e2d142ef35a3f6 { background: lime; } -.f\\\\\\\\o\\\\\\\\o--afacca2cad66f8fa5b5cf8423518de57 { background: lime; } -.f\\\\*o\\\\*o--098250e92a511c126ef033e2590afcf0 { background: lime; } -.f\\\\!o\\\\!o--5f5ea08f8761ed29077cbf1f17dc6b68 { background: lime; } -.f\\\\'o\\\\'o--43951ef60179b3812e63d74831c1e010 { background: lime; } -.f\\\\~o\\\\~o--5f27f8554b923243815e3866b257c4e4 { background: lime; } -.f\\\\+o\\\\+o--61ecc2824b4db3e9cc7e5a2afedce309 { background: lime; } - -.foo\\\\/bar--282fddfcdf932d9d3664c146306a3c3a { - background: hotpink; +.jfnINdjNmjmNE30hJhM2 { + color: red; } -.foo\\\\\\\\bar--aec6247bb9290ae6726f5a36f5816c09 { - background: hotpink; +.UIbsE5LKj9LULxJh5lui { + color: green; } -.foo\\\\/bar\\\\/baz--d2a732e8a4a273013b0b929ab95835c2 { - background: hotpink; +.IhDiFbofjUNbC6vdWN9Z { + color: white; } -.foo\\\\\\\\bar\\\\\\\\baz--bc6ce37cc0c680420ee5056f527a94e7 { - background: hotpink; +.vtrwouBgSegFPwkaXOt_ { + background: #000; } ", "", @@ -2423,454 +2196,433 @@ Array [ ] `; -exports[`"modules" option should work and respect the "hashPrefix" option: warnings 1`] = `Array []`; +exports[`"modules" option should support resolving in composes preprocessor files with extensions: warnings 1`] = `[]`; -exports[`"modules" option should work and respect the "localIdentName" option: errors 1`] = `Array []`; +exports[`"modules" option should support resolving in composes: errors 1`] = `[]`; -exports[`"modules" option should work and respect the "localIdentName" option: module 1`] = ` +exports[`"modules" option should support resolving in composes: module 1`] = ` "// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../../src/runtime/api.js\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -// Module -exports.push([module.id, \\".localIdentName--test--3bArY {\\\\n background: red;\\\\n}\\\\n\\\\n.localIdentName--_test--XTGsN {\\\\n background: blue;\\\\n}\\\\n\\\\n.localIdentName--className--2ilfW {\\\\n background: red;\\\\n}\\\\n\\\\n#localIdentName--someId--3v-9L {\\\\n background: green;\\\\n}\\\\n\\\\n.localIdentName--className--2ilfW .localIdentName--subClass--3DLY7 {\\\\n color: green;\\\\n}\\\\n\\\\n#localIdentName--someId--3v-9L .localIdentName--subClass--3DLY7 {\\\\n color: blue;\\\\n}\\\\n\\\\n.localIdentName---a0-34a___f--2skz9 {\\\\n color: red;\\\\n}\\\\n\\\\n.localIdentName--m_x_\\\\\\\\@--1pEJL {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n.localIdentName--B\\\\\\\\&W\\\\\\\\?--36Mz6 {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\":\`(\\\\\\" */\\\\n.localIdentName--\\\\\\\\3A \\\\\\\\\`\\\\\\\\(--3smFt {\\\\n color: aqua;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\"1a2b3c\\\\\\" */\\\\n.localIdentName--\\\\\\\\31 a2b3c--3nWh_ {\\\\n color: aliceblue;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"#fake-id\\\\\\" */\\\\n#localIdentName--\\\\\\\\#fake-id--3zyOT {\\\\n color: antiquewhite;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"-a-b-c-\\\\\\" */\\\\n#localIdentName---a-b-c---SXlBp {\\\\n color: azure;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"©\\\\\\" */\\\\n#localIdentName--©--3wIdK {\\\\n color: black;\\\\n}\\\\n\\\\n.localIdentName--♥--3CvZA { background: lime; }\\\\n.localIdentName--©--3wIdK { background: lime; }\\\\n.localIdentName--“‘’”--1lLtT { background: lime; }\\\\n.localIdentName--☺☃--129OO { background: lime; }\\\\n.localIdentName--⌘⌥--31l8- { background: lime; }\\\\n.localIdentName--𝄞♪♩♫♬--3PTmP { background: lime; }\\\\n.localIdentName--💩--3iDx9 { background: lime; }\\\\n.localIdentName--\\\\\\\\?--gjylL { background: lime; }\\\\n.localIdentName--\\\\\\\\@--t5XxN { background: lime; }\\\\n.localIdentName--\\\\\\\\.--fEcdI { background: lime; }\\\\n.localIdentName--\\\\\\\\3A \\\\\\\\)--3JwMk { background: lime; }\\\\n.localIdentName--\\\\\\\\3A \\\\\\\\\`\\\\\\\\(--3smFt { background: lime; }\\\\n.localIdentName--\\\\\\\\31 23--30YAJ { background: lime; }\\\\n.localIdentName--\\\\\\\\31 a2b3c--3nWh_ { background: lime; }\\\\n.localIdentName--\\\\\\\\--juMfC { background: lime; }\\\\n.localIdentName--\\\\\\\\<\\\\\\\\>\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\>\\\\\\\\>\\\\\\\\<\\\\\\\\>--1nZHf { background: lime; }\\\\n.localIdentName--\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\[\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\-\\\\\\\\]\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\<\\\\\\\\<\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\.\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\.--3tH-J { background: lime; }\\\\n.localIdentName--\\\\\\\\#--1d4pW { background: lime; }\\\\n.localIdentName--\\\\\\\\#\\\\\\\\#--1yrD9 { background: lime; }\\\\n.localIdentName--\\\\\\\\#\\\\\\\\.\\\\\\\\#\\\\\\\\.\\\\\\\\#--181tN { background: lime; }\\\\n.localIdentName--\\\\\\\\_--3XX_E { background: lime; }\\\\n.localIdentName--\\\\\\\\{\\\\\\\\}--1okIt { background: lime; }\\\\n.localIdentName--\\\\\\\\#fake\\\\\\\\-id--3zyOT { background: lime; }\\\\n.localIdentName--foo\\\\\\\\.bar--D1UTM { background: lime; }\\\\n.localIdentName--\\\\\\\\3A hover--1VdiV { background: lime; }\\\\n.localIdentName--\\\\\\\\3A hover\\\\\\\\3A focus\\\\\\\\3A active--3bwG4 { background: lime; }\\\\n.localIdentName--\\\\\\\\[attr\\\\\\\\=value\\\\\\\\]--2dg-h { background: lime; }\\\\n.localIdentName--f\\\\\\\\/o\\\\\\\\/o--3MAXc { background: lime; }\\\\n.localIdentName--f\\\\\\\\\\\\\\\\o\\\\\\\\\\\\\\\\o--S0VDf { background: lime; }\\\\n.localIdentName--f\\\\\\\\*o\\\\\\\\*o--1Dj0P { background: lime; }\\\\n.localIdentName--f\\\\\\\\!o\\\\\\\\!o--3SZwC { background: lime; }\\\\n.localIdentName--f\\\\\\\\'o\\\\\\\\'o--mapSs { background: lime; }\\\\n.localIdentName--f\\\\\\\\~o\\\\\\\\~o--10Kpk { background: lime; }\\\\n.localIdentName--f\\\\\\\\+o\\\\\\\\+o--3t38e { background: lime; }\\\\n\\\\n.localIdentName--foo\\\\\\\\/bar--37a0Q {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.localIdentName--foo\\\\\\\\\\\\\\\\bar--2hUYl {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.localIdentName--foo\\\\\\\\/bar\\\\\\\\/baz--1Grpv {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.localIdentName--foo\\\\\\\\\\\\\\\\bar\\\\\\\\\\\\\\\\baz--2iqkF {\\\\n background: hotpink;\\\\n}\\\\n\\", \\"\\"]); -// Exports -exports.locals = { - \\"123\\": \\"localIdentName--123--30YAJ\\", - \\"test\\": \\"localIdentName--test--3bArY\\", - \\"_test\\": \\"localIdentName--_test--XTGsN\\", - \\"className\\": \\"localIdentName--className--2ilfW\\", - \\"someId\\": \\"localIdentName--someId--3v-9L\\", - \\"subClass\\": \\"localIdentName--subClass--3DLY7\\", - \\"-a0-34a___f\\": \\"localIdentName---a0-34a___f--2skz9\\", - \\"m_x_@\\": \\"localIdentName--m_x_@--1pEJL\\", - \\"B&W?\\": \\"localIdentName--B&W?--36Mz6\\", - \\":\`(\\": \\"localIdentName--:\`(--3smFt\\", - \\"1a2b3c\\": \\"localIdentName--1a2b3c--3nWh_\\", - \\"#fake-id\\": \\"localIdentName--#fake-id--3zyOT\\", - \\"-a-b-c-\\": \\"localIdentName---a-b-c---SXlBp\\", - \\"©\\": \\"localIdentName--©--3wIdK\\", - \\"♥\\": \\"localIdentName--♥--3CvZA\\", - \\"“‘’”\\": \\"localIdentName--“‘’”--1lLtT\\", - \\"☺☃\\": \\"localIdentName--☺☃--129OO\\", - \\"⌘⌥\\": \\"localIdentName--⌘⌥--31l8-\\", - \\"𝄞♪♩♫♬\\": \\"localIdentName--𝄞♪♩♫♬--3PTmP\\", - \\"💩\\": \\"localIdentName--💩--3iDx9\\", - \\"?\\": \\"localIdentName--?--gjylL\\", - \\"@\\": \\"localIdentName--@--t5XxN\\", - \\".\\": \\"localIdentName--.--fEcdI\\", - \\":)\\": \\"localIdentName--:)--3JwMk\\", - \\"

\\": \\"localIdentName--

--juMfC\\", - \\"<><<<>><>\\": \\"localIdentName--<><<<>><>--1nZHf\\", - \\"++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.\\": \\"localIdentName--++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.--3tH-J\\", - \\"#\\": \\"localIdentName--#--1d4pW\\", - \\"##\\": \\"localIdentName--##--1yrD9\\", - \\"#.#.#\\": \\"localIdentName--#.#.#--181tN\\", - \\"_\\": \\"localIdentName--_--3XX_E\\", - \\"{}\\": \\"localIdentName--{}--1okIt\\", - \\"foo.bar\\": \\"localIdentName--foo.bar--D1UTM\\", - \\":hover\\": \\"localIdentName--:hover--1VdiV\\", - \\":hover:focus:active\\": \\"localIdentName--:hover:focus:active--3bwG4\\", - \\"[attr=value]\\": \\"localIdentName--[attr=value]--2dg-h\\", - \\"f/o/o\\": \\"localIdentName--f/o/o--3MAXc\\", - \\"f\\\\\\\\o\\\\\\\\o\\": \\"localIdentName--f\\\\\\\\o\\\\\\\\o--S0VDf\\", - \\"f*o*o\\": \\"localIdentName--f*o*o--1Dj0P\\", - \\"f!o!o\\": \\"localIdentName--f!o!o--3SZwC\\", - \\"f'o'o\\": \\"localIdentName--f'o'o--mapSs\\", - \\"f~o~o\\": \\"localIdentName--f~o~o--10Kpk\\", - \\"f+o+o\\": \\"localIdentName--f+o+o--3t38e\\", - \\"foo/bar\\": \\"localIdentName--foo/bar--37a0Q\\", - \\"foo\\\\\\\\bar\\": \\"localIdentName--foo\\\\\\\\bar--2hUYl\\", - \\"foo/bar/baz\\": \\"localIdentName--foo/bar/baz--1Grpv\\", - \\"foo\\\\\\\\bar\\\\\\\\baz\\": \\"localIdentName--foo\\\\\\\\bar\\\\\\\\baz--2iqkF\\" -}; -module.exports = exports; -" -`; - -exports[`"modules" option should work and respect the "localIdentName" option: result 1`] = ` -Array [ - Array [ - "./modules/localIdentName/localIdentName.css", - ".localIdentName--test--3bArY { - background: red; +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../../src/runtime/api.js"; +import ___CSS_LOADER_ICSS_IMPORT_0___, * as ___CSS_LOADER_ICSS_IMPORT_0____NAMED___ from "-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./values.css"; +import ___CSS_LOADER_ICSS_IMPORT_1___, * as ___CSS_LOADER_ICSS_IMPORT_1____NAMED___ from "-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./something.css"; +import ___CSS_LOADER_ICSS_IMPORT_2___, * as ___CSS_LOADER_ICSS_IMPORT_2____NAMED___ from "-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./imported-simple.css"; +import ___CSS_LOADER_ICSS_IMPORT_3___, * as ___CSS_LOADER_ICSS_IMPORT_3____NAMED___ from "-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./relative.css"; +import ___CSS_LOADER_ICSS_IMPORT_4___, * as ___CSS_LOADER_ICSS_IMPORT_4____NAMED___ from "-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./top-relative.css"; +import ___CSS_LOADER_ICSS_IMPORT_5___, * as ___CSS_LOADER_ICSS_IMPORT_5____NAMED___ from "-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!../issue-861/node_modules/package/style.css"; +import ___CSS_LOADER_ICSS_IMPORT_6___, * as ___CSS_LOADER_ICSS_IMPORT_6____NAMED___ from "-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./alias.css"; +import ___CSS_LOADER_ICSS_IMPORT_7___, * as ___CSS_LOADER_ICSS_IMPORT_7____NAMED___ from "-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!sass-loader!./scss-file.scss"; +import ___CSS_LOADER_AT_RULE_IMPORT_0___ from "-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./test-other.css"; +import ___CSS_LOADER_GET_URL_IMPORT___ from "../../../../src/runtime/getUrl.js"; +var ___CSS_LOADER_URL_IMPORT_0___ = new URL("../../url/img.png", import.meta.url); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, "(min-width: 100px)"); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, "", true); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_1___, "", true); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_2___, "", true); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_3___, "", true); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_4___, "", true); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_5___, "", true); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_6___, "", true); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_7___, "", true); +var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`.ozGmfTedr1GnFJDWqNUH { + color: \${ ___CSS_LOADER_ICSS_IMPORT_0____NAMED___["v-def"] }; } -.localIdentName--_test--XTGsN { - background: blue; +.zchqshjqLbPAHaRvIBET { + color: blue; } -.localIdentName--className--2ilfW { - background: red; +.WZBxXqS2GytaA3IBhhnd { + display: block; } -#localIdentName--someId--3v-9L { - background: green; +.W51zcAMuJMsNFi1CXgWr { + width: \${ ___CSS_LOADER_ICSS_IMPORT_1____NAMED___["v-something"] }; } -.localIdentName--className--2ilfW .localIdentName--subClass--3DLY7 { - color: green; +.KEl5ZxzNkpjfWorrBglC { + color: \${ ___CSS_LOADER_ICSS_IMPORT_0____NAMED___["v-other"] }; } -#localIdentName--someId--3v-9L .localIdentName--subClass--3DLY7 { - color: blue; +.ecAEWh2vww9pNEdyj9Jn { + prop: \${ ___CSS_LOADER_ICSS_IMPORT_0____NAMED___["v-def"] }; + duplicate: \${ ___CSS_LOADER_ICSS_IMPORT_0____NAMED___["v-other"] }; } -.localIdentName---a0-34a___f--2skz9 { +.CBlowYk8qiAgWWzFeXRA { color: red; } -.localIdentName--m_x_\\\\@--1pEJL { - margin-left: auto !important; - margin-right: auto !important; +.c_NHnDcX1bd_kuxgsuYi { + color: yellow; } -.localIdentName--B\\\\&W\\\\?--36Mz6 { - margin-left: auto !important; - margin-right: auto !important; +.S0Kwou8pVmsENtBP3hYm { + color: gray; } -/* matches elements with class=\\":\`(\\" */ -.localIdentName--\\\\3A \\\\\`\\\\(--3smFt { - color: aqua; +.rq663Pq_zV0CjpwttvK4 { + color: gray; } -/* matches elements with class=\\"1a2b3c\\" */ -.localIdentName--\\\\31 a2b3c--3nWh_ { - color: aliceblue; +.fadRMHArJofp7sWEbPVR { + color: gainsboro; } -/* matches the element with id=\\"#fake-id\\" */ -#localIdentName--\\\\#fake-id--3zyOT { - color: antiquewhite; +.sg1HlXqlWy6l6_Wm5iA7 { + color: gainsboro; } -/* matches the element with id=\\"-a-b-c-\\" */ -#localIdentName---a-b-c---SXlBp { - color: azure; +.bnRUswvicYag6u0SPnvI { + color: #BF4040; } -/* matches the element with id=\\"©\\" */ -#localIdentName--©--3wIdK { +.kEJRwpukB2OtmkGTknbU { color: black; } -.localIdentName--♥--3CvZA { background: lime; } -.localIdentName--©--3wIdK { background: lime; } -.localIdentName--“‘’”--1lLtT { background: lime; } -.localIdentName--☺☃--129OO { background: lime; } -.localIdentName--⌘⌥--31l8- { background: lime; } -.localIdentName--𝄞♪♩♫♬--3PTmP { background: lime; } -.localIdentName--💩--3iDx9 { background: lime; } -.localIdentName--\\\\?--gjylL { background: lime; } -.localIdentName--\\\\@--t5XxN { background: lime; } -.localIdentName--\\\\.--fEcdI { background: lime; } -.localIdentName--\\\\3A \\\\)--3JwMk { background: lime; } -.localIdentName--\\\\3A \\\\\`\\\\(--3smFt { background: lime; } -.localIdentName--\\\\31 23--30YAJ { background: lime; } -.localIdentName--\\\\31 a2b3c--3nWh_ { background: lime; } -.localIdentName--\\\\--juMfC { background: lime; } -.localIdentName--\\\\<\\\\>\\\\<\\\\<\\\\<\\\\>\\\\>\\\\<\\\\>--1nZHf { background: lime; } -.localIdentName--\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\[\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\>\\\\+\\\\<\\\\<\\\\<\\\\<\\\\-\\\\]\\\\>\\\\+\\\\+\\\\.\\\\>\\\\+\\\\.\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\.\\\\+\\\\+\\\\+\\\\.\\\\>\\\\+\\\\+\\\\.\\\\<\\\\<\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\>\\\\.\\\\+\\\\+\\\\+\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\>\\\\+\\\\.\\\\>\\\\.--3tH-J { background: lime; } -.localIdentName--\\\\#--1d4pW { background: lime; } -.localIdentName--\\\\#\\\\#--1yrD9 { background: lime; } -.localIdentName--\\\\#\\\\.\\\\#\\\\.\\\\#--181tN { background: lime; } -.localIdentName--\\\\_--3XX_E { background: lime; } -.localIdentName--\\\\{\\\\}--1okIt { background: lime; } -.localIdentName--\\\\#fake\\\\-id--3zyOT { background: lime; } -.localIdentName--foo\\\\.bar--D1UTM { background: lime; } -.localIdentName--\\\\3A hover--1VdiV { background: lime; } -.localIdentName--\\\\3A hover\\\\3A focus\\\\3A active--3bwG4 { background: lime; } -.localIdentName--\\\\[attr\\\\=value\\\\]--2dg-h { background: lime; } -.localIdentName--f\\\\/o\\\\/o--3MAXc { background: lime; } -.localIdentName--f\\\\\\\\o\\\\\\\\o--S0VDf { background: lime; } -.localIdentName--f\\\\*o\\\\*o--1Dj0P { background: lime; } -.localIdentName--f\\\\!o\\\\!o--3SZwC { background: lime; } -.localIdentName--f\\\\'o\\\\'o--mapSs { background: lime; } -.localIdentName--f\\\\~o\\\\~o--10Kpk { background: lime; } -.localIdentName--f\\\\+o\\\\+o--3t38e { background: lime; } +@media (min-width: 960px) { + .hY2PI5vC9ABuJY1nkWnf { + padding: 0 20px; + } +} -.localIdentName--foo\\\\/bar--37a0Q { - background: hotpink; +.\${ ___CSS_LOADER_ICSS_IMPORT_0____NAMED___["s-white"] } { + color: white; } -.localIdentName--foo\\\\\\\\bar--2hUYl { - background: hotpink; +@media \${ ___CSS_LOADER_ICSS_IMPORT_0____NAMED___["m-small"] } { + .hY2PI5vC9ABuJY1nkWnf { + padding: 20px 20px; + } } -.localIdentName--foo\\\\/bar\\\\/baz--1Grpv { - background: hotpink; +.q8mv0HutzqdsVWjl8mAz { + v-ident: validIdent; + v-pre-defined-ident: left; + v-string: 'content'; + v-string-1: ''; + v-url: url(https://www.exammple.com/images/my-background.png); + v-url-1: url('https://www.exammple.com/images/my-background.png'); + v-url-2: url("https://www.exammple.com/images/my-background.png"); + v-integer: 100; + v-integer-1: -100; + v-integer-2: +100; + v-number: .60; + v-number-1: -456.8; + v-number-2: -3.4e-2; + v-dimension: 12px; + v-percentage: 100%; + v-hex: #fff; + v-comment: /* comment */ 10px /* comment */; + v-function: rgb(0,0,0); + v-unicode-range: U+0025-00FF; + mutliple: #fff .60 100%; } -.localIdentName--foo\\\\\\\\bar\\\\\\\\baz--2iqkF { - background: hotpink; + +a { + content: 'content'; } -", - "", - ], -] -`; -exports[`"modules" option should work and respect the "localIdentName" option: warnings 1`] = `Array []`; +@supports (content: 'content') { + a { + content: 'content'; + } +} -exports[`"modules" option should work and respect the "path" placeholder: errors 1`] = `Array []`; +[class~='content'] { + color:green; +} -exports[`"modules" option should work and respect the "path" placeholder: module 1`] = ` -"// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../../src/runtime/api.js\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -// Module -exports.push([module.id, \\".fixtures-modules-localIdentName-localIdentName__test {\\\\n background: red;\\\\n}\\\\n\\\\n.fixtures-modules-localIdentName-localIdentName___test {\\\\n background: blue;\\\\n}\\\\n\\\\n.fixtures-modules-localIdentName-localIdentName__className {\\\\n background: red;\\\\n}\\\\n\\\\n#fixtures-modules-localIdentName-localIdentName__someId {\\\\n background: green;\\\\n}\\\\n\\\\n.fixtures-modules-localIdentName-localIdentName__className .fixtures-modules-localIdentName-localIdentName__subClass {\\\\n color: green;\\\\n}\\\\n\\\\n#fixtures-modules-localIdentName-localIdentName__someId .fixtures-modules-localIdentName-localIdentName__subClass {\\\\n color: blue;\\\\n}\\\\n\\\\n.fixtures-modules-localIdentName-localIdentName__-a0-34a___f {\\\\n color: red;\\\\n}\\\\n\\\\n.fixtures-modules-localIdentName-localIdentName__m_x_\\\\\\\\@ {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n.fixtures-modules-localIdentName-localIdentName__B\\\\\\\\&W\\\\\\\\? {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\":\`(\\\\\\" */\\\\n.fixtures-modules-localIdentName-localIdentName__\\\\\\\\3A \\\\\\\\\`\\\\\\\\( {\\\\n color: aqua;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\"1a2b3c\\\\\\" */\\\\n.fixtures-modules-localIdentName-localIdentName__\\\\\\\\31 a2b3c {\\\\n color: aliceblue;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"#fake-id\\\\\\" */\\\\n#fixtures-modules-localIdentName-localIdentName__\\\\\\\\#fake-id {\\\\n color: antiquewhite;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"-a-b-c-\\\\\\" */\\\\n#fixtures-modules-localIdentName-localIdentName__-a-b-c- {\\\\n color: azure;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"©\\\\\\" */\\\\n#fixtures-modules-localIdentName-localIdentName__© {\\\\n color: black;\\\\n}\\\\n\\\\n.fixtures-modules-localIdentName-localIdentName__♥ { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__© { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__“‘’” { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__☺☃ { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__⌘⌥ { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__𝄞♪♩♫♬ { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__💩 { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__\\\\\\\\? { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__\\\\\\\\@ { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__\\\\\\\\. { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__\\\\\\\\3A \\\\\\\\) { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__\\\\\\\\3A \\\\\\\\\`\\\\\\\\( { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__\\\\\\\\31 23 { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__\\\\\\\\31 a2b3c { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__\\\\\\\\ { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__\\\\\\\\<\\\\\\\\>\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\>\\\\\\\\>\\\\\\\\<\\\\\\\\> { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\[\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\-\\\\\\\\]\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\<\\\\\\\\<\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\.\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\. { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__\\\\\\\\# { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__\\\\\\\\#\\\\\\\\# { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__\\\\\\\\#\\\\\\\\.\\\\\\\\#\\\\\\\\.\\\\\\\\# { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__\\\\\\\\_ { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__\\\\\\\\{\\\\\\\\} { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__\\\\\\\\#fake\\\\\\\\-id { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__foo\\\\\\\\.bar { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__\\\\\\\\3A hover { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__\\\\\\\\3A hover\\\\\\\\3A focus\\\\\\\\3A active { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__\\\\\\\\[attr\\\\\\\\=value\\\\\\\\] { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__f\\\\\\\\/o\\\\\\\\/o { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__f\\\\\\\\\\\\\\\\o\\\\\\\\\\\\\\\\o { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__f\\\\\\\\*o\\\\\\\\*o { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__f\\\\\\\\!o\\\\\\\\!o { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__f\\\\\\\\'o\\\\\\\\'o { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__f\\\\\\\\~o\\\\\\\\~o { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__f\\\\\\\\+o\\\\\\\\+o { background: lime; }\\\\n\\\\n.fixtures-modules-localIdentName-localIdentName__foo\\\\\\\\/bar {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.fixtures-modules-localIdentName-localIdentName__foo\\\\\\\\\\\\\\\\bar {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.fixtures-modules-localIdentName-localIdentName__foo\\\\\\\\/bar\\\\\\\\/baz {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.fixtures-modules-localIdentName-localIdentName__foo\\\\\\\\\\\\\\\\bar\\\\\\\\\\\\\\\\baz {\\\\n background: hotpink;\\\\n}\\\\n\\", \\"\\"]); -// Exports -exports.locals = { - \\"123\\": \\"fixtures-modules-localIdentName-localIdentName__123\\", - \\"test\\": \\"fixtures-modules-localIdentName-localIdentName__test\\", - \\"_test\\": \\"fixtures-modules-localIdentName-localIdentName___test\\", - \\"className\\": \\"fixtures-modules-localIdentName-localIdentName__className\\", - \\"someId\\": \\"fixtures-modules-localIdentName-localIdentName__someId\\", - \\"subClass\\": \\"fixtures-modules-localIdentName-localIdentName__subClass\\", - \\"-a0-34a___f\\": \\"fixtures-modules-localIdentName-localIdentName__-a0-34a___f\\", - \\"m_x_@\\": \\"fixtures-modules-localIdentName-localIdentName__m_x_@\\", - \\"B&W?\\": \\"fixtures-modules-localIdentName-localIdentName__B&W?\\", - \\":\`(\\": \\"fixtures-modules-localIdentName-localIdentName__:\`(\\", - \\"1a2b3c\\": \\"fixtures-modules-localIdentName-localIdentName__1a2b3c\\", - \\"#fake-id\\": \\"fixtures-modules-localIdentName-localIdentName__#fake-id\\", - \\"-a-b-c-\\": \\"fixtures-modules-localIdentName-localIdentName__-a-b-c-\\", - \\"©\\": \\"fixtures-modules-localIdentName-localIdentName__©\\", - \\"♥\\": \\"fixtures-modules-localIdentName-localIdentName__♥\\", - \\"“‘’”\\": \\"fixtures-modules-localIdentName-localIdentName__“‘’”\\", - \\"☺☃\\": \\"fixtures-modules-localIdentName-localIdentName__☺☃\\", - \\"⌘⌥\\": \\"fixtures-modules-localIdentName-localIdentName__⌘⌥\\", - \\"𝄞♪♩♫♬\\": \\"fixtures-modules-localIdentName-localIdentName__𝄞♪♩♫♬\\", - \\"💩\\": \\"fixtures-modules-localIdentName-localIdentName__💩\\", - \\"?\\": \\"fixtures-modules-localIdentName-localIdentName__?\\", - \\"@\\": \\"fixtures-modules-localIdentName-localIdentName__@\\", - \\".\\": \\"fixtures-modules-localIdentName-localIdentName__.\\", - \\":)\\": \\"fixtures-modules-localIdentName-localIdentName__:)\\", - \\"

\\": \\"fixtures-modules-localIdentName-localIdentName__

\\", - \\"<><<<>><>\\": \\"fixtures-modules-localIdentName-localIdentName__<><<<>><>\\", - \\"++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.\\": \\"fixtures-modules-localIdentName-localIdentName__++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.\\", - \\"#\\": \\"fixtures-modules-localIdentName-localIdentName__#\\", - \\"##\\": \\"fixtures-modules-localIdentName-localIdentName__##\\", - \\"#.#.#\\": \\"fixtures-modules-localIdentName-localIdentName__#.#.#\\", - \\"_\\": \\"fixtures-modules-localIdentName-localIdentName___\\", - \\"{}\\": \\"fixtures-modules-localIdentName-localIdentName__{}\\", - \\"foo.bar\\": \\"fixtures-modules-localIdentName-localIdentName__foo.bar\\", - \\":hover\\": \\"fixtures-modules-localIdentName-localIdentName__:hover\\", - \\":hover:focus:active\\": \\"fixtures-modules-localIdentName-localIdentName__:hover:focus:active\\", - \\"[attr=value]\\": \\"fixtures-modules-localIdentName-localIdentName__[attr=value]\\", - \\"f/o/o\\": \\"fixtures-modules-localIdentName-localIdentName__f/o/o\\", - \\"f\\\\\\\\o\\\\\\\\o\\": \\"fixtures-modules-localIdentName-localIdentName__f\\\\\\\\o\\\\\\\\o\\", - \\"f*o*o\\": \\"fixtures-modules-localIdentName-localIdentName__f*o*o\\", - \\"f!o!o\\": \\"fixtures-modules-localIdentName-localIdentName__f!o!o\\", - \\"f'o'o\\": \\"fixtures-modules-localIdentName-localIdentName__f'o'o\\", - \\"f~o~o\\": \\"fixtures-modules-localIdentName-localIdentName__f~o~o\\", - \\"f+o+o\\": \\"fixtures-modules-localIdentName-localIdentName__f+o+o\\", - \\"foo/bar\\": \\"fixtures-modules-localIdentName-localIdentName__foo/bar\\", - \\"foo\\\\\\\\bar\\": \\"fixtures-modules-localIdentName-localIdentName__foo\\\\\\\\bar\\", - \\"foo/bar/baz\\": \\"fixtures-modules-localIdentName-localIdentName__foo/bar/baz\\", - \\"foo\\\\\\\\bar\\\\\\\\baz\\": \\"fixtures-modules-localIdentName-localIdentName__foo\\\\\\\\bar\\\\\\\\baz\\" -}; -module.exports = exports; -" -`; +.xajoqP1d3SwrjJ4WEM8g { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} -exports[`"modules" option should work and respect the "path" placeholder: result 1`] = ` -Array [ - Array [ - "./modules/localIdentName/localIdentName.css", - ".fixtures-modules-localIdentName-localIdentName__test { +.Ix5nEHiVOsWuWxdx0twz { background: red; } +\`, ""]); +// Exports +var _1 = \`\${___CSS_LOADER_ICSS_IMPORT_0____NAMED___["v-def"]}\`; +export { _1 as "v-def" }; +var _2 = \`\${___CSS_LOADER_ICSS_IMPORT_0____NAMED___["v-other"]}\`; +export { _2 as "v-other" }; +var _3 = \`\${___CSS_LOADER_ICSS_IMPORT_0____NAMED___["s-white"]}\`; +export { _3 as "s-white" }; +var _4 = \`\${___CSS_LOADER_ICSS_IMPORT_0____NAMED___["m-small"]}\`; +export { _4 as "m-small" }; +var _5 = \`\${___CSS_LOADER_ICSS_IMPORT_1____NAMED___["v-something"]}\`; +export { _5 as "v-something" }; +var _6 = \`blue\`; +export { _6 as "v-foo" }; +var _7 = \`block\`; +export { _7 as "v-bar" }; +var _8 = \`#BF4040\`; +export { _8 as "v-primary" }; +var _9 = \`black-selector\`; +export { _9 as "s-black" }; +var _a = \`(min-width: 960px)\`; +export { _a as "m-large" }; +var _b = \`validIdent\`; +export { _b as "v-ident" }; +var _c = \`left\`; +export { _c as "v-pre-defined-ident" }; +var _d = \`'content'\`; +export { _d as "v-string" }; +var _e = \`''\`; +export { _e as "v-string-1" }; +var _f = \`url(https://www.exammple.com/images/my-background.png)\`; +export { _f as "v-url" }; +var _10 = \`url('https://www.exammple.com/images/my-background.png')\`; +export { _10 as "v-url-1" }; +var _11 = \`url("https://www.exammple.com/images/my-background.png")\`; +export { _11 as "v-url-2" }; +var _12 = \`100\`; +export { _12 as "v-integer" }; +var _13 = \`-100\`; +export { _13 as "v-integer-1" }; +var _14 = \`+100\`; +export { _14 as "v-integer-2" }; +var _15 = \`.60\`; +export { _15 as "v-number" }; +var _16 = \`-456.8\`; +export { _16 as "v-number-1" }; +var _17 = \`-3.4e-2\`; +export { _17 as "v-number-2" }; +var _18 = \`12px\`; +export { _18 as "v-dimension" }; +var _19 = \`100%\`; +export { _19 as "v-percentage" }; +var _1a = \`#fff\`; +export { _1a as "v-hex" }; +var _1b = \` /* comment */\`; +export { _1b as "v-comment" }; +var _1c = \`rgb(0,0,0)\`; +export { _1c as "v-function" }; +var _1d = \`U+0025-00FF\`; +export { _1d as "v-unicode-range" }; +export var ghi = \`ozGmfTedr1GnFJDWqNUH\`; +var _1e = \`zchqshjqLbPAHaRvIBET\`; +export { _1e as "my-class" }; +export var other = \`WZBxXqS2GytaA3IBhhnd\`; +var _1f = \`W51zcAMuJMsNFi1CXgWr\`; +export { _1f as "other-other" }; +export var green = \`KEl5ZxzNkpjfWorrBglC\`; +export var foo = \`ecAEWh2vww9pNEdyj9Jn\`; +export var simple = \`CBlowYk8qiAgWWzFeXRA \${___CSS_LOADER_ICSS_IMPORT_2____NAMED___["imported-simple"]}\`; +export var relative = \`c_NHnDcX1bd_kuxgsuYi \${___CSS_LOADER_ICSS_IMPORT_3____NAMED___["imported-relative"]}\`; +var _20 = \`S0Kwou8pVmsENtBP3hYm \${___CSS_LOADER_ICSS_IMPORT_4____NAMED___["imported-relative"]}\`; +export { _20 as "top-relative" }; +var _21 = \`rq663Pq_zV0CjpwttvK4 \${___CSS_LOADER_ICSS_IMPORT_5____NAMED___["imported-module"]}\`; +export { _21 as "my-module" }; +export var alias = \`fadRMHArJofp7sWEbPVR \${___CSS_LOADER_ICSS_IMPORT_6____NAMED___["imported-alias"]}\`; +var _22 = \`sg1HlXqlWy6l6_Wm5iA7 \${___CSS_LOADER_ICSS_IMPORT_6____NAMED___["imported-alias"]}\`; +export { _22 as "alias-duplicate" }; +var _23 = \`bnRUswvicYag6u0SPnvI\`; +export { _23 as "primary-selector" }; +var _24 = \`kEJRwpukB2OtmkGTknbU\`; +export { _24 as "black-selector" }; +export var header = \`hY2PI5vC9ABuJY1nkWnf\`; +export var foobarbaz = \`q8mv0HutzqdsVWjl8mAz\`; +export var url = \`xajoqP1d3SwrjJ4WEM8g\`; +export var main = \`Ix5nEHiVOsWuWxdx0twz \${___CSS_LOADER_ICSS_IMPORT_7____NAMED___["scssClass"]}\`; +export default ___CSS_LOADER_EXPORT___; +" +`; -.fixtures-modules-localIdentName-localIdentName___test { - background: blue; +exports[`"modules" option should support resolving in composes: result 1`] = ` +[ + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./modules/composes/test-other.css", + ".s4X7wVQcTygYUV4ttKyQ { + d: d; } - -.fixtures-modules-localIdentName-localIdentName__className { - background: red; +", + "(min-width: 100px)", + ], + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./modules/composes/values.css", + " +", + "", + ], + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./modules/composes/something.css", + " +", + "", + ], + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./modules/composes/imported-simple.css", + ".pCAAqHK9Lcplw9QM7Rj0 { + display: block; } - -#fixtures-modules-localIdentName-localIdentName__someId { - background: green; +", + "", + ], + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./modules/composes/relative.css", + ".o0pMg4suYQOIzdBIQJv1 { + display: inline; } - -.fixtures-modules-localIdentName-localIdentName__className .fixtures-modules-localIdentName-localIdentName__subClass { - color: green; +", + "", + ], + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./modules/composes/top-relative.css", + ".l9CmW32NEl99tuNLdbzp { + display: flex; } - -#fixtures-modules-localIdentName-localIdentName__someId .fixtures-modules-localIdentName-localIdentName__subClass { - color: blue; +", + "", + ], + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./modules/issue-861/node_modules/package/style.css", + ".q49Ogfvno__tAgAiYJcD { + display: inline-block; } - -.fixtures-modules-localIdentName-localIdentName__-a0-34a___f { +", + "", + ], + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./modules/composes/alias.css", + ".dnhKs1AYKq4KodZdfzcx { + display: table; +} +", + "", + ], + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!../../node_modules/sass-loader/dist/cjs.js!./modules/composes/scss-file.scss", + ".oNU7JF6MtPAFrlrthaOD { + color: red; + padding: 15px; +}", + "", + ], + [ + "./modules/composes/composes.css", + ".ozGmfTedr1GnFJDWqNUH { color: red; } -.fixtures-modules-localIdentName-localIdentName__m_x_\\\\@ { - margin-left: auto !important; - margin-right: auto !important; +.zchqshjqLbPAHaRvIBET { + color: blue; } -.fixtures-modules-localIdentName-localIdentName__B\\\\&W\\\\? { - margin-left: auto !important; - margin-right: auto !important; +.WZBxXqS2GytaA3IBhhnd { + display: block; } -/* matches elements with class=\\":\`(\\" */ -.fixtures-modules-localIdentName-localIdentName__\\\\3A \\\\\`\\\\( { - color: aqua; +.W51zcAMuJMsNFi1CXgWr { + width: 2112moon; } -/* matches elements with class=\\"1a2b3c\\" */ -.fixtures-modules-localIdentName-localIdentName__\\\\31 a2b3c { - color: aliceblue; +.KEl5ZxzNkpjfWorrBglC { + color: green; } -/* matches the element with id=\\"#fake-id\\" */ -#fixtures-modules-localIdentName-localIdentName__\\\\#fake-id { - color: antiquewhite; +.ecAEWh2vww9pNEdyj9Jn { + prop: red; + duplicate: green; } -/* matches the element with id=\\"-a-b-c-\\" */ -#fixtures-modules-localIdentName-localIdentName__-a-b-c- { - color: azure; +.CBlowYk8qiAgWWzFeXRA { + color: red; } -/* matches the element with id=\\"©\\" */ -#fixtures-modules-localIdentName-localIdentName__© { - color: black; +.c_NHnDcX1bd_kuxgsuYi { + color: yellow; } -.fixtures-modules-localIdentName-localIdentName__♥ { background: lime; } -.fixtures-modules-localIdentName-localIdentName__© { background: lime; } -.fixtures-modules-localIdentName-localIdentName__“‘’” { background: lime; } -.fixtures-modules-localIdentName-localIdentName__☺☃ { background: lime; } -.fixtures-modules-localIdentName-localIdentName__⌘⌥ { background: lime; } -.fixtures-modules-localIdentName-localIdentName__𝄞♪♩♫♬ { background: lime; } -.fixtures-modules-localIdentName-localIdentName__💩 { background: lime; } -.fixtures-modules-localIdentName-localIdentName__\\\\? { background: lime; } -.fixtures-modules-localIdentName-localIdentName__\\\\@ { background: lime; } -.fixtures-modules-localIdentName-localIdentName__\\\\. { background: lime; } -.fixtures-modules-localIdentName-localIdentName__\\\\3A \\\\) { background: lime; } -.fixtures-modules-localIdentName-localIdentName__\\\\3A \\\\\`\\\\( { background: lime; } -.fixtures-modules-localIdentName-localIdentName__\\\\31 23 { background: lime; } -.fixtures-modules-localIdentName-localIdentName__\\\\31 a2b3c { background: lime; } -.fixtures-modules-localIdentName-localIdentName__\\\\ { background: lime; } -.fixtures-modules-localIdentName-localIdentName__\\\\<\\\\>\\\\<\\\\<\\\\<\\\\>\\\\>\\\\<\\\\> { background: lime; } -.fixtures-modules-localIdentName-localIdentName__\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\[\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\>\\\\+\\\\<\\\\<\\\\<\\\\<\\\\-\\\\]\\\\>\\\\+\\\\+\\\\.\\\\>\\\\+\\\\.\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\.\\\\+\\\\+\\\\+\\\\.\\\\>\\\\+\\\\+\\\\.\\\\<\\\\<\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\>\\\\.\\\\+\\\\+\\\\+\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\>\\\\+\\\\.\\\\>\\\\. { background: lime; } -.fixtures-modules-localIdentName-localIdentName__\\\\# { background: lime; } -.fixtures-modules-localIdentName-localIdentName__\\\\#\\\\# { background: lime; } -.fixtures-modules-localIdentName-localIdentName__\\\\#\\\\.\\\\#\\\\.\\\\# { background: lime; } -.fixtures-modules-localIdentName-localIdentName__\\\\_ { background: lime; } -.fixtures-modules-localIdentName-localIdentName__\\\\{\\\\} { background: lime; } -.fixtures-modules-localIdentName-localIdentName__\\\\#fake\\\\-id { background: lime; } -.fixtures-modules-localIdentName-localIdentName__foo\\\\.bar { background: lime; } -.fixtures-modules-localIdentName-localIdentName__\\\\3A hover { background: lime; } -.fixtures-modules-localIdentName-localIdentName__\\\\3A hover\\\\3A focus\\\\3A active { background: lime; } -.fixtures-modules-localIdentName-localIdentName__\\\\[attr\\\\=value\\\\] { background: lime; } -.fixtures-modules-localIdentName-localIdentName__f\\\\/o\\\\/o { background: lime; } -.fixtures-modules-localIdentName-localIdentName__f\\\\\\\\o\\\\\\\\o { background: lime; } -.fixtures-modules-localIdentName-localIdentName__f\\\\*o\\\\*o { background: lime; } -.fixtures-modules-localIdentName-localIdentName__f\\\\!o\\\\!o { background: lime; } -.fixtures-modules-localIdentName-localIdentName__f\\\\'o\\\\'o { background: lime; } -.fixtures-modules-localIdentName-localIdentName__f\\\\~o\\\\~o { background: lime; } -.fixtures-modules-localIdentName-localIdentName__f\\\\+o\\\\+o { background: lime; } - -.fixtures-modules-localIdentName-localIdentName__foo\\\\/bar { - background: hotpink; +.S0Kwou8pVmsENtBP3hYm { + color: gray; } -.fixtures-modules-localIdentName-localIdentName__foo\\\\\\\\bar { - background: hotpink; +.rq663Pq_zV0CjpwttvK4 { + color: gray; } -.fixtures-modules-localIdentName-localIdentName__foo\\\\/bar\\\\/baz { - background: hotpink; +.fadRMHArJofp7sWEbPVR { + color: gainsboro; } -.fixtures-modules-localIdentName-localIdentName__foo\\\\\\\\bar\\\\\\\\baz { - background: hotpink; +.sg1HlXqlWy6l6_Wm5iA7 { + color: gainsboro; } -", - "", - ], -] -`; - -exports[`"modules" option should work and respect the "path" placeholder: warnings 1`] = `Array []`; -exports[`"modules" option should work and support "pure" mode #2: errors 1`] = `Array []`; - -exports[`"modules" option should work and support "pure" mode #2: module 1`] = ` -"// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../../src/runtime/api.js\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -// Module -exports.push([module.id, \\"._1ORNYXwneW2JZ8HOIELZsO {\\\\n color: red;\\\\n}\\\\n\\\\nh1 ._1YzI-dPdJjO8MFoqnmHSiS {\\\\n color: green;\\\\n}\\\\n\\\\n._19XuUcEihnxeccG4GuGcFK h1 {\\\\n color: blue;\\\\n}\\\\n\\\\n._28hFOdkf6HPeamArMDTyjg h1 .X_RacgG5tjWeZG02q-q84 {\\\\n color: red;\\\\n}\\\\n\\\\n#_3eOAbv4_jk5PEpaqUX_vV_ {\\\\n color: red;\\\\n}\\\\n\\\\nh1 #_3eYZhuXQ5Ha1DcKYJnSpdv {\\\\n color: green;\\\\n}\\\\n\\\\n#tbNgruvlVjTBtv4zb7xzW h1 {\\\\n color: blue;\\\\n}\\\\n\\\\n#_1pV9OUnTdQPjZdQ4zHh8fk h1 #_14gkAn2VC8A8K862gBpfxU {\\\\n color: red;\\\\n}\\\\n\\\\n._1jv12xYuqjtEG-3ZW0dplp .bar ._1Ruta1CeojEt_QePDvXgV4 {\\\\n color: white;\\\\n}\\\\n\\\\n.FTCrXWhb6BcHdiPxKhbDq ._3Spcb1SWXkMsVPOJBD4FCA ._3J8yK5Q14ZQ1VUMZ3vk9yl {\\\\n color: black;\\\\n}\\\\n\\", \\"\\"]); -// Exports -exports.locals = { - \\"foo\\": \\"_1ORNYXwneW2JZ8HOIELZsO\\", - \\"foo-1\\": \\"_1YzI-dPdJjO8MFoqnmHSiS\\", - \\"foo-2\\": \\"_19XuUcEihnxeccG4GuGcFK\\", - \\"foo-3\\": \\"_28hFOdkf6HPeamArMDTyjg\\", - \\"foo-4\\": \\"X_RacgG5tjWeZG02q-q84\\", - \\"foo-5\\": \\"_3eOAbv4_jk5PEpaqUX_vV_\\", - \\"foo-6\\": \\"_3eYZhuXQ5Ha1DcKYJnSpdv\\", - \\"foo-7\\": \\"tbNgruvlVjTBtv4zb7xzW\\", - \\"foo-8\\": \\"_1pV9OUnTdQPjZdQ4zHh8fk\\", - \\"foo-9\\": \\"_14gkAn2VC8A8K862gBpfxU\\", - \\"bar-1\\": \\"_1jv12xYuqjtEG-3ZW0dplp\\", - \\"bar-2\\": \\"_1Ruta1CeojEt_QePDvXgV4\\", - \\"baz-3\\": \\"FTCrXWhb6BcHdiPxKhbDq\\", - \\"baz\\": \\"_3Spcb1SWXkMsVPOJBD4FCA\\", - \\"bar-4\\": \\"_3J8yK5Q14ZQ1VUMZ3vk9yl\\" -}; -module.exports = exports; -" -`; +.bnRUswvicYag6u0SPnvI { + color: #BF4040; +} -exports[`"modules" option should work and support "pure" mode #2: result 1`] = ` -Array [ - Array [ - "./modules/pure/pure.css", - "._1ORNYXwneW2JZ8HOIELZsO { - color: red; +.kEJRwpukB2OtmkGTknbU { + color: black; } -h1 ._1YzI-dPdJjO8MFoqnmHSiS { - color: green; +@media (min-width: 960px) { + .hY2PI5vC9ABuJY1nkWnf { + padding: 0 20px; + } } -._19XuUcEihnxeccG4GuGcFK h1 { - color: blue; +.white { + color: white; } -._28hFOdkf6HPeamArMDTyjg h1 .X_RacgG5tjWeZG02q-q84 { - color: red; +@media (min-width: 320px) { + .hY2PI5vC9ABuJY1nkWnf { + padding: 20px 20px; + } } -#_3eOAbv4_jk5PEpaqUX_vV_ { - color: red; +.q8mv0HutzqdsVWjl8mAz { + v-ident: validIdent; + v-pre-defined-ident: left; + v-string: 'content'; + v-string-1: ''; + v-url: url(https://www.exammple.com/images/my-background.png); + v-url-1: url('https://www.exammple.com/images/my-background.png'); + v-url-2: url("https://www.exammple.com/images/my-background.png"); + v-integer: 100; + v-integer-1: -100; + v-integer-2: +100; + v-number: .60; + v-number-1: -456.8; + v-number-2: -3.4e-2; + v-dimension: 12px; + v-percentage: 100%; + v-hex: #fff; + v-comment: /* comment */ 10px /* comment */; + v-function: rgb(0,0,0); + v-unicode-range: U+0025-00FF; + mutliple: #fff .60 100%; } -h1 #_3eYZhuXQ5Ha1DcKYJnSpdv { - color: green; + +a { + content: 'content'; } -#tbNgruvlVjTBtv4zb7xzW h1 { - color: blue; +@supports (content: 'content') { + a { + content: 'content'; + } } -#_1pV9OUnTdQPjZdQ4zHh8fk h1 #_14gkAn2VC8A8K862gBpfxU { - color: red; +[class~='content'] { + color:green; } -._1jv12xYuqjtEG-3ZW0dplp .bar ._1Ruta1CeojEt_QePDvXgV4 { - color: white; +.xajoqP1d3SwrjJ4WEM8g { + background: url(replaced_file_protocol_/webpack/public/path/img.png); } -.FTCrXWhb6BcHdiPxKhbDq ._3Spcb1SWXkMsVPOJBD4FCA ._3J8yK5Q14ZQ1VUMZ3vk9yl { - color: black; +.Ix5nEHiVOsWuWxdx0twz { + background: red; } ", "", @@ -2878,443 +2630,389 @@ h1 #_3eYZhuXQ5Ha1DcKYJnSpdv { ] `; -exports[`"modules" option should work and support "pure" mode #2: warnings 1`] = `Array []`; - -exports[`"modules" option should work and support "pure" mode: errors 1`] = `Array []`; +exports[`"modules" option should support resolving in composes: warnings 1`] = ` +[ + "ModuleWarning: Module Warning (from \`replaced original path\`): +Deprecation The legacy JS API is deprecated and will be removed in Dart Sass 2.0.0. -exports[`"modules" option should work and support "pure" mode: module 1`] = ` -"// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../../src/runtime/api.js\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -// Module -exports.push([module.id, \\"._1ORNYXwneW2JZ8HOIELZsO {\\\\n color: red;\\\\n}\\\\n\\\\nh1 ._1YzI-dPdJjO8MFoqnmHSiS {\\\\n color: green;\\\\n}\\\\n\\\\n._19XuUcEihnxeccG4GuGcFK h1 {\\\\n color: blue;\\\\n}\\\\n\\\\n._28hFOdkf6HPeamArMDTyjg h1 .X_RacgG5tjWeZG02q-q84 {\\\\n color: red;\\\\n}\\\\n\\\\n#_3eOAbv4_jk5PEpaqUX_vV_ {\\\\n color: red;\\\\n}\\\\n\\\\nh1 #_3eYZhuXQ5Ha1DcKYJnSpdv {\\\\n color: green;\\\\n}\\\\n\\\\n#tbNgruvlVjTBtv4zb7xzW h1 {\\\\n color: blue;\\\\n}\\\\n\\\\n#_1pV9OUnTdQPjZdQ4zHh8fk h1 #_14gkAn2VC8A8K862gBpfxU {\\\\n color: red;\\\\n}\\\\n\\\\n._1jv12xYuqjtEG-3ZW0dplp .bar ._1Ruta1CeojEt_QePDvXgV4 {\\\\n color: white;\\\\n}\\\\n\\\\n.FTCrXWhb6BcHdiPxKhbDq ._3Spcb1SWXkMsVPOJBD4FCA ._3J8yK5Q14ZQ1VUMZ3vk9yl {\\\\n color: black;\\\\n}\\\\n\\", \\"\\"]); -// Exports -exports.locals = { - \\"foo\\": \\"_1ORNYXwneW2JZ8HOIELZsO\\", - \\"foo-1\\": \\"_1YzI-dPdJjO8MFoqnmHSiS\\", - \\"foo-2\\": \\"_19XuUcEihnxeccG4GuGcFK\\", - \\"foo-3\\": \\"_28hFOdkf6HPeamArMDTyjg\\", - \\"foo-4\\": \\"X_RacgG5tjWeZG02q-q84\\", - \\"foo-5\\": \\"_3eOAbv4_jk5PEpaqUX_vV_\\", - \\"foo-6\\": \\"_3eYZhuXQ5Ha1DcKYJnSpdv\\", - \\"foo-7\\": \\"tbNgruvlVjTBtv4zb7xzW\\", - \\"foo-8\\": \\"_1pV9OUnTdQPjZdQ4zHh8fk\\", - \\"foo-9\\": \\"_14gkAn2VC8A8K862gBpfxU\\", - \\"bar-1\\": \\"_1jv12xYuqjtEG-3ZW0dplp\\", - \\"bar-2\\": \\"_1Ruta1CeojEt_QePDvXgV4\\", - \\"baz-3\\": \\"FTCrXWhb6BcHdiPxKhbDq\\", - \\"baz\\": \\"_3Spcb1SWXkMsVPOJBD4FCA\\", - \\"bar-4\\": \\"_3J8yK5Q14ZQ1VUMZ3vk9yl\\" -}; -module.exports = exports; -" +More info: https://sass-lang.com/d/legacy-js-api", +] `; -exports[`"modules" option should work and support "pure" mode: result 1`] = ` -Array [ - Array [ - "./modules/pure/pure.css", - "._1ORNYXwneW2JZ8HOIELZsO { - color: red; -} - -h1 ._1YzI-dPdJjO8MFoqnmHSiS { - color: green; -} +exports[`"modules" option should throw an error on unresolved import: errors 1`] = ` +[ + "ModuleBuildError: Module build failed (from \`replaced original path\`): +Error: Can't resolve './unresolved.css' in '/test/fixtures/modules/unresolved'", +] +`; -._19XuUcEihnxeccG4GuGcFK h1 { - color: blue; -} +exports[`"modules" option should throw an error on unresolved import: warnings 1`] = `[]`; -._28hFOdkf6HPeamArMDTyjg h1 .X_RacgG5tjWeZG02q-q84 { - color: red; -} +exports[`"modules" option should throw an error when class has unsupported name (JavaScript reserved words): errors 1`] = `[]`; -#_3eOAbv4_jk5PEpaqUX_vV_ { - color: red; -} +exports[`"modules" option should throw an error when class has unsupported name (JavaScript reserved words): warnings 1`] = `[]`; -h1 #_3eYZhuXQ5Ha1DcKYJnSpdv { - color: green; -} +exports[`"modules" option should throw an error when the "namedExport" is enabled and the "exportLocalsConvention" options has not "camelCaseOnly" value: errors 1`] = `[]`; -#tbNgruvlVjTBtv4zb7xzW h1 { - color: blue; -} +exports[`"modules" option should throw an error when the "namedExport" is enabled and the "exportLocalsConvention" options has not "camelCaseOnly" value: warnings 1`] = `[]`; -#_1pV9OUnTdQPjZdQ4zHh8fk h1 #_14gkAn2VC8A8K862gBpfxU { - color: red; -} +exports[`"modules" option should throw an error when the "namedExport" option is "true", but the "esModule" is "false": errors 1`] = ` +[ + "ModuleBuildError: Module build failed (from \`replaced original path\`): +Error: The 'modules.namedExport' option requires the 'esModule' option to be enabled", +] +`; -._1jv12xYuqjtEG-3ZW0dplp .bar ._1Ruta1CeojEt_QePDvXgV4 { - color: white; -} +exports[`"modules" option should throw an error when the "namedExport" option is "true", but the "esModule" is "false": warnings 1`] = `[]`; -.FTCrXWhb6BcHdiPxKhbDq ._3Spcb1SWXkMsVPOJBD4FCA ._3J8yK5Q14ZQ1VUMZ3vk9yl { - color: black; -} -", - "", - ], +exports[`"modules" option should throw error when the "exportLocalsConvention" function throw error: errors 1`] = ` +[ + "ModuleBuildError: Module build failed (from \`replaced original path\`): +Error: namedExportFn error", ] `; -exports[`"modules" option should work and support "pure" mode: warnings 1`] = `Array []`; - -exports[`"modules" option should work when the "getLocalIdent" option returns "false": errors 1`] = `Array []`; - -exports[`"modules" option should work when the "getLocalIdent" option returns "false": module 1`] = ` -"// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../../src/runtime/api.js\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -// Module -exports.push([module.id, \\".test {\\\\n background: red;\\\\n}\\\\n\\\\n._test {\\\\n background: blue;\\\\n}\\\\n\\\\n.className {\\\\n background: red;\\\\n}\\\\n\\\\n#someId {\\\\n background: green;\\\\n}\\\\n\\\\n.className .subClass {\\\\n color: green;\\\\n}\\\\n\\\\n#someId .subClass {\\\\n color: blue;\\\\n}\\\\n\\\\n.-a0-34a___f {\\\\n color: red;\\\\n}\\\\n\\\\n.m_x_\\\\\\\\@ {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n.B\\\\\\\\&W\\\\\\\\? {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\":\`(\\\\\\" */\\\\n.\\\\\\\\3A \\\\\\\\\`\\\\\\\\( {\\\\n color: aqua;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\"1a2b3c\\\\\\" */\\\\n.\\\\\\\\31 a2b3c {\\\\n color: aliceblue;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"#fake-id\\\\\\" */\\\\n#\\\\\\\\#fake-id {\\\\n color: antiquewhite;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"-a-b-c-\\\\\\" */\\\\n#-a-b-c- {\\\\n color: azure;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"©\\\\\\" */\\\\n#© {\\\\n color: black;\\\\n}\\\\n\\\\n.♥ { background: lime; }\\\\n.© { background: lime; }\\\\n.“‘’” { background: lime; }\\\\n.☺☃ { background: lime; }\\\\n.⌘⌥ { background: lime; }\\\\n.𝄞♪♩♫♬ { background: lime; }\\\\n.💩 { background: lime; }\\\\n.\\\\\\\\? { background: lime; }\\\\n.\\\\\\\\@ { background: lime; }\\\\n.\\\\\\\\. { background: lime; }\\\\n.\\\\\\\\3A \\\\\\\\) { background: lime; }\\\\n.\\\\\\\\3A \\\\\\\\\`\\\\\\\\( { background: lime; }\\\\n.\\\\\\\\31 23 { background: lime; }\\\\n.\\\\\\\\31 a2b3c { background: lime; }\\\\n.\\\\\\\\ { background: lime; }\\\\n.\\\\\\\\<\\\\\\\\>\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\>\\\\\\\\>\\\\\\\\<\\\\\\\\> { background: lime; }\\\\n.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\[\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\-\\\\\\\\]\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\<\\\\\\\\<\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\.\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\. { background: lime; }\\\\n.\\\\\\\\# { background: lime; }\\\\n.\\\\\\\\#\\\\\\\\# { background: lime; }\\\\n.\\\\\\\\#\\\\\\\\.\\\\\\\\#\\\\\\\\.\\\\\\\\# { background: lime; }\\\\n.\\\\\\\\_ { background: lime; }\\\\n.\\\\\\\\{\\\\\\\\} { background: lime; }\\\\n.\\\\\\\\#fake\\\\\\\\-id { background: lime; }\\\\n.foo\\\\\\\\.bar { background: lime; }\\\\n.\\\\\\\\3A hover { background: lime; }\\\\n.\\\\\\\\3A hover\\\\\\\\3A focus\\\\\\\\3A active { background: lime; }\\\\n.\\\\\\\\[attr\\\\\\\\=value\\\\\\\\] { background: lime; }\\\\n.f\\\\\\\\/o\\\\\\\\/o { background: lime; }\\\\n.f\\\\\\\\\\\\\\\\o\\\\\\\\\\\\\\\\o { background: lime; }\\\\n.f\\\\\\\\*o\\\\\\\\*o { background: lime; }\\\\n.f\\\\\\\\!o\\\\\\\\!o { background: lime; }\\\\n.f\\\\\\\\'o\\\\\\\\'o { background: lime; }\\\\n.f\\\\\\\\~o\\\\\\\\~o { background: lime; }\\\\n.f\\\\\\\\+o\\\\\\\\+o { background: lime; }\\\\n\\\\n.foo\\\\\\\\/bar {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.foo\\\\\\\\\\\\\\\\bar {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.foo\\\\\\\\/bar\\\\\\\\/baz {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.foo\\\\\\\\\\\\\\\\bar\\\\\\\\\\\\\\\\baz {\\\\n background: hotpink;\\\\n}\\\\n\\", \\"\\"]); -// Exports -exports.locals = { - \\"123\\": \\"123\\", - \\"test\\": \\"test\\", - \\"_test\\": \\"_test\\", - \\"className\\": \\"className\\", - \\"someId\\": \\"someId\\", - \\"subClass\\": \\"subClass\\", - \\"-a0-34a___f\\": \\"-a0-34a___f\\", - \\"m_x_@\\": \\"m_x_@\\", - \\"B&W?\\": \\"B&W?\\", - \\":\`(\\": \\":\`(\\", - \\"1a2b3c\\": \\"1a2b3c\\", - \\"#fake-id\\": \\"#fake-id\\", - \\"-a-b-c-\\": \\"-a-b-c-\\", - \\"©\\": \\"©\\", - \\"♥\\": \\"♥\\", - \\"“‘’”\\": \\"“‘’”\\", - \\"☺☃\\": \\"☺☃\\", - \\"⌘⌥\\": \\"⌘⌥\\", - \\"𝄞♪♩♫♬\\": \\"𝄞♪♩♫♬\\", - \\"💩\\": \\"💩\\", - \\"?\\": \\"?\\", - \\"@\\": \\"@\\", - \\".\\": \\".\\", - \\":)\\": \\":)\\", - \\"

\\": \\"

\\", - \\"<><<<>><>\\": \\"<><<<>><>\\", - \\"++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.\\": \\"++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.\\", - \\"#\\": \\"#\\", - \\"##\\": \\"##\\", - \\"#.#.#\\": \\"#.#.#\\", - \\"_\\": \\"_\\", - \\"{}\\": \\"{}\\", - \\"foo.bar\\": \\"foo.bar\\", - \\":hover\\": \\":hover\\", - \\":hover:focus:active\\": \\":hover:focus:active\\", - \\"[attr=value]\\": \\"[attr=value]\\", - \\"f/o/o\\": \\"f/o/o\\", - \\"f\\\\\\\\o\\\\\\\\o\\": \\"f\\\\\\\\o\\\\\\\\o\\", - \\"f*o*o\\": \\"f*o*o\\", - \\"f!o!o\\": \\"f!o!o\\", - \\"f'o'o\\": \\"f'o'o\\", - \\"f~o~o\\": \\"f~o~o\\", - \\"f+o+o\\": \\"f+o+o\\", - \\"foo/bar\\": \\"foo/bar\\", - \\"foo\\\\\\\\bar\\": \\"foo\\\\\\\\bar\\", - \\"foo/bar/baz\\": \\"foo/bar/baz\\", - \\"foo\\\\\\\\bar\\\\\\\\baz\\": \\"foo\\\\\\\\bar\\\\\\\\baz\\" -}; -module.exports = exports; -" -`; +exports[`"modules" option should throw error when the "exportLocalsConvention" function throw error: warnings 1`] = `[]`; -exports[`"modules" option should work when the "getLocalIdent" option returns "false": result 1`] = ` -Array [ - Array [ - "./modules/localIdentName/localIdentName.css", - ".test { +exports[`"modules" option should throw error with composes when the "namedExport" is enabled and "exportLocalsConvention" options has invalid value: errors 1`] = `[]`; + +exports[`"modules" option should throw error with composes when the "namedExport" is enabled and "exportLocalsConvention" options has invalid value: warnings 1`] = `[]`; + +exports[`"modules" option should work and correctly replace escaped symbols: errors 1`] = `[]`; + +exports[`"modules" option should work and correctly replace escaped symbols: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../../src/runtime/api.js"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`.test--KuIS { background: red; } -._test { +._test--Lb3f { background: blue; } -.className { +.className--Ldhp { background: red; } -#someId { +#someId--b0rh { background: green; } -.className .subClass { +.className--Ldhp .subClass--Mw9j { color: green; } -#someId .subClass { +#someId--b0rh .subClass--Mw9j { color: blue; } -.-a0-34a___f { +.-a0-34a___f--DdFW { color: red; } -.m_x_\\\\@ { +.m_x_\\\\@--OdAm { margin-left: auto !important; margin-right: auto !important; } -.B\\\\&W\\\\? { +.B\\\\&W\\\\?--h4SE { margin-left: auto !important; margin-right: auto !important; } -/* matches elements with class=\\":\`(\\" */ -.\\\\3A \\\\\`\\\\( { +/* matches elements with class=":\\\`(" */ +.\\\\3A \\\\\\\`\\\\(--fKJQ { color: aqua; } -/* matches elements with class=\\"1a2b3c\\" */ -.\\\\31 a2b3c { +/* matches elements with class="1a2b3c" */ +.\\\\31 a2b3c--YR1u { color: aliceblue; } -/* matches the element with id=\\"#fake-id\\" */ -#\\\\#fake-id { +/* matches the element with id="#fake-id" */ +#\\\\#fake-id--AqiA { color: antiquewhite; } -/* matches the element with id=\\"-a-b-c-\\" */ -#-a-b-c- { +/* matches the element with id="-a-b-c-" */ +#-a-b-c---CwXv { color: azure; } -/* matches the element with id=\\"©\\" */ -#© { +/* matches the element with id="©" */ +#©--jBj0 { color: black; } -.♥ { background: lime; } -.© { background: lime; } -.“‘’” { background: lime; } -.☺☃ { background: lime; } -.⌘⌥ { background: lime; } -.𝄞♪♩♫♬ { background: lime; } -.💩 { background: lime; } -.\\\\? { background: lime; } -.\\\\@ { background: lime; } -.\\\\. { background: lime; } -.\\\\3A \\\\) { background: lime; } -.\\\\3A \\\\\`\\\\( { background: lime; } -.\\\\31 23 { background: lime; } -.\\\\31 a2b3c { background: lime; } -.\\\\ { background: lime; } -.\\\\<\\\\>\\\\<\\\\<\\\\<\\\\>\\\\>\\\\<\\\\> { background: lime; } -.\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\[\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\>\\\\+\\\\<\\\\<\\\\<\\\\<\\\\-\\\\]\\\\>\\\\+\\\\+\\\\.\\\\>\\\\+\\\\.\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\.\\\\+\\\\+\\\\+\\\\.\\\\>\\\\+\\\\+\\\\.\\\\<\\\\<\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\>\\\\.\\\\+\\\\+\\\\+\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\>\\\\+\\\\.\\\\>\\\\. { background: lime; } -.\\\\# { background: lime; } -.\\\\#\\\\# { background: lime; } -.\\\\#\\\\.\\\\#\\\\.\\\\# { background: lime; } -.\\\\_ { background: lime; } -.\\\\{\\\\} { background: lime; } -.\\\\#fake\\\\-id { background: lime; } -.foo\\\\.bar { background: lime; } -.\\\\3A hover { background: lime; } -.\\\\3A hover\\\\3A focus\\\\3A active { background: lime; } -.\\\\[attr\\\\=value\\\\] { background: lime; } -.f\\\\/o\\\\/o { background: lime; } -.f\\\\\\\\o\\\\\\\\o { background: lime; } -.f\\\\*o\\\\*o { background: lime; } -.f\\\\!o\\\\!o { background: lime; } -.f\\\\'o\\\\'o { background: lime; } -.f\\\\~o\\\\~o { background: lime; } -.f\\\\+o\\\\+o { background: lime; } - -.foo\\\\/bar { +.♥--vJl9 { background: lime; } +.©--jBj0 { background: lime; } +.😍--CNLr { background: lime; } +.“‘’”--GM0Y { background: lime; } +.☺☃--NKrB { background: lime; } +.⌘⌥--edHW { background: lime; } +.𝄞♪♩♫♬--QyMp { background: lime; } +.💩--B82Y { background: lime; } +.\\\\?--ndmp { background: lime; } +.\\\\@--v3gq { background: lime; } +.\\\\.--zd5u { background: lime; } +.\\\\3A \\\\)--ZiZn { background: lime; } +.\\\\3A \\\\\\\`\\\\(--fKJQ { background: lime; } +.\\\\31 23--oqRG { background: lime; } +.\\\\31 a2b3c--YR1u { background: lime; } +.\\\\--TdAx { background: lime; } +.\\\\<\\\\>\\\\<\\\\<\\\\<\\\\>\\\\>\\\\<\\\\>--ozNs { background: lime; } +.\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\[\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\>\\\\+\\\\<\\\\<\\\\<\\\\<\\\\-\\\\]\\\\>\\\\+\\\\+\\\\.\\\\>\\\\+\\\\.\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\.\\\\+\\\\+\\\\+\\\\.\\\\>\\\\+\\\\+\\\\.\\\\<\\\\<\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\>\\\\.\\\\+\\\\+\\\\+\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\>\\\\+\\\\.\\\\>\\\\.--ByKo { background: lime; } +.\\\\#--HkwI { background: lime; } +.\\\\#\\\\#--IJc6 { background: lime; } +.\\\\#\\\\.\\\\#\\\\.\\\\#--BnPp { background: lime; } +.\\\\_--bCwk { background: lime; } +.\\\\{\\\\}--IZkB { background: lime; } +.\\\\#fake\\\\-id--AqiA { background: lime; } +.foo\\\\.bar--uajo { background: lime; } +.\\\\3A hover--HVud { background: lime; } +.\\\\3A hover\\\\3A focus\\\\3A active--Zlaa { background: lime; } +.\\\\[attr\\\\=value\\\\]--PWvC { background: lime; } +.f\\\\/o\\\\/o--A5l5 { background: lime; } +.f\\\\\\\\o\\\\\\\\o--DFfh { background: lime; } +.f\\\\*o\\\\*o--gv1E { background: lime; } +.f\\\\!o\\\\!o--_aIy { background: lime; } +.f\\\\'o\\\\'o--HSXN { background: lime; } +.f\\\\~o\\\\~o--MrVz { background: lime; } +.f\\\\+o\\\\+o--EvMH { background: lime; } + +.foo\\\\/bar--hei2 { background: hotpink; } -.foo\\\\\\\\bar { +.foo\\\\\\\\bar--IgSz { background: hotpink; } -.foo\\\\/bar\\\\/baz { +.foo\\\\/bar\\\\/baz--p6KJ { background: hotpink; } -.foo\\\\\\\\bar\\\\\\\\baz { +.foo\\\\\\\\bar\\\\\\\\baz--HZer { background: hotpink; } -", - "", - ], -] -`; - -exports[`"modules" option should work when the "getLocalIdent" option returns "false": warnings 1`] = `Array []`; - -exports[`"modules" option should work with a modules.auto equal "false": errors 1`] = `Array []`; - -exports[`"modules" option should work with a modules.auto equal "false": module 1`] = ` -"// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../../src/runtime/api.js\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -// Module -exports.push([module.id, \\".relative {\\\\n color: red;\\\\n}\\\\n\\", \\"\\"]); +\`, ""]); // Exports -module.exports = exports; +var _1 = \`123--oqRG\`; +export { _1 as "123" }; +export var test = \`test--KuIS\`; +export var _test = \`_test--Lb3f\`; +export var className = \`className--Ldhp\`; +export var someId = \`someId--b0rh\`; +export var subClass = \`subClass--Mw9j\`; +var _2 = \`-a0-34a___f--DdFW\`; +export { _2 as "-a0-34a___f" }; +var _3 = \`m_x_@--OdAm\`; +export { _3 as "m_x_@" }; +var _4 = \`B&W?--h4SE\`; +export { _4 as "B&W?" }; +var _5 = \`:\\\`(--fKJQ\`; +export { _5 as ":\`(" }; +var _6 = \`1a2b3c--YR1u\`; +export { _6 as "1a2b3c" }; +var _7 = \`#fake-id--AqiA\`; +export { _7 as "#fake-id" }; +var _8 = \`-a-b-c---CwXv\`; +export { _8 as "-a-b-c-" }; +var _9 = \`©--jBj0\`; +export { _9 as "©" }; +var _a = \`♥--vJl9\`; +export { _a as "♥" }; +var _b = \`😍--CNLr\`; +export { _b as "😍" }; +var _c = \`“‘’”--GM0Y\`; +export { _c as "“‘’”" }; +var _d = \`☺☃--NKrB\`; +export { _d as "☺☃" }; +var _e = \`⌘⌥--edHW\`; +export { _e as "⌘⌥" }; +var _f = \`𝄞♪♩♫♬--QyMp\`; +export { _f as "𝄞♪♩♫♬" }; +var _10 = \`💩--B82Y\`; +export { _10 as "💩" }; +var _11 = \`?--ndmp\`; +export { _11 as "?" }; +var _12 = \`@--v3gq\`; +export { _12 as "@" }; +var _13 = \`.--zd5u\`; +export { _13 as "." }; +var _14 = \`:)--ZiZn\`; +export { _14 as ":)" }; +var _15 = \`

--TdAx\`; +export { _15 as "

" }; +var _16 = \`<><<<>><>--ozNs\`; +export { _16 as "<><<<>><>" }; +var _17 = \`++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.--ByKo\`; +export { _17 as "++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>." }; +var _18 = \`#--HkwI\`; +export { _18 as "#" }; +var _19 = \`##--IJc6\`; +export { _19 as "##" }; +var _1a = \`#.#.#--BnPp\`; +export { _1a as "#.#.#" }; +export var _ = \`_--bCwk\`; +var _1b = \`{}--IZkB\`; +export { _1b as "{}" }; +var _1c = \`foo.bar--uajo\`; +export { _1c as "foo.bar" }; +var _1d = \`:hover--HVud\`; +export { _1d as ":hover" }; +var _1e = \`:hover:focus:active--Zlaa\`; +export { _1e as ":hover:focus:active" }; +var _1f = \`[attr=value]--PWvC\`; +export { _1f as "[attr=value]" }; +var _20 = \`f/o/o--A5l5\`; +export { _20 as "f/o/o" }; +var _21 = \`f\\\\o\\\\o--DFfh\`; +export { _21 as "f\\\\o\\\\o" }; +var _22 = \`f*o*o--gv1E\`; +export { _22 as "f*o*o" }; +var _23 = \`f!o!o--_aIy\`; +export { _23 as "f!o!o" }; +var _24 = \`f'o'o--HSXN\`; +export { _24 as "f'o'o" }; +var _25 = \`f~o~o--MrVz\`; +export { _25 as "f~o~o" }; +var _26 = \`f+o+o--EvMH\`; +export { _26 as "f+o+o" }; +var _27 = \`foo/bar--hei2\`; +export { _27 as "foo/bar" }; +var _28 = \`foo\\\\bar--IgSz\`; +export { _28 as "foo\\\\bar" }; +var _29 = \`foo/bar/baz--p6KJ\`; +export { _29 as "foo/bar/baz" }; +var _2a = \`foo\\\\bar\\\\baz--HZer\`; +export { _2a as "foo\\\\bar\\\\baz" }; +export default ___CSS_LOADER_EXPORT___; " `; -exports[`"modules" option should work with a modules.auto equal "false": result 1`] = ` -Array [ - Array [ - "./modules/mode/relative.module.css", - ".relative { - color: red; +exports[`"modules" option should work and correctly replace escaped symbols: result 1`] = ` +[ + [ + "./modules/localIdentName/localIdentName.css", + ".test--KuIS { + background: red; } -", - "", - ], -] -`; - -exports[`"modules" option should work with a modules.auto equal "false": warnings 1`] = `Array []`; -exports[`"modules" option should work with a modules.auto equal "true": errors 1`] = `Array []`; - -exports[`"modules" option should work with a modules.auto equal "true": module 1`] = ` -"// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../../src/runtime/api.js\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -// Module -exports.push([module.id, \\".y35Nud52-ZFXmqL6AWueX {\\\\n color: red;\\\\n}\\\\n\\", \\"\\"]); -// Exports -exports.locals = { - \\"relative\\": \\"y35Nud52-ZFXmqL6AWueX\\" -}; -module.exports = exports; -" -`; +._test--Lb3f { + background: blue; +} -exports[`"modules" option should work with a modules.auto equal "true": result 1`] = ` -Array [ - Array [ - "./modules/mode/relative.module.css", - ".y35Nud52-ZFXmqL6AWueX { - color: red; +.className--Ldhp { + background: red; } -", - "", - ], -] -`; -exports[`"modules" option should work with a modules.auto equal "true": warnings 1`] = `Array []`; +#someId--b0rh { + background: green; +} -exports[`"modules" option should work with a modules.auto returns "false": errors 1`] = `Array []`; +.className--Ldhp .subClass--Mw9j { + color: green; +} -exports[`"modules" option should work with a modules.auto returns "false": module 1`] = ` -"// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../../src/runtime/api.js\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -// Module -exports.push([module.id, \\".relative {\\\\n color: red;\\\\n}\\\\n\\", \\"\\"]); -// Exports -module.exports = exports; -" -`; +#someId--b0rh .subClass--Mw9j { + color: blue; +} -exports[`"modules" option should work with a modules.auto returns "false": result 1`] = ` -Array [ - Array [ - "./modules/mode/relative.module.css", - ".relative { +.-a0-34a___f--DdFW { color: red; } -", - "", - ], -] -`; - -exports[`"modules" option should work with a modules.auto returns "false": warnings 1`] = `Array []`; - -exports[`"modules" option should work with a modules.auto returns "true": errors 1`] = `Array []`; - -exports[`"modules" option should work with a modules.auto returns "true": module 1`] = ` -"// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../../src/runtime/api.js\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -// Module -exports.push([module.id, \\".y35Nud52-ZFXmqL6AWueX {\\\\n color: red;\\\\n}\\\\n\\", \\"\\"]); -// Exports -exports.locals = { - \\"relative\\": \\"y35Nud52-ZFXmqL6AWueX\\" -}; -module.exports = exports; -" -`; -exports[`"modules" option should work with a modules.auto returns "true": result 1`] = ` -Array [ - Array [ - "./modules/mode/relative.module.css", - ".y35Nud52-ZFXmqL6AWueX { - color: red; +.m_x_\\@--OdAm { + margin-left: auto !important; + margin-right: auto !important; } -", - "", - ], -] -`; -exports[`"modules" option should work with a modules.auto returns "true": warnings 1`] = `Array []`; +.B\\&W\\?--h4SE { + margin-left: auto !important; + margin-right: auto !important; +} -exports[`"modules" option should work with case \`animation\` (\`modules\` value is \`false)\`: errors 1`] = `Array []`; +/* matches elements with class=":\`(" */ +.\\3A \\\`\\(--fKJQ { + color: aqua; +} -exports[`"modules" option should work with case \`animation\` (\`modules\` value is \`false)\`: module 1`] = ` -"// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../../../src/runtime/api.js\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -// Module -exports.push([module.id, \\"a {\\\\n animation: slide-right 300ms forwards ease-out, fade-in 300ms forwards ease-out;\\\\n\\\\n}\\\\n\\", \\"\\"]); -// Exports -module.exports = exports; -" -`; +/* matches elements with class="1a2b3c" */ +.\\31 a2b3c--YR1u { + color: aliceblue; +} -exports[`"modules" option should work with case \`animation\` (\`modules\` value is \`false)\`: result 1`] = ` -Array [ - Array [ - "./modules/tests-cases/animation/source.css", - "a { - animation: slide-right 300ms forwards ease-out, fade-in 300ms forwards ease-out; +/* matches the element with id="#fake-id" */ +#\\#fake-id--AqiA { + color: antiquewhite; +} +/* matches the element with id="-a-b-c-" */ +#-a-b-c---CwXv { + color: azure; } -", - "", - ], -] -`; -exports[`"modules" option should work with case \`animation\` (\`modules\` value is \`false)\`: warnings 1`] = `Array []`; +/* matches the element with id="©" */ +#©--jBj0 { + color: black; +} -exports[`"modules" option should work with case \`animation\` (\`modules\` value is \`global)\`: errors 1`] = `Array []`; +.♥--vJl9 { background: lime; } +.©--jBj0 { background: lime; } +.😍--CNLr { background: lime; } +.“‘’”--GM0Y { background: lime; } +.☺☃--NKrB { background: lime; } +.⌘⌥--edHW { background: lime; } +.𝄞♪♩♫♬--QyMp { background: lime; } +.💩--B82Y { background: lime; } +.\\?--ndmp { background: lime; } +.\\@--v3gq { background: lime; } +.\\.--zd5u { background: lime; } +.\\3A \\)--ZiZn { background: lime; } +.\\3A \\\`\\(--fKJQ { background: lime; } +.\\31 23--oqRG { background: lime; } +.\\31 a2b3c--YR1u { background: lime; } +.\\--TdAx { background: lime; } +.\\<\\>\\<\\<\\<\\>\\>\\<\\>--ozNs { background: lime; } +.\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\[\\>\\+\\+\\+\\+\\+\\+\\+\\>\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\>\\+\\+\\+\\>\\+\\<\\<\\<\\<\\-\\]\\>\\+\\+\\.\\>\\+\\.\\+\\+\\+\\+\\+\\+\\+\\.\\.\\+\\+\\+\\.\\>\\+\\+\\.\\<\\<\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\.\\>\\.\\+\\+\\+\\.\\-\\-\\-\\-\\-\\-\\.\\-\\-\\-\\-\\-\\-\\-\\-\\.\\>\\+\\.\\>\\.--ByKo { background: lime; } +.\\#--HkwI { background: lime; } +.\\#\\#--IJc6 { background: lime; } +.\\#\\.\\#\\.\\#--BnPp { background: lime; } +.\\_--bCwk { background: lime; } +.\\{\\}--IZkB { background: lime; } +.\\#fake\\-id--AqiA { background: lime; } +.foo\\.bar--uajo { background: lime; } +.\\3A hover--HVud { background: lime; } +.\\3A hover\\3A focus\\3A active--Zlaa { background: lime; } +.\\[attr\\=value\\]--PWvC { background: lime; } +.f\\/o\\/o--A5l5 { background: lime; } +.f\\\\o\\\\o--DFfh { background: lime; } +.f\\*o\\*o--gv1E { background: lime; } +.f\\!o\\!o--_aIy { background: lime; } +.f\\'o\\'o--HSXN { background: lime; } +.f\\~o\\~o--MrVz { background: lime; } +.f\\+o\\+o--EvMH { background: lime; } + +.foo\\/bar--hei2 { + background: hotpink; +} -exports[`"modules" option should work with case \`animation\` (\`modules\` value is \`global)\`: module 1`] = ` -"// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../../../src/runtime/api.js\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -// Module -exports.push([module.id, \\"a {\\\\n animation: slide-right 300ms forwards ease-out, fade-in 300ms forwards ease-out;\\\\n\\\\n}\\\\n\\", \\"\\"]); -// Exports -module.exports = exports; -" -`; +.foo\\\\bar--IgSz { + background: hotpink; +} -exports[`"modules" option should work with case \`animation\` (\`modules\` value is \`global)\`: result 1`] = ` -Array [ - Array [ - "./modules/tests-cases/animation/source.css", - "a { - animation: slide-right 300ms forwards ease-out, fade-in 300ms forwards ease-out; +.foo\\/bar\\/baz--p6KJ { + background: hotpink; +} +.foo\\\\bar\\\\baz--HZer { + background: hotpink; } ", "", @@ -3322,127 +3020,14206 @@ Array [ ] `; -exports[`"modules" option should work with case \`animation\` (\`modules\` value is \`global)\`: warnings 1`] = `Array []`; - -exports[`"modules" option should work with case \`animation\` (\`modules\` value is \`local)\`: errors 1`] = `Array []`; - -exports[`"modules" option should work with case \`animation\` (\`modules\` value is \`local)\`: module 1`] = ` -"// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../../../src/runtime/api.js\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -// Module -exports.push([module.id, \\"a {\\\\n animation: _2jinakhsfBWcUNZSsOxUHz 300ms forwards ease-out, _3XZSV759G141XcbTZgtQkF 300ms forwards ease-out;\\\\n\\\\n}\\\\n\\", \\"\\"]); -// Exports -exports.locals = { - \\"slide-right\\": \\"_2jinakhsfBWcUNZSsOxUHz\\", - \\"fade-in\\": \\"_3XZSV759G141XcbTZgtQkF\\" -}; -module.exports = exports; +exports[`"modules" option should work and correctly replace escaped symbols: warnings 1`] = `[]`; + +exports[`"modules" option should work and generate the same classes for client and server: client errors 1`] = `[]`; + +exports[`"modules" option should work and generate the same classes for client and server: client module 1`] = ` +"// extracted by mini-css-extract-plugin +var _1 = "oqRGsO4UR7_DWiqWXJMz"; +var _2 = "HkwIsjW5i7WNAxVRd5cg"; +var _3 = "IJc6Xl4ZKVZvSoeIuI2Q"; +var _4 = "BnPpnJmPeNr51pj2ZTlf"; +var _5 = "AqiAGSfnwaXj3eqg0Om8"; +var _6 = "ByKoYcSrMT2cN3V2iAgZ"; +var _7 = "CwXv27VMwyQqKBvNNaFr"; +var _8 = "DdFWMPoluIgmQirKzoS6"; +var _9 = "zd5uIZq6KrAWTwBjwZdC"; +var _a = "YR1u_buYf6paLzzUM6Vc"; +var _b = "ZiZnRjRT03NgoqVQwkGO"; +var _c = "fKJQkLarfQOel4wwbIrn"; +var _d = "HVudUNXnLNQoCLpVn82S"; +var _e = "ZlaaXvHLUsJOCFzItB_1"; +var _f = "ozNsTIG0LL2gSQdL5dzv"; +var _10 = "TdAx2ZSkw7Hbktc7KR72"; +var _11 = "ndmpvNNltJXbDVvqKuxt"; +var _12 = "v3gq0wPogd6ZPfq_pfyZ"; +var _13 = "h4SEF34CLwChRsak1742"; +var _14 = "PWvC4jVM5SwUmKmw2tfW"; +var _15 = "bCwkZEDuxDAOhKnMdLVF"; +var _16 = "Lb3fhDAuJv4v7BXOPttP"; +var _17 = "LdhpkZRWyKT7zDwJ0lt8"; +var _18 = "_aIyR9ETAs8ipXmRrrDO"; +var _19 = "HSXNnSjt1QaHBHUb_UIs"; +var _1a = "gv1E2n_bVvy0iT8TaHIv"; +var _1b = "EvMHRmCudyKg3GpLjAfj"; +var _1c = "A5l5sDODF4CQBW_PtlQD"; +var _1d = "DFfh4KyqOODVQsTPb3wt"; +var _1e = "uajo7mHzD_tTqOXqaqdg"; +var _1f = "hei2uQgDeX2YNkppCHp9"; +var _20 = "p6KJMhNWwmCU2bXHJB93"; +var _21 = "IgSzmmsCqiJBl4SibwgR"; +var _22 = "HZerWgmU0ffpPzySVi_g"; +var _23 = "MrVzSIcSXyoDsr5G0K5_"; +var _24 = "OdAmghrme3xnUYOdzoDw"; +var _25 = "b0rhwJStMR3eH63oapwW"; +var _26 = "Mw9j4nIdjx1xCGDt7d6a"; +var _27 = "KuIShlgsYfxvLoLHT1mu"; +var _28 = "IZkBfE9iUPen76w2bB_q"; +var _29 = "jBj0sZiWBysiwRyGu_go"; +var _2a = "GM0Y0nFCPtkVMz6Esfno"; +var _2b = "edHWpSne18gmGmfN6SV6"; +var _2c = "NKrBw7EAqPT7Cgn7JzrA"; +var _2d = "vJl9A9Ds21oujVsd5UD2"; +var _2e = "QyMp9YMEoYUmEHEdpRal"; +var _2f = "B82YxwgREHbKn8IpgaWw"; +var _30 = "CNLr9yJwqs3dm6FgpOqA"; +export { _1 as "123", _2 as "#", _3 as "##", _4 as "#.#.#", _5 as "#fake-id", _6 as "++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.", _7 as "-a-b-c-", _8 as "-a0-34a___f", _9 as ".", _a as "1a2b3c", _b as ":)", _c as ":\`(", _d as ":hover", _e as ":hover:focus:active", _f as "<><<<>><>", _10 as "

", _11 as "?", _12 as "@", _13 as "B&W?", _14 as "[attr=value]", _15 as "_", _16 as "_test", _17 as "className", _18 as "f!o!o", _19 as "f'o'o", _1a as "f*o*o", _1b as "f+o+o", _1c as "f/o/o", _1d as "f\\\\o\\\\o", _1e as "foo.bar", _1f as "foo/bar", _20 as "foo/bar/baz", _21 as "foo\\\\bar", _22 as "foo\\\\bar\\\\baz", _23 as "f~o~o", _24 as "m_x_@", _25 as "someId", _26 as "subClass", _27 as "test", _28 as "{}", _29 as "©", _2a as "“‘’”", _2b as "⌘⌥", _2c as "☺☃", _2d as "♥", _2e as "𝄞♪♩♫♬", _2f as "💩", _30 as "😍" } " `; -exports[`"modules" option should work with case \`animation\` (\`modules\` value is \`local)\`: result 1`] = ` -Array [ - Array [ - "./modules/tests-cases/animation/source.css", - "a { - animation: _2jinakhsfBWcUNZSsOxUHz 300ms forwards ease-out, _3XZSV759G141XcbTZgtQkF 300ms forwards ease-out; - -} -", - "", - ], -] +exports[`"modules" option should work and generate the same classes for client and server: client result 1`] = ` +{ + "#": "HkwIsjW5i7WNAxVRd5cg", + "##": "IJc6Xl4ZKVZvSoeIuI2Q", + "#.#.#": "BnPpnJmPeNr51pj2ZTlf", + "#fake-id": "AqiAGSfnwaXj3eqg0Om8", + "++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.": "ByKoYcSrMT2cN3V2iAgZ", + "-a-b-c-": "CwXv27VMwyQqKBvNNaFr", + "-a0-34a___f": "DdFWMPoluIgmQirKzoS6", + ".": "zd5uIZq6KrAWTwBjwZdC", + "123": "oqRGsO4UR7_DWiqWXJMz", + "1a2b3c": "YR1u_buYf6paLzzUM6Vc", + ":)": "ZiZnRjRT03NgoqVQwkGO", + ":\`(": "fKJQkLarfQOel4wwbIrn", + ":hover": "HVudUNXnLNQoCLpVn82S", + ":hover:focus:active": "ZlaaXvHLUsJOCFzItB_1", + "<><<<>><>": "ozNsTIG0LL2gSQdL5dzv", + "

": "TdAx2ZSkw7Hbktc7KR72", + "?": "ndmpvNNltJXbDVvqKuxt", + "@": "v3gq0wPogd6ZPfq_pfyZ", + "B&W?": "h4SEF34CLwChRsak1742", + "[attr=value]": "PWvC4jVM5SwUmKmw2tfW", + "_": "bCwkZEDuxDAOhKnMdLVF", + "_test": "Lb3fhDAuJv4v7BXOPttP", + "className": "LdhpkZRWyKT7zDwJ0lt8", + "f!o!o": "_aIyR9ETAs8ipXmRrrDO", + "f'o'o": "HSXNnSjt1QaHBHUb_UIs", + "f*o*o": "gv1E2n_bVvy0iT8TaHIv", + "f+o+o": "EvMHRmCudyKg3GpLjAfj", + "f/o/o": "A5l5sDODF4CQBW_PtlQD", + "f\\o\\o": "DFfh4KyqOODVQsTPb3wt", + "foo.bar": "uajo7mHzD_tTqOXqaqdg", + "foo/bar": "hei2uQgDeX2YNkppCHp9", + "foo/bar/baz": "p6KJMhNWwmCU2bXHJB93", + "foo\\bar": "IgSzmmsCqiJBl4SibwgR", + "foo\\bar\\baz": "HZerWgmU0ffpPzySVi_g", + "f~o~o": "MrVzSIcSXyoDsr5G0K5_", + "m_x_@": "OdAmghrme3xnUYOdzoDw", + "someId": "b0rhwJStMR3eH63oapwW", + "subClass": "Mw9j4nIdjx1xCGDt7d6a", + "test": "KuIShlgsYfxvLoLHT1mu", + "{}": "IZkBfE9iUPen76w2bB_q", + "©": "jBj0sZiWBysiwRyGu_go", + "“‘’”": "GM0Y0nFCPtkVMz6Esfno", + "⌘⌥": "edHWpSne18gmGmfN6SV6", + "☺☃": "NKrBw7EAqPT7Cgn7JzrA", + "♥": "vJl9A9Ds21oujVsd5UD2", + "𝄞♪♩♫♬": "QyMp9YMEoYUmEHEdpRal", + "💩": "B82YxwgREHbKn8IpgaWw", + "😍": "CNLr9yJwqs3dm6FgpOqA", +} +`; + +exports[`"modules" option should work and generate the same classes for client and server: client warnings 1`] = `[]`; + +exports[`"modules" option should work and generate the same classes for client and server: server errors 1`] = `[]`; + +exports[`"modules" option should work and generate the same classes for client and server: server module 1`] = ` +"// Exports +var _1 = \`oqRGsO4UR7_DWiqWXJMz\`; +export { _1 as "123" }; +export var test = \`KuIShlgsYfxvLoLHT1mu\`; +export var _test = \`Lb3fhDAuJv4v7BXOPttP\`; +export var className = \`LdhpkZRWyKT7zDwJ0lt8\`; +export var someId = \`b0rhwJStMR3eH63oapwW\`; +export var subClass = \`Mw9j4nIdjx1xCGDt7d6a\`; +var _2 = \`DdFWMPoluIgmQirKzoS6\`; +export { _2 as "-a0-34a___f" }; +var _3 = \`OdAmghrme3xnUYOdzoDw\`; +export { _3 as "m_x_@" }; +var _4 = \`h4SEF34CLwChRsak1742\`; +export { _4 as "B&W?" }; +var _5 = \`fKJQkLarfQOel4wwbIrn\`; +export { _5 as ":\`(" }; +var _6 = \`YR1u_buYf6paLzzUM6Vc\`; +export { _6 as "1a2b3c" }; +var _7 = \`AqiAGSfnwaXj3eqg0Om8\`; +export { _7 as "#fake-id" }; +var _8 = \`CwXv27VMwyQqKBvNNaFr\`; +export { _8 as "-a-b-c-" }; +var _9 = \`jBj0sZiWBysiwRyGu_go\`; +export { _9 as "©" }; +var _a = \`vJl9A9Ds21oujVsd5UD2\`; +export { _a as "♥" }; +var _b = \`CNLr9yJwqs3dm6FgpOqA\`; +export { _b as "😍" }; +var _c = \`GM0Y0nFCPtkVMz6Esfno\`; +export { _c as "“‘’”" }; +var _d = \`NKrBw7EAqPT7Cgn7JzrA\`; +export { _d as "☺☃" }; +var _e = \`edHWpSne18gmGmfN6SV6\`; +export { _e as "⌘⌥" }; +var _f = \`QyMp9YMEoYUmEHEdpRal\`; +export { _f as "𝄞♪♩♫♬" }; +var _10 = \`B82YxwgREHbKn8IpgaWw\`; +export { _10 as "💩" }; +var _11 = \`ndmpvNNltJXbDVvqKuxt\`; +export { _11 as "?" }; +var _12 = \`v3gq0wPogd6ZPfq_pfyZ\`; +export { _12 as "@" }; +var _13 = \`zd5uIZq6KrAWTwBjwZdC\`; +export { _13 as "." }; +var _14 = \`ZiZnRjRT03NgoqVQwkGO\`; +export { _14 as ":)" }; +var _15 = \`TdAx2ZSkw7Hbktc7KR72\`; +export { _15 as "

" }; +var _16 = \`ozNsTIG0LL2gSQdL5dzv\`; +export { _16 as "<><<<>><>" }; +var _17 = \`ByKoYcSrMT2cN3V2iAgZ\`; +export { _17 as "++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>." }; +var _18 = \`HkwIsjW5i7WNAxVRd5cg\`; +export { _18 as "#" }; +var _19 = \`IJc6Xl4ZKVZvSoeIuI2Q\`; +export { _19 as "##" }; +var _1a = \`BnPpnJmPeNr51pj2ZTlf\`; +export { _1a as "#.#.#" }; +export var _ = \`bCwkZEDuxDAOhKnMdLVF\`; +var _1b = \`IZkBfE9iUPen76w2bB_q\`; +export { _1b as "{}" }; +var _1c = \`uajo7mHzD_tTqOXqaqdg\`; +export { _1c as "foo.bar" }; +var _1d = \`HVudUNXnLNQoCLpVn82S\`; +export { _1d as ":hover" }; +var _1e = \`ZlaaXvHLUsJOCFzItB_1\`; +export { _1e as ":hover:focus:active" }; +var _1f = \`PWvC4jVM5SwUmKmw2tfW\`; +export { _1f as "[attr=value]" }; +var _20 = \`A5l5sDODF4CQBW_PtlQD\`; +export { _20 as "f/o/o" }; +var _21 = \`DFfh4KyqOODVQsTPb3wt\`; +export { _21 as "f\\\\o\\\\o" }; +var _22 = \`gv1E2n_bVvy0iT8TaHIv\`; +export { _22 as "f*o*o" }; +var _23 = \`_aIyR9ETAs8ipXmRrrDO\`; +export { _23 as "f!o!o" }; +var _24 = \`HSXNnSjt1QaHBHUb_UIs\`; +export { _24 as "f'o'o" }; +var _25 = \`MrVzSIcSXyoDsr5G0K5_\`; +export { _25 as "f~o~o" }; +var _26 = \`EvMHRmCudyKg3GpLjAfj\`; +export { _26 as "f+o+o" }; +var _27 = \`hei2uQgDeX2YNkppCHp9\`; +export { _27 as "foo/bar" }; +var _28 = \`IgSzmmsCqiJBl4SibwgR\`; +export { _28 as "foo\\\\bar" }; +var _29 = \`p6KJMhNWwmCU2bXHJB93\`; +export { _29 as "foo/bar/baz" }; +var _2a = \`HZerWgmU0ffpPzySVi_g\`; +export { _2a as "foo\\\\bar\\\\baz" }; +" `; -exports[`"modules" option should work with case \`animation\` (\`modules\` value is \`local)\`: warnings 1`] = `Array []`; - -exports[`"modules" option should work with case \`animation\` (\`modules\` value is \`object with mode global)\`: errors 1`] = `Array []`; +exports[`"modules" option should work and generate the same classes for client and server: server result 1`] = ` +{ + "#": "HkwIsjW5i7WNAxVRd5cg", + "##": "IJc6Xl4ZKVZvSoeIuI2Q", + "#.#.#": "BnPpnJmPeNr51pj2ZTlf", + "#fake-id": "AqiAGSfnwaXj3eqg0Om8", + "++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.": "ByKoYcSrMT2cN3V2iAgZ", + "-a-b-c-": "CwXv27VMwyQqKBvNNaFr", + "-a0-34a___f": "DdFWMPoluIgmQirKzoS6", + ".": "zd5uIZq6KrAWTwBjwZdC", + "123": "oqRGsO4UR7_DWiqWXJMz", + "1a2b3c": "YR1u_buYf6paLzzUM6Vc", + ":)": "ZiZnRjRT03NgoqVQwkGO", + ":\`(": "fKJQkLarfQOel4wwbIrn", + ":hover": "HVudUNXnLNQoCLpVn82S", + ":hover:focus:active": "ZlaaXvHLUsJOCFzItB_1", + "<><<<>><>": "ozNsTIG0LL2gSQdL5dzv", + "

": "TdAx2ZSkw7Hbktc7KR72", + "?": "ndmpvNNltJXbDVvqKuxt", + "@": "v3gq0wPogd6ZPfq_pfyZ", + "B&W?": "h4SEF34CLwChRsak1742", + "[attr=value]": "PWvC4jVM5SwUmKmw2tfW", + "_": "bCwkZEDuxDAOhKnMdLVF", + "_test": "Lb3fhDAuJv4v7BXOPttP", + "className": "LdhpkZRWyKT7zDwJ0lt8", + "f!o!o": "_aIyR9ETAs8ipXmRrrDO", + "f'o'o": "HSXNnSjt1QaHBHUb_UIs", + "f*o*o": "gv1E2n_bVvy0iT8TaHIv", + "f+o+o": "EvMHRmCudyKg3GpLjAfj", + "f/o/o": "A5l5sDODF4CQBW_PtlQD", + "f\\o\\o": "DFfh4KyqOODVQsTPb3wt", + "foo.bar": "uajo7mHzD_tTqOXqaqdg", + "foo/bar": "hei2uQgDeX2YNkppCHp9", + "foo/bar/baz": "p6KJMhNWwmCU2bXHJB93", + "foo\\bar": "IgSzmmsCqiJBl4SibwgR", + "foo\\bar\\baz": "HZerWgmU0ffpPzySVi_g", + "f~o~o": "MrVzSIcSXyoDsr5G0K5_", + "m_x_@": "OdAmghrme3xnUYOdzoDw", + "someId": "b0rhwJStMR3eH63oapwW", + "subClass": "Mw9j4nIdjx1xCGDt7d6a", + "test": "KuIShlgsYfxvLoLHT1mu", + "{}": "IZkBfE9iUPen76w2bB_q", + "©": "jBj0sZiWBysiwRyGu_go", + "“‘’”": "GM0Y0nFCPtkVMz6Esfno", + "⌘⌥": "edHWpSne18gmGmfN6SV6", + "☺☃": "NKrBw7EAqPT7Cgn7JzrA", + "♥": "vJl9A9Ds21oujVsd5UD2", + "𝄞♪♩♫♬": "QyMp9YMEoYUmEHEdpRal", + "💩": "B82YxwgREHbKn8IpgaWw", + "😍": "CNLr9yJwqs3dm6FgpOqA", +} +`; + +exports[`"modules" option should work and generate the same classes for client and server: server warnings 1`] = `[]`; + +exports[`"modules" option should work and has "undefined" context if no context was given: errors 1`] = `[]`; -exports[`"modules" option should work with case \`animation\` (\`modules\` value is \`object with mode global)\`: module 1`] = ` +exports[`"modules" option should work and has "undefined" context if no context was given: module 1`] = ` "// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../../../src/runtime/api.js\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../../src/runtime/api.js"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); // Module -exports.push([module.id, \\"a {\\\\n animation: slide-right 300ms forwards ease-out, fade-in 300ms forwards ease-out;\\\\n\\\\n}\\\\n\\", \\"\\"]); -// Exports -module.exports = exports; -" -`; +___CSS_LOADER_EXPORT___.push([module.id, \`.foo { + background: red; +} -exports[`"modules" option should work with case \`animation\` (\`modules\` value is \`object with mode global)\`: result 1`] = ` -Array [ - Array [ - "./modules/tests-cases/animation/source.css", - "a { - animation: slide-right 300ms forwards ease-out, fade-in 300ms forwards ease-out; +.foo { + background: blue; +} +.foo { + background: red; } -", - "", - ], -] -`; -exports[`"modules" option should work with case \`animation\` (\`modules\` value is \`object with mode global)\`: warnings 1`] = `Array []`; +#foo { + background: green; +} -exports[`"modules" option should work with case \`animation\` (\`modules\` value is \`object with mode local)\`: errors 1`] = `Array []`; +.foo .foo { + color: green; +} -exports[`"modules" option should work with case \`animation\` (\`modules\` value is \`object with mode local)\`: module 1`] = ` -"// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../../../src/runtime/api.js\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -// Module -exports.push([module.id, \\"a {\\\\n animation: _slide-right 300ms forwards ease-out, _fade-in 300ms forwards ease-out;\\\\n\\\\n}\\\\n\\", \\"\\"]); -// Exports -exports.locals = { - \\"slide-right\\": \\"_slide-right\\", - \\"fade-in\\": \\"_fade-in\\" -}; -module.exports = exports; -" -`; +#foo .foo { + color: blue; +} -exports[`"modules" option should work with case \`animation\` (\`modules\` value is \`object with mode local)\`: result 1`] = ` -Array [ - Array [ - "./modules/tests-cases/animation/source.css", - "a { - animation: _slide-right 300ms forwards ease-out, _fade-in 300ms forwards ease-out; +.foo { + color: red; +} +.foo { + margin-left: auto !important; + margin-right: auto !important; } -", - "", - ], -] -`; -exports[`"modules" option should work with case \`animation\` (\`modules\` value is \`object with mode local)\`: warnings 1`] = `Array []`; +.foo { + margin-left: auto !important; + margin-right: auto !important; +} -exports[`"modules" option should work with case \`animation\` (\`modules\` value is \`true)\`: errors 1`] = `Array []`; +/* matches elements with class=":\\\`(" */ +.foo { + color: aqua; +} -exports[`"modules" option should work with case \`animation\` (\`modules\` value is \`true)\`: module 1`] = ` -"// Imports -var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../../../src/runtime/api.js\\"); -exports = ___CSS_LOADER_API_IMPORT___(false); -// Module -exports.push([module.id, \\"a {\\\\n animation: _2jinakhsfBWcUNZSsOxUHz 300ms forwards ease-out, _3XZSV759G141XcbTZgtQkF 300ms forwards ease-out;\\\\n\\\\n}\\\\n\\", \\"\\"]); -// Exports -exports.locals = { - \\"slide-right\\": \\"_2jinakhsfBWcUNZSsOxUHz\\", - \\"fade-in\\": \\"_3XZSV759G141XcbTZgtQkF\\" -}; -module.exports = exports; -" -`; +/* matches elements with class="1a2b3c" */ +.foo { + color: aliceblue; +} -exports[`"modules" option should work with case \`animation\` (\`modules\` value is \`true)\`: result 1`] = ` -Array [ - Array [ - "./modules/tests-cases/animation/source.css", - "a { - animation: _2jinakhsfBWcUNZSsOxUHz 300ms forwards ease-out, _3XZSV759G141XcbTZgtQkF 300ms forwards ease-out; +/* matches the element with id="#fake-id" */ +#foo { + color: antiquewhite; +} +/* matches the element with id="-a-b-c-" */ +#foo { + color: azure; +} + +/* matches the element with id="©" */ +#foo { + color: black; +} + +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } + +.foo { + background: hotpink; +} + +.foo { + background: hotpink; +} + +.foo { + background: hotpink; +} + +.foo { + background: hotpink; +} +\`, ""]); +// Exports +var _1 = \`foo\`; +export { _1 as "123" }; +export var test = \`foo\`; +export var _test = \`foo\`; +export var className = \`foo\`; +export var someId = \`foo\`; +export var subClass = \`foo\`; +var _2 = \`foo\`; +export { _2 as "-a0-34a___f" }; +var _3 = \`foo\`; +export { _3 as "m_x_@" }; +var _4 = \`foo\`; +export { _4 as "B&W?" }; +var _5 = \`foo\`; +export { _5 as ":\`(" }; +var _6 = \`foo\`; +export { _6 as "1a2b3c" }; +var _7 = \`foo\`; +export { _7 as "#fake-id" }; +var _8 = \`foo\`; +export { _8 as "-a-b-c-" }; +var _9 = \`foo\`; +export { _9 as "©" }; +var _a = \`foo\`; +export { _a as "♥" }; +var _b = \`foo\`; +export { _b as "😍" }; +var _c = \`foo\`; +export { _c as "“‘’”" }; +var _d = \`foo\`; +export { _d as "☺☃" }; +var _e = \`foo\`; +export { _e as "⌘⌥" }; +var _f = \`foo\`; +export { _f as "𝄞♪♩♫♬" }; +var _10 = \`foo\`; +export { _10 as "💩" }; +var _11 = \`foo\`; +export { _11 as "?" }; +var _12 = \`foo\`; +export { _12 as "@" }; +var _13 = \`foo\`; +export { _13 as "." }; +var _14 = \`foo\`; +export { _14 as ":)" }; +var _15 = \`foo\`; +export { _15 as "

" }; +var _16 = \`foo\`; +export { _16 as "<><<<>><>" }; +var _17 = \`foo\`; +export { _17 as "++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>." }; +var _18 = \`foo\`; +export { _18 as "#" }; +var _19 = \`foo\`; +export { _19 as "##" }; +var _1a = \`foo\`; +export { _1a as "#.#.#" }; +export var _ = \`foo\`; +var _1b = \`foo\`; +export { _1b as "{}" }; +var _1c = \`foo\`; +export { _1c as "foo.bar" }; +var _1d = \`foo\`; +export { _1d as ":hover" }; +var _1e = \`foo\`; +export { _1e as ":hover:focus:active" }; +var _1f = \`foo\`; +export { _1f as "[attr=value]" }; +var _20 = \`foo\`; +export { _20 as "f/o/o" }; +var _21 = \`foo\`; +export { _21 as "f\\\\o\\\\o" }; +var _22 = \`foo\`; +export { _22 as "f*o*o" }; +var _23 = \`foo\`; +export { _23 as "f!o!o" }; +var _24 = \`foo\`; +export { _24 as "f'o'o" }; +var _25 = \`foo\`; +export { _25 as "f~o~o" }; +var _26 = \`foo\`; +export { _26 as "f+o+o" }; +var _27 = \`foo\`; +export { _27 as "foo/bar" }; +var _28 = \`foo\`; +export { _28 as "foo\\\\bar" }; +var _29 = \`foo\`; +export { _29 as "foo/bar/baz" }; +var _2a = \`foo\`; +export { _2a as "foo\\\\bar\\\\baz" }; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should work and has "undefined" context if no context was given: result 1`] = ` +[ + [ + "./modules/localIdentName/localIdentName.css", + ".foo { + background: red; +} + +.foo { + background: blue; +} + +.foo { + background: red; +} + +#foo { + background: green; +} + +.foo .foo { + color: green; +} + +#foo .foo { + color: blue; +} + +.foo { + color: red; +} + +.foo { + margin-left: auto !important; + margin-right: auto !important; +} + +.foo { + margin-left: auto !important; + margin-right: auto !important; +} + +/* matches elements with class=":\`(" */ +.foo { + color: aqua; +} + +/* matches elements with class="1a2b3c" */ +.foo { + color: aliceblue; +} + +/* matches the element with id="#fake-id" */ +#foo { + color: antiquewhite; +} + +/* matches the element with id="-a-b-c-" */ +#foo { + color: azure; +} + +/* matches the element with id="©" */ +#foo { + color: black; +} + +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } + +.foo { + background: hotpink; +} + +.foo { + background: hotpink; +} + +.foo { + background: hotpink; +} + +.foo { + background: hotpink; +} +", + "", + ], +] +`; + +exports[`"modules" option should work and has "undefined" context if no context was given: warnings 1`] = `[]`; + +exports[`"modules" option should work and prefer relative for "composes": errors 1`] = `[]`; + +exports[`"modules" option should work and prefer relative for "composes": module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../../src/runtime/api.js"; +import ___CSS_LOADER_ICSS_IMPORT_0___, * as ___CSS_LOADER_ICSS_IMPORT_0____NAMED___ from "-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./package/one.css"; +import ___CSS_LOADER_ICSS_IMPORT_1___, * as ___CSS_LOADER_ICSS_IMPORT_1____NAMED___ from "-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./node_modules/package/two.css"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, "", true); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_1___, "", true); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`.eY6jkKjjXnFY1QWC5gpe { + color: yellow; +} + +.cfTHoySzymaJQ150LQPh { + color: yellow; +} +\`, ""]); +// Exports +export var one = \`eY6jkKjjXnFY1QWC5gpe \${___CSS_LOADER_ICSS_IMPORT_0____NAMED___["imported-relative"]}\`; +export var two = \`cfTHoySzymaJQ150LQPh \${___CSS_LOADER_ICSS_IMPORT_1____NAMED___["imported-relative"]}\`; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should work and prefer relative for "composes": result 1`] = ` +[ + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./modules/prefer-relative/package/one.css", + ".x6BAJm_OUHnABwnaBJG6 { + display: block; +} +", + "", + ], + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./modules/prefer-relative/node_modules/package/two.css", + ".sFLAbn2jg871KRraVJSF { + display: inline; +} +", + "", + ], + [ + "./modules/prefer-relative/source.css", + ".eY6jkKjjXnFY1QWC5gpe { + color: yellow; +} + +.cfTHoySzymaJQ150LQPh { + color: yellow; +} +", + "", + ], +] +`; + +exports[`"modules" option should work and prefer relative for "composes": warnings 1`] = `[]`; + +exports[`"modules" option should work and prefix leading hyphen when digit is first: errors 1`] = `[]`; + +exports[`"modules" option should work and prefix leading hyphen when digit is first: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../../src/runtime/api.js"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`._-1test { + background: red; +} + +._-1_test { + background: blue; +} + +._-1className { + background: red; +} + +#_-1someId { + background: green; +} + +._-1className ._-1subClass { + color: green; +} + +#_-1someId ._-1subClass { + color: blue; +} + +._-1-a0-34a___f { + color: red; +} + +._-1m_x_\\\\@ { + margin-left: auto !important; + margin-right: auto !important; +} + +._-1B\\\\&W\\\\? { + margin-left: auto !important; + margin-right: auto !important; +} + +/* matches elements with class=":\\\`(" */ +._-1\\\\3A \\\\\\\`\\\\( { + color: aqua; +} + +/* matches elements with class="1a2b3c" */ +._-1\\\\31 a2b3c { + color: aliceblue; +} + +/* matches the element with id="#fake-id" */ +#_-1\\\\#fake-id { + color: antiquewhite; +} + +/* matches the element with id="-a-b-c-" */ +#_-1-a-b-c- { + color: azure; +} + +/* matches the element with id="©" */ +#_-1© { + color: black; +} + +._-1♥ { background: lime; } +._-1© { background: lime; } +._-1😍 { background: lime; } +._-1“‘’” { background: lime; } +._-1☺☃ { background: lime; } +._-1⌘⌥ { background: lime; } +._-1𝄞♪♩♫♬ { background: lime; } +._-1💩 { background: lime; } +._-1\\\\? { background: lime; } +._-1\\\\@ { background: lime; } +._-1\\\\. { background: lime; } +._-1\\\\3A \\\\) { background: lime; } +._-1\\\\3A \\\\\\\`\\\\( { background: lime; } +._-1\\\\31 23 { background: lime; } +._-1\\\\31 a2b3c { background: lime; } +._-1\\\\ { background: lime; } +._-1\\\\<\\\\>\\\\<\\\\<\\\\<\\\\>\\\\>\\\\<\\\\> { background: lime; } +._-1\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\[\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\>\\\\+\\\\<\\\\<\\\\<\\\\<\\\\-\\\\]\\\\>\\\\+\\\\+\\\\.\\\\>\\\\+\\\\.\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\.\\\\+\\\\+\\\\+\\\\.\\\\>\\\\+\\\\+\\\\.\\\\<\\\\<\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\>\\\\.\\\\+\\\\+\\\\+\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\>\\\\+\\\\.\\\\>\\\\. { background: lime; } +._-1\\\\# { background: lime; } +._-1\\\\#\\\\# { background: lime; } +._-1\\\\#\\\\.\\\\#\\\\.\\\\# { background: lime; } +._-1\\\\_ { background: lime; } +._-1\\\\{\\\\} { background: lime; } +._-1\\\\#fake\\\\-id { background: lime; } +._-1foo\\\\.bar { background: lime; } +._-1\\\\3A hover { background: lime; } +._-1\\\\3A hover\\\\3A focus\\\\3A active { background: lime; } +._-1\\\\[attr\\\\=value\\\\] { background: lime; } +._-1f\\\\/o\\\\/o { background: lime; } +._-1f\\\\\\\\o\\\\\\\\o { background: lime; } +._-1f\\\\*o\\\\*o { background: lime; } +._-1f\\\\!o\\\\!o { background: lime; } +._-1f\\\\'o\\\\'o { background: lime; } +._-1f\\\\~o\\\\~o { background: lime; } +._-1f\\\\+o\\\\+o { background: lime; } + +._-1foo\\\\/bar { + background: hotpink; +} + +._-1foo\\\\\\\\bar { + background: hotpink; +} + +._-1foo\\\\/bar\\\\/baz { + background: hotpink; +} + +._-1foo\\\\\\\\bar\\\\\\\\baz { + background: hotpink; +} +\`, ""]); +// Exports +var _1 = \`_-1123\`; +export { _1 as "123" }; +export var test = \`_-1test\`; +export var _test = \`_-1_test\`; +export var className = \`_-1className\`; +export var someId = \`_-1someId\`; +export var subClass = \`_-1subClass\`; +var _2 = \`_-1-a0-34a___f\`; +export { _2 as "-a0-34a___f" }; +var _3 = \`_-1m_x_@\`; +export { _3 as "m_x_@" }; +var _4 = \`_-1B&W?\`; +export { _4 as "B&W?" }; +var _5 = \`_-1:\\\`(\`; +export { _5 as ":\`(" }; +var _6 = \`_-11a2b3c\`; +export { _6 as "1a2b3c" }; +var _7 = \`_-1#fake-id\`; +export { _7 as "#fake-id" }; +var _8 = \`_-1-a-b-c-\`; +export { _8 as "-a-b-c-" }; +var _9 = \`_-1©\`; +export { _9 as "©" }; +var _a = \`_-1♥\`; +export { _a as "♥" }; +var _b = \`_-1😍\`; +export { _b as "😍" }; +var _c = \`_-1“‘’”\`; +export { _c as "“‘’”" }; +var _d = \`_-1☺☃\`; +export { _d as "☺☃" }; +var _e = \`_-1⌘⌥\`; +export { _e as "⌘⌥" }; +var _f = \`_-1𝄞♪♩♫♬\`; +export { _f as "𝄞♪♩♫♬" }; +var _10 = \`_-1💩\`; +export { _10 as "💩" }; +var _11 = \`_-1?\`; +export { _11 as "?" }; +var _12 = \`_-1@\`; +export { _12 as "@" }; +var _13 = \`_-1.\`; +export { _13 as "." }; +var _14 = \`_-1:)\`; +export { _14 as ":)" }; +var _15 = \`_-1

\`; +export { _15 as "

" }; +var _16 = \`_-1<><<<>><>\`; +export { _16 as "<><<<>><>" }; +var _17 = \`_-1++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.\`; +export { _17 as "++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>." }; +var _18 = \`_-1#\`; +export { _18 as "#" }; +var _19 = \`_-1##\`; +export { _19 as "##" }; +var _1a = \`_-1#.#.#\`; +export { _1a as "#.#.#" }; +export var _ = \`_-1_\`; +var _1b = \`_-1{}\`; +export { _1b as "{}" }; +var _1c = \`_-1foo.bar\`; +export { _1c as "foo.bar" }; +var _1d = \`_-1:hover\`; +export { _1d as ":hover" }; +var _1e = \`_-1:hover:focus:active\`; +export { _1e as ":hover:focus:active" }; +var _1f = \`_-1[attr=value]\`; +export { _1f as "[attr=value]" }; +var _20 = \`_-1f/o/o\`; +export { _20 as "f/o/o" }; +var _21 = \`_-1f\\\\o\\\\o\`; +export { _21 as "f\\\\o\\\\o" }; +var _22 = \`_-1f*o*o\`; +export { _22 as "f*o*o" }; +var _23 = \`_-1f!o!o\`; +export { _23 as "f!o!o" }; +var _24 = \`_-1f'o'o\`; +export { _24 as "f'o'o" }; +var _25 = \`_-1f~o~o\`; +export { _25 as "f~o~o" }; +var _26 = \`_-1f+o+o\`; +export { _26 as "f+o+o" }; +var _27 = \`_-1foo/bar\`; +export { _27 as "foo/bar" }; +var _28 = \`_-1foo\\\\bar\`; +export { _28 as "foo\\\\bar" }; +var _29 = \`_-1foo/bar/baz\`; +export { _29 as "foo/bar/baz" }; +var _2a = \`_-1foo\\\\bar\\\\baz\`; +export { _2a as "foo\\\\bar\\\\baz" }; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should work and prefix leading hyphen when digit is first: result 1`] = ` +[ + [ + "./modules/localIdentName/localIdentName.css", + "._-1test { + background: red; +} + +._-1_test { + background: blue; +} + +._-1className { + background: red; +} + +#_-1someId { + background: green; +} + +._-1className ._-1subClass { + color: green; +} + +#_-1someId ._-1subClass { + color: blue; +} + +._-1-a0-34a___f { + color: red; +} + +._-1m_x_\\@ { + margin-left: auto !important; + margin-right: auto !important; +} + +._-1B\\&W\\? { + margin-left: auto !important; + margin-right: auto !important; +} + +/* matches elements with class=":\`(" */ +._-1\\3A \\\`\\( { + color: aqua; +} + +/* matches elements with class="1a2b3c" */ +._-1\\31 a2b3c { + color: aliceblue; +} + +/* matches the element with id="#fake-id" */ +#_-1\\#fake-id { + color: antiquewhite; +} + +/* matches the element with id="-a-b-c-" */ +#_-1-a-b-c- { + color: azure; +} + +/* matches the element with id="©" */ +#_-1© { + color: black; +} + +._-1♥ { background: lime; } +._-1© { background: lime; } +._-1😍 { background: lime; } +._-1“‘’” { background: lime; } +._-1☺☃ { background: lime; } +._-1⌘⌥ { background: lime; } +._-1𝄞♪♩♫♬ { background: lime; } +._-1💩 { background: lime; } +._-1\\? { background: lime; } +._-1\\@ { background: lime; } +._-1\\. { background: lime; } +._-1\\3A \\) { background: lime; } +._-1\\3A \\\`\\( { background: lime; } +._-1\\31 23 { background: lime; } +._-1\\31 a2b3c { background: lime; } +._-1\\ { background: lime; } +._-1\\<\\>\\<\\<\\<\\>\\>\\<\\> { background: lime; } +._-1\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\[\\>\\+\\+\\+\\+\\+\\+\\+\\>\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\>\\+\\+\\+\\>\\+\\<\\<\\<\\<\\-\\]\\>\\+\\+\\.\\>\\+\\.\\+\\+\\+\\+\\+\\+\\+\\.\\.\\+\\+\\+\\.\\>\\+\\+\\.\\<\\<\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\.\\>\\.\\+\\+\\+\\.\\-\\-\\-\\-\\-\\-\\.\\-\\-\\-\\-\\-\\-\\-\\-\\.\\>\\+\\.\\>\\. { background: lime; } +._-1\\# { background: lime; } +._-1\\#\\# { background: lime; } +._-1\\#\\.\\#\\.\\# { background: lime; } +._-1\\_ { background: lime; } +._-1\\{\\} { background: lime; } +._-1\\#fake\\-id { background: lime; } +._-1foo\\.bar { background: lime; } +._-1\\3A hover { background: lime; } +._-1\\3A hover\\3A focus\\3A active { background: lime; } +._-1\\[attr\\=value\\] { background: lime; } +._-1f\\/o\\/o { background: lime; } +._-1f\\\\o\\\\o { background: lime; } +._-1f\\*o\\*o { background: lime; } +._-1f\\!o\\!o { background: lime; } +._-1f\\'o\\'o { background: lime; } +._-1f\\~o\\~o { background: lime; } +._-1f\\+o\\+o { background: lime; } + +._-1foo\\/bar { + background: hotpink; +} + +._-1foo\\\\bar { + background: hotpink; +} + +._-1foo\\/bar\\/baz { + background: hotpink; +} + +._-1foo\\\\bar\\\\baz { + background: hotpink; +} +", + "", + ], +] +`; + +exports[`"modules" option should work and prefix leading hyphen when digit is first: warnings 1`] = `[]`; + +exports[`"modules" option should work and respect the "context" option: errors 1`] = `[]`; + +exports[`"modules" option should work and respect the "context" option: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../../src/runtime/api.js"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`.Cqfpw57I { + background: red; +} + +.TGo4Rmnn { + background: blue; +} + +.V3rkzYqn { + background: red; +} + +#p0emrDgk { + background: green; +} + +.V3rkzYqn .v0YwV1mq { + color: green; +} + +#p0emrDgk .v0YwV1mq { + color: blue; +} + +.iD7O58t6 { + color: red; +} + +.RH_w1QEb { + margin-left: auto !important; + margin-right: auto !important; +} + +.Ag92YvL3 { + margin-left: auto !important; + margin-right: auto !important; +} + +/* matches elements with class=":\\\`(" */ +.ETB9N0Rx { + color: aqua; +} + +/* matches elements with class="1a2b3c" */ +.LEy8bpHz { + color: aliceblue; +} + +/* matches the element with id="#fake-id" */ +#JOQqQG3P { + color: antiquewhite; +} + +/* matches the element with id="-a-b-c-" */ +#LD6vZ0vn { + color: azure; +} + +/* matches the element with id="©" */ +#bD4iEyBe { + color: black; +} + +.pHooKEFO { background: lime; } +.bD4iEyBe { background: lime; } +.MkprjEQN { background: lime; } +.hsoP1NHa { background: lime; } +.AERfnIsn { background: lime; } +.s83tEkiy { background: lime; } +.sIO5dUZQ { background: lime; } +.zVi6sc5A { background: lime; } +.N9lQNAW2 { background: lime; } +.SysYqBF2 { background: lime; } +._TYYa2xJ { background: lime; } +.TFikf3jN { background: lime; } +.ETB9N0Rx { background: lime; } +.DEfkSXfj { background: lime; } +.LEy8bpHz { background: lime; } +.nMEppSss { background: lime; } +.cGH8351B { background: lime; } +._sBaAj4v { background: lime; } +.Ig420xMn { background: lime; } +.t_MNCpGV { background: lime; } +.ozULn22d { background: lime; } +.qR0Vnn20 { background: lime; } +.tt66IaNP { background: lime; } +.JOQqQG3P { background: lime; } +.RFVWf69B { background: lime; } +.QnhABYwt { background: lime; } +.qRhRpbmB { background: lime; } +.wkL_QN8C { background: lime; } +.KDSjlnnR { background: lime; } +.LsVcYH6Y { background: lime; } +.CNQowmKT { background: lime; } +.eUsF4mDa { background: lime; } +.ESWnsA_A { background: lime; } +.taQ7D9sF { background: lime; } +.AL7FEeDx { background: lime; } + +.GOPxpaxq { + background: hotpink; +} + +.chesbSdq { + background: hotpink; +} + +.QMeNd406 { + background: hotpink; +} + +.jXaakDKS { + background: hotpink; +} +\`, ""]); +// Exports +var _1 = \`DEfkSXfj\`; +export { _1 as "123" }; +export var test = \`Cqfpw57I\`; +export var _test = \`TGo4Rmnn\`; +export var className = \`V3rkzYqn\`; +export var someId = \`p0emrDgk\`; +export var subClass = \`v0YwV1mq\`; +var _2 = \`iD7O58t6\`; +export { _2 as "-a0-34a___f" }; +var _3 = \`RH_w1QEb\`; +export { _3 as "m_x_@" }; +var _4 = \`Ag92YvL3\`; +export { _4 as "B&W?" }; +var _5 = \`ETB9N0Rx\`; +export { _5 as ":\`(" }; +var _6 = \`LEy8bpHz\`; +export { _6 as "1a2b3c" }; +var _7 = \`JOQqQG3P\`; +export { _7 as "#fake-id" }; +var _8 = \`LD6vZ0vn\`; +export { _8 as "-a-b-c-" }; +var _9 = \`bD4iEyBe\`; +export { _9 as "©" }; +var _a = \`pHooKEFO\`; +export { _a as "♥" }; +var _b = \`MkprjEQN\`; +export { _b as "😍" }; +var _c = \`hsoP1NHa\`; +export { _c as "“‘’”" }; +var _d = \`AERfnIsn\`; +export { _d as "☺☃" }; +var _e = \`s83tEkiy\`; +export { _e as "⌘⌥" }; +var _f = \`sIO5dUZQ\`; +export { _f as "𝄞♪♩♫♬" }; +var _10 = \`zVi6sc5A\`; +export { _10 as "💩" }; +var _11 = \`N9lQNAW2\`; +export { _11 as "?" }; +var _12 = \`SysYqBF2\`; +export { _12 as "@" }; +var _13 = \`_TYYa2xJ\`; +export { _13 as "." }; +var _14 = \`TFikf3jN\`; +export { _14 as ":)" }; +var _15 = \`nMEppSss\`; +export { _15 as "

" }; +var _16 = \`cGH8351B\`; +export { _16 as "<><<<>><>" }; +var _17 = \`_sBaAj4v\`; +export { _17 as "++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>." }; +var _18 = \`Ig420xMn\`; +export { _18 as "#" }; +var _19 = \`t_MNCpGV\`; +export { _19 as "##" }; +var _1a = \`ozULn22d\`; +export { _1a as "#.#.#" }; +export var _ = \`qR0Vnn20\`; +var _1b = \`tt66IaNP\`; +export { _1b as "{}" }; +var _1c = \`RFVWf69B\`; +export { _1c as "foo.bar" }; +var _1d = \`QnhABYwt\`; +export { _1d as ":hover" }; +var _1e = \`qRhRpbmB\`; +export { _1e as ":hover:focus:active" }; +var _1f = \`wkL_QN8C\`; +export { _1f as "[attr=value]" }; +var _20 = \`KDSjlnnR\`; +export { _20 as "f/o/o" }; +var _21 = \`LsVcYH6Y\`; +export { _21 as "f\\\\o\\\\o" }; +var _22 = \`CNQowmKT\`; +export { _22 as "f*o*o" }; +var _23 = \`eUsF4mDa\`; +export { _23 as "f!o!o" }; +var _24 = \`ESWnsA_A\`; +export { _24 as "f'o'o" }; +var _25 = \`taQ7D9sF\`; +export { _25 as "f~o~o" }; +var _26 = \`AL7FEeDx\`; +export { _26 as "f+o+o" }; +var _27 = \`GOPxpaxq\`; +export { _27 as "foo/bar" }; +var _28 = \`chesbSdq\`; +export { _28 as "foo\\\\bar" }; +var _29 = \`QMeNd406\`; +export { _29 as "foo/bar/baz" }; +var _2a = \`jXaakDKS\`; +export { _2a as "foo\\\\bar\\\\baz" }; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should work and respect the "context" option: result 1`] = ` +[ + [ + "./modules/localIdentName/localIdentName.css", + ".Cqfpw57I { + background: red; +} + +.TGo4Rmnn { + background: blue; +} + +.V3rkzYqn { + background: red; +} + +#p0emrDgk { + background: green; +} + +.V3rkzYqn .v0YwV1mq { + color: green; +} + +#p0emrDgk .v0YwV1mq { + color: blue; +} + +.iD7O58t6 { + color: red; +} + +.RH_w1QEb { + margin-left: auto !important; + margin-right: auto !important; +} + +.Ag92YvL3 { + margin-left: auto !important; + margin-right: auto !important; +} + +/* matches elements with class=":\`(" */ +.ETB9N0Rx { + color: aqua; +} + +/* matches elements with class="1a2b3c" */ +.LEy8bpHz { + color: aliceblue; +} + +/* matches the element with id="#fake-id" */ +#JOQqQG3P { + color: antiquewhite; +} + +/* matches the element with id="-a-b-c-" */ +#LD6vZ0vn { + color: azure; +} + +/* matches the element with id="©" */ +#bD4iEyBe { + color: black; +} + +.pHooKEFO { background: lime; } +.bD4iEyBe { background: lime; } +.MkprjEQN { background: lime; } +.hsoP1NHa { background: lime; } +.AERfnIsn { background: lime; } +.s83tEkiy { background: lime; } +.sIO5dUZQ { background: lime; } +.zVi6sc5A { background: lime; } +.N9lQNAW2 { background: lime; } +.SysYqBF2 { background: lime; } +._TYYa2xJ { background: lime; } +.TFikf3jN { background: lime; } +.ETB9N0Rx { background: lime; } +.DEfkSXfj { background: lime; } +.LEy8bpHz { background: lime; } +.nMEppSss { background: lime; } +.cGH8351B { background: lime; } +._sBaAj4v { background: lime; } +.Ig420xMn { background: lime; } +.t_MNCpGV { background: lime; } +.ozULn22d { background: lime; } +.qR0Vnn20 { background: lime; } +.tt66IaNP { background: lime; } +.JOQqQG3P { background: lime; } +.RFVWf69B { background: lime; } +.QnhABYwt { background: lime; } +.qRhRpbmB { background: lime; } +.wkL_QN8C { background: lime; } +.KDSjlnnR { background: lime; } +.LsVcYH6Y { background: lime; } +.CNQowmKT { background: lime; } +.eUsF4mDa { background: lime; } +.ESWnsA_A { background: lime; } +.taQ7D9sF { background: lime; } +.AL7FEeDx { background: lime; } + +.GOPxpaxq { + background: hotpink; +} + +.chesbSdq { + background: hotpink; +} + +.QMeNd406 { + background: hotpink; +} + +.jXaakDKS { + background: hotpink; +} +", + "", + ], +] +`; + +exports[`"modules" option should work and respect the "context" option: warnings 1`] = `[]`; + +exports[`"modules" option should work and respect the "exportLocalsConvention" option with the "function" type and returns array names: errors 1`] = `[]`; + +exports[`"modules" option should work and respect the "exportLocalsConvention" option with the "function" type and returns array names: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../../src/runtime/api.js"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`.rmc8ltu8P1VXaeqLNU6N { + color: blue; +} + +.AooVHuvzAIGXWngdfslc { + color: blue; +} + +.snmJCrfw3LVnrlx87XVC { + color: red; +} + +a { + color: yellow; +} + +.vA4oeh0XymefKJVIJyg1 { + color: red; +} + +.mDiC1MIOTWjgsd86woaJ { + color: red; +} + +.kY3VVFqpzmTiFlxOd9KU { + color: red; +} + +.eiLdMC_n9TCXQ0oPIJyI { + color: red; +} +\`, ""]); +// Exports +export var foo_TEST_1 = \`bar\`; +export var foo_TEST_3 = \`bar\`; +export var my_btn_info_is_disabled_TEST_1 = \`value\`; +export var my_btn_info_is_disabled_TEST_3 = \`value\`; +export var btn_info_is_disabled_TEST_1 = \`rmc8ltu8P1VXaeqLNU6N\`; +export var btn_info_is_disabled_TEST_3 = \`rmc8ltu8P1VXaeqLNU6N\`; +export var btn__info_is_disabled_1_TEST_1 = \`AooVHuvzAIGXWngdfslc\`; +export var btn__info_is_disabled_1_TEST_3 = \`AooVHuvzAIGXWngdfslc\`; +export var simple_TEST_1 = \`snmJCrfw3LVnrlx87XVC\`; +export var simple_TEST_3 = \`snmJCrfw3LVnrlx87XVC\`; +export var foo_bar_TEST_1 = \`vA4oeh0XymefKJVIJyg1\`; +export var foo_bar_TEST_3 = \`vA4oeh0XymefKJVIJyg1\`; +export var class_TEST_1 = \`mDiC1MIOTWjgsd86woaJ\`; +export var class_TEST_3 = \`mDiC1MIOTWjgsd86woaJ\`; +export var fooBarBaz_TEST_1 = \`kY3VVFqpzmTiFlxOd9KU\`; +export var fooBarBaz_TEST_3 = \`kY3VVFqpzmTiFlxOd9KU\`; +export var b_TEST_1 = \`eiLdMC_n9TCXQ0oPIJyI\`; +export var b_TEST_3 = \`eiLdMC_n9TCXQ0oPIJyI\`; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should work and respect the "exportLocalsConvention" option with the "function" type and returns array names: result 1`] = ` +[ + [ + "./modules/localsConvention/localsConvention.css", + ".rmc8ltu8P1VXaeqLNU6N { + color: blue; +} + +.AooVHuvzAIGXWngdfslc { + color: blue; +} + +.snmJCrfw3LVnrlx87XVC { + color: red; +} + +a { + color: yellow; +} + +.vA4oeh0XymefKJVIJyg1 { + color: red; +} + +.mDiC1MIOTWjgsd86woaJ { + color: red; +} + +.kY3VVFqpzmTiFlxOd9KU { + color: red; +} + +.eiLdMC_n9TCXQ0oPIJyI { + color: red; +} +", + "", + ], +] +`; + +exports[`"modules" option should work and respect the "exportLocalsConvention" option with the "function" type and returns array names: warnings 1`] = `[]`; + +exports[`"modules" option should work and respect the "exportLocalsConvention" option with the "function" type: errors 1`] = `[]`; + +exports[`"modules" option should work and respect the "exportLocalsConvention" option with the "function" type: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../../src/runtime/api.js"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`.rmc8ltu8P1VXaeqLNU6N { + color: blue; +} + +.AooVHuvzAIGXWngdfslc { + color: blue; +} + +.snmJCrfw3LVnrlx87XVC { + color: red; +} + +a { + color: yellow; +} + +.vA4oeh0XymefKJVIJyg1 { + color: red; +} + +.mDiC1MIOTWjgsd86woaJ { + color: red; +} + +.kY3VVFqpzmTiFlxOd9KU { + color: red; +} + +.eiLdMC_n9TCXQ0oPIJyI { + color: red; +} +\`, ""]); +// Exports +export var foo_TEST = \`bar\`; +export var my_btn_info_is_disabled_TEST = \`value\`; +export var btn_info_is_disabled_TEST = \`rmc8ltu8P1VXaeqLNU6N\`; +export var btn__info_is_disabled_1_TEST = \`AooVHuvzAIGXWngdfslc\`; +export var simple_TEST = \`snmJCrfw3LVnrlx87XVC\`; +export var foo_bar_TEST = \`vA4oeh0XymefKJVIJyg1\`; +export var class_TEST = \`mDiC1MIOTWjgsd86woaJ\`; +export var fooBarBaz_TEST = \`kY3VVFqpzmTiFlxOd9KU\`; +export var b_TEST = \`eiLdMC_n9TCXQ0oPIJyI\`; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should work and respect the "exportLocalsConvention" option with the "function" type: result 1`] = ` +[ + [ + "./modules/localsConvention/localsConvention.css", + ".rmc8ltu8P1VXaeqLNU6N { + color: blue; +} + +.AooVHuvzAIGXWngdfslc { + color: blue; +} + +.snmJCrfw3LVnrlx87XVC { + color: red; +} + +a { + color: yellow; +} + +.vA4oeh0XymefKJVIJyg1 { + color: red; +} + +.mDiC1MIOTWjgsd86woaJ { + color: red; +} + +.kY3VVFqpzmTiFlxOd9KU { + color: red; +} + +.eiLdMC_n9TCXQ0oPIJyI { + color: red; +} +", + "", + ], +] +`; + +exports[`"modules" option should work and respect the "exportLocalsConvention" option with the "function" type: warnings 1`] = `[]`; + +exports[`"modules" option should work and respect the "exportOnlyLocals" option: errors 1`] = `[]`; + +exports[`"modules" option should work and respect the "exportOnlyLocals" option: module 1`] = ` +"// Imports +import * as ___CSS_LOADER_ICSS_IMPORT_0____NAMED___ from "-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./values.css"; +import * as ___CSS_LOADER_ICSS_IMPORT_1____NAMED___ from "-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./something.css"; +import * as ___CSS_LOADER_ICSS_IMPORT_2____NAMED___ from "-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./imported-simple.css"; +import * as ___CSS_LOADER_ICSS_IMPORT_3____NAMED___ from "-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./relative.css"; +import * as ___CSS_LOADER_ICSS_IMPORT_4____NAMED___ from "-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./top-relative.css"; +import * as ___CSS_LOADER_ICSS_IMPORT_5____NAMED___ from "-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!../issue-861/node_modules/package/style.css"; +import * as ___CSS_LOADER_ICSS_IMPORT_6____NAMED___ from "-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./alias.css"; +import * as ___CSS_LOADER_ICSS_IMPORT_7____NAMED___ from "-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!sass-loader!./scss-file.scss"; +// Exports +var _1 = \`\${___CSS_LOADER_ICSS_IMPORT_0____NAMED___["v-def"]}\`; +export { _1 as "v-def" }; +var _2 = \`\${___CSS_LOADER_ICSS_IMPORT_0____NAMED___["v-other"]}\`; +export { _2 as "v-other" }; +var _3 = \`\${___CSS_LOADER_ICSS_IMPORT_0____NAMED___["s-white"]}\`; +export { _3 as "s-white" }; +var _4 = \`\${___CSS_LOADER_ICSS_IMPORT_0____NAMED___["m-small"]}\`; +export { _4 as "m-small" }; +var _5 = \`\${___CSS_LOADER_ICSS_IMPORT_1____NAMED___["v-something"]}\`; +export { _5 as "v-something" }; +var _6 = \`blue\`; +export { _6 as "v-foo" }; +var _7 = \`block\`; +export { _7 as "v-bar" }; +var _8 = \`#BF4040\`; +export { _8 as "v-primary" }; +var _9 = \`black-selector\`; +export { _9 as "s-black" }; +var _a = \`(min-width: 960px)\`; +export { _a as "m-large" }; +var _b = \`validIdent\`; +export { _b as "v-ident" }; +var _c = \`left\`; +export { _c as "v-pre-defined-ident" }; +var _d = \`'content'\`; +export { _d as "v-string" }; +var _e = \`''\`; +export { _e as "v-string-1" }; +var _f = \`url(https://www.exammple.com/images/my-background.png)\`; +export { _f as "v-url" }; +var _10 = \`url('https://www.exammple.com/images/my-background.png')\`; +export { _10 as "v-url-1" }; +var _11 = \`url("https://www.exammple.com/images/my-background.png")\`; +export { _11 as "v-url-2" }; +var _12 = \`100\`; +export { _12 as "v-integer" }; +var _13 = \`-100\`; +export { _13 as "v-integer-1" }; +var _14 = \`+100\`; +export { _14 as "v-integer-2" }; +var _15 = \`.60\`; +export { _15 as "v-number" }; +var _16 = \`-456.8\`; +export { _16 as "v-number-1" }; +var _17 = \`-3.4e-2\`; +export { _17 as "v-number-2" }; +var _18 = \`12px\`; +export { _18 as "v-dimension" }; +var _19 = \`100%\`; +export { _19 as "v-percentage" }; +var _1a = \`#fff\`; +export { _1a as "v-hex" }; +var _1b = \` /* comment */\`; +export { _1b as "v-comment" }; +var _1c = \`rgb(0,0,0)\`; +export { _1c as "v-function" }; +var _1d = \`U+0025-00FF\`; +export { _1d as "v-unicode-range" }; +export var ghi = \`_ghi\`; +var _1e = \`_my-class\`; +export { _1e as "my-class" }; +export var other = \`_other\`; +var _1f = \`_other-other\`; +export { _1f as "other-other" }; +export var green = \`_green\`; +export var foo = \`_foo\`; +export var simple = \`_simple \${___CSS_LOADER_ICSS_IMPORT_2____NAMED___["imported-simple"]}\`; +export var relative = \`_relative \${___CSS_LOADER_ICSS_IMPORT_3____NAMED___["imported-relative"]}\`; +var _20 = \`_top-relative \${___CSS_LOADER_ICSS_IMPORT_4____NAMED___["imported-relative"]}\`; +export { _20 as "top-relative" }; +var _21 = \`_my-module \${___CSS_LOADER_ICSS_IMPORT_5____NAMED___["imported-module"]}\`; +export { _21 as "my-module" }; +export var alias = \`_alias \${___CSS_LOADER_ICSS_IMPORT_6____NAMED___["imported-alias"]}\`; +var _22 = \`_alias-duplicate \${___CSS_LOADER_ICSS_IMPORT_6____NAMED___["imported-alias"]}\`; +export { _22 as "alias-duplicate" }; +var _23 = \`_primary-selector\`; +export { _23 as "primary-selector" }; +var _24 = \`_black-selector\`; +export { _24 as "black-selector" }; +export var header = \`_header\`; +export var foobarbaz = \`_foobarbaz\`; +export var url = \`_url\`; +export var main = \`_main \${___CSS_LOADER_ICSS_IMPORT_7____NAMED___["scssClass"]}\`; +" +`; + +exports[`"modules" option should work and respect the "exportOnlyLocals" option: result 1`] = ` +{ + "alias": "_alias _imported-alias", + "alias-duplicate": "_alias-duplicate _imported-alias", + "black-selector": "_black-selector", + "foo": "_foo", + "foobarbaz": "_foobarbaz", + "ghi": "_ghi", + "green": "_green", + "header": "_header", + "m-large": "(min-width: 960px)", + "m-small": "(min-width: 320px)", + "main": "_main _scssClass", + "my-class": "_my-class", + "my-module": "_my-module _imported-module", + "other": "_other", + "other-other": "_other-other", + "primary-selector": "_primary-selector", + "relative": "_relative _imported-relative", + "s-black": "black-selector", + "s-white": "white", + "simple": "_simple _imported-simple", + "top-relative": "_top-relative _imported-relative", + "url": "_url", + "v-bar": "block", + "v-comment": " /* comment */", + "v-def": "red", + "v-dimension": "12px", + "v-foo": "blue", + "v-function": "rgb(0,0,0)", + "v-hex": "#fff", + "v-ident": "validIdent", + "v-integer": "100", + "v-integer-1": "-100", + "v-integer-2": "+100", + "v-number": ".60", + "v-number-1": "-456.8", + "v-number-2": "-3.4e-2", + "v-other": "green", + "v-percentage": "100%", + "v-pre-defined-ident": "left", + "v-primary": "#BF4040", + "v-something": "2112moon", + "v-string": "'content'", + "v-string-1": "''", + "v-unicode-range": "U+0025-00FF", + "v-url": "url(https://www.exammple.com/images/my-background.png)", + "v-url-1": "url('https://www.exammple.com/images/my-background.png')", + "v-url-2": "url("https://www.exammple.com/images/my-background.png")", +} +`; + +exports[`"modules" option should work and respect the "exportOnlyLocals" option: warnings 1`] = ` +[ + "ModuleWarning: Module Warning (from \`replaced original path\`): +Deprecation The legacy JS API is deprecated and will be removed in Dart Sass 2.0.0. + +More info: https://sass-lang.com/d/legacy-js-api", +] +`; + +exports[`"modules" option should work and respect the "getLocalIdent" option: errors 1`] = `[]`; + +exports[`"modules" option should work and respect the "getLocalIdent" option: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../../src/runtime/api.js"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`.foo { + background: red; +} + +.foo { + background: blue; +} + +.foo { + background: red; +} + +#foo { + background: green; +} + +.foo .foo { + color: green; +} + +#foo .foo { + color: blue; +} + +.foo { + color: red; +} + +.foo { + margin-left: auto !important; + margin-right: auto !important; +} + +.foo { + margin-left: auto !important; + margin-right: auto !important; +} + +/* matches elements with class=":\\\`(" */ +.foo { + color: aqua; +} + +/* matches elements with class="1a2b3c" */ +.foo { + color: aliceblue; +} + +/* matches the element with id="#fake-id" */ +#foo { + color: antiquewhite; +} + +/* matches the element with id="-a-b-c-" */ +#foo { + color: azure; +} + +/* matches the element with id="©" */ +#foo { + color: black; +} + +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } + +.foo { + background: hotpink; +} + +.foo { + background: hotpink; +} + +.foo { + background: hotpink; +} + +.foo { + background: hotpink; +} +\`, ""]); +// Exports +var _1 = \`foo\`; +export { _1 as "123" }; +export var test = \`foo\`; +export var _test = \`foo\`; +export var className = \`foo\`; +export var someId = \`foo\`; +export var subClass = \`foo\`; +var _2 = \`foo\`; +export { _2 as "-a0-34a___f" }; +var _3 = \`foo\`; +export { _3 as "m_x_@" }; +var _4 = \`foo\`; +export { _4 as "B&W?" }; +var _5 = \`foo\`; +export { _5 as ":\`(" }; +var _6 = \`foo\`; +export { _6 as "1a2b3c" }; +var _7 = \`foo\`; +export { _7 as "#fake-id" }; +var _8 = \`foo\`; +export { _8 as "-a-b-c-" }; +var _9 = \`foo\`; +export { _9 as "©" }; +var _a = \`foo\`; +export { _a as "♥" }; +var _b = \`foo\`; +export { _b as "😍" }; +var _c = \`foo\`; +export { _c as "“‘’”" }; +var _d = \`foo\`; +export { _d as "☺☃" }; +var _e = \`foo\`; +export { _e as "⌘⌥" }; +var _f = \`foo\`; +export { _f as "𝄞♪♩♫♬" }; +var _10 = \`foo\`; +export { _10 as "💩" }; +var _11 = \`foo\`; +export { _11 as "?" }; +var _12 = \`foo\`; +export { _12 as "@" }; +var _13 = \`foo\`; +export { _13 as "." }; +var _14 = \`foo\`; +export { _14 as ":)" }; +var _15 = \`foo\`; +export { _15 as "

" }; +var _16 = \`foo\`; +export { _16 as "<><<<>><>" }; +var _17 = \`foo\`; +export { _17 as "++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>." }; +var _18 = \`foo\`; +export { _18 as "#" }; +var _19 = \`foo\`; +export { _19 as "##" }; +var _1a = \`foo\`; +export { _1a as "#.#.#" }; +export var _ = \`foo\`; +var _1b = \`foo\`; +export { _1b as "{}" }; +var _1c = \`foo\`; +export { _1c as "foo.bar" }; +var _1d = \`foo\`; +export { _1d as ":hover" }; +var _1e = \`foo\`; +export { _1e as ":hover:focus:active" }; +var _1f = \`foo\`; +export { _1f as "[attr=value]" }; +var _20 = \`foo\`; +export { _20 as "f/o/o" }; +var _21 = \`foo\`; +export { _21 as "f\\\\o\\\\o" }; +var _22 = \`foo\`; +export { _22 as "f*o*o" }; +var _23 = \`foo\`; +export { _23 as "f!o!o" }; +var _24 = \`foo\`; +export { _24 as "f'o'o" }; +var _25 = \`foo\`; +export { _25 as "f~o~o" }; +var _26 = \`foo\`; +export { _26 as "f+o+o" }; +var _27 = \`foo\`; +export { _27 as "foo/bar" }; +var _28 = \`foo\`; +export { _28 as "foo\\\\bar" }; +var _29 = \`foo\`; +export { _29 as "foo/bar/baz" }; +var _2a = \`foo\`; +export { _2a as "foo\\\\bar\\\\baz" }; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should work and respect the "getLocalIdent" option: result 1`] = ` +[ + [ + "./modules/localIdentName/localIdentName.css", + ".foo { + background: red; +} + +.foo { + background: blue; +} + +.foo { + background: red; +} + +#foo { + background: green; +} + +.foo .foo { + color: green; +} + +#foo .foo { + color: blue; +} + +.foo { + color: red; +} + +.foo { + margin-left: auto !important; + margin-right: auto !important; +} + +.foo { + margin-left: auto !important; + margin-right: auto !important; +} + +/* matches elements with class=":\`(" */ +.foo { + color: aqua; +} + +/* matches elements with class="1a2b3c" */ +.foo { + color: aliceblue; +} + +/* matches the element with id="#fake-id" */ +#foo { + color: antiquewhite; +} + +/* matches the element with id="-a-b-c-" */ +#foo { + color: azure; +} + +/* matches the element with id="©" */ +#foo { + color: black; +} + +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } + +.foo { + background: hotpink; +} + +.foo { + background: hotpink; +} + +.foo { + background: hotpink; +} + +.foo { + background: hotpink; +} +", + "", + ], +] +`; + +exports[`"modules" option should work and respect the "getLocalIdent" option: warnings 1`] = `[]`; + +exports[`"modules" option should work and respect the "hashSalt" option: errors 1`] = `[]`; + +exports[`"modules" option should work and respect the "hashSalt" option: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../../src/runtime/api.js"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`.test--a5c5ad41747f587b6274 { + background: red; +} + +._test--df4a97df5d4981c18fd3 { + background: blue; +} + +.className--f51a39697d46ec360e5d { + background: red; +} + +#someId--a66e8413a3c261c3b5db { + background: green; +} + +.className--f51a39697d46ec360e5d .subClass--a2c5762a1671ee02d495 { + color: green; +} + +#someId--a66e8413a3c261c3b5db .subClass--a2c5762a1671ee02d495 { + color: blue; +} + +.-a0-34a___f--bcceae76b21ea32837d1 { + color: red; +} + +.m_x_\\\\@--bf8f3ed982973d67547f { + margin-left: auto !important; + margin-right: auto !important; +} + +.B\\\\&W\\\\?--fdee73d5165bc2acf73d { + margin-left: auto !important; + margin-right: auto !important; +} + +/* matches elements with class=":\\\`(" */ +.\\\\3A \\\\\\\`\\\\(--daecad79b824a8ae7e46 { + color: aqua; +} + +/* matches elements with class="1a2b3c" */ +.\\\\31 a2b3c--d785e50a661529be89f2 { + color: aliceblue; +} + +/* matches the element with id="#fake-id" */ +#\\\\#fake-id--a2d7428449895097291a { + color: antiquewhite; +} + +/* matches the element with id="-a-b-c-" */ +#-a-b-c---ccf3274dd45a8534913a { + color: azure; +} + +/* matches the element with id="©" */ +#©--adb36177ba3316dd9afb { + color: black; +} + +.♥--c663262caaf9ada1c6a0 { background: lime; } +.©--adb36177ba3316dd9afb { background: lime; } +.😍--d8e76280f5be316bb39c { background: lime; } +.“‘’”--f87afd60ed2beca8050a { background: lime; } +.☺☃--fe372e2946d00a877026 { background: lime; } +.⌘⌥--fc006a6459cc592e3b7c { background: lime; } +.𝄞♪♩♫♬--fd618d266b80203525ea { background: lime; } +.💩--da6582591f548841513d { background: lime; } +.\\\\?--b11162427f8dc0109aaf { background: lime; } +.\\\\@--bb281d67eaa9e09d6112 { background: lime; } +.\\\\.--b1699afe1173ecd986e4 { background: lime; } +.\\\\3A \\\\)--a94f76ff951371f51151 { background: lime; } +.\\\\3A \\\\\\\`\\\\(--daecad79b824a8ae7e46 { background: lime; } +.\\\\31 23--d235ae87e4273d19e7e5 { background: lime; } +.\\\\31 a2b3c--d785e50a661529be89f2 { background: lime; } +.\\\\--cc00b17b428adef51f6c { background: lime; } +.\\\\<\\\\>\\\\<\\\\<\\\\<\\\\>\\\\>\\\\<\\\\>--a2a770d06d29491cb90e { background: lime; } +.\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\[\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\>\\\\+\\\\<\\\\<\\\\<\\\\<\\\\-\\\\]\\\\>\\\\+\\\\+\\\\.\\\\>\\\\+\\\\.\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\.\\\\+\\\\+\\\\+\\\\.\\\\>\\\\+\\\\+\\\\.\\\\<\\\\<\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\>\\\\.\\\\+\\\\+\\\\+\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\>\\\\+\\\\.\\\\>\\\\.--cc7846d4433278cb7dc4 { background: lime; } +.\\\\#--c7a943b3297883fd2089 { background: lime; } +.\\\\#\\\\#--ea628e8df88221969552 { background: lime; } +.\\\\#\\\\.\\\\#\\\\.\\\\#--dea710d8c9521902e062 { background: lime; } +.\\\\_--e9f571bfd47fb40b377c { background: lime; } +.\\\\{\\\\}--def5f97b0ff315e9c069 { background: lime; } +.\\\\#fake\\\\-id--a2d7428449895097291a { background: lime; } +.foo\\\\.bar--a4aa4a1a78b94ac062a8 { background: lime; } +.\\\\3A hover--cc13dcdd34f352f8db26 { background: lime; } +.\\\\3A hover\\\\3A focus\\\\3A active--de4f205b1da2542a3508 { background: lime; } +.\\\\[attr\\\\=value\\\\]--ed6f9744ffabc36e81fd { background: lime; } +.f\\\\/o\\\\/o--fef3c40a18a3bdc6aadf { background: lime; } +.f\\\\\\\\o\\\\\\\\o--bed5a37b85151828fd59 { background: lime; } +.f\\\\*o\\\\*o--dbb328bab1b211b02df5 { background: lime; } +.f\\\\!o\\\\!o--d35399e626d374f6a536 { background: lime; } +.f\\\\'o\\\\'o--dffb0a3cb0c3b935c5f4 { background: lime; } +.f\\\\~o\\\\~o--f3f5d93f57c13ee77bb5 { background: lime; } +.f\\\\+o\\\\+o--d70c625b18c77fdca148 { background: lime; } + +.foo\\\\/bar--bb4ad2f425527544553f { + background: hotpink; +} + +.foo\\\\\\\\bar--e8ba4f9a74f8b7fa8361 { + background: hotpink; +} + +.foo\\\\/bar\\\\/baz--b5eb40201778b94976f0 { + background: hotpink; +} + +.foo\\\\\\\\bar\\\\\\\\baz--b178648b8128f2bbc548 { + background: hotpink; +} +\`, ""]); +// Exports +var _1 = \`123--d235ae87e4273d19e7e5\`; +export { _1 as "123" }; +export var test = \`test--a5c5ad41747f587b6274\`; +export var _test = \`_test--df4a97df5d4981c18fd3\`; +export var className = \`className--f51a39697d46ec360e5d\`; +export var someId = \`someId--a66e8413a3c261c3b5db\`; +export var subClass = \`subClass--a2c5762a1671ee02d495\`; +var _2 = \`-a0-34a___f--bcceae76b21ea32837d1\`; +export { _2 as "-a0-34a___f" }; +var _3 = \`m_x_@--bf8f3ed982973d67547f\`; +export { _3 as "m_x_@" }; +var _4 = \`B&W?--fdee73d5165bc2acf73d\`; +export { _4 as "B&W?" }; +var _5 = \`:\\\`(--daecad79b824a8ae7e46\`; +export { _5 as ":\`(" }; +var _6 = \`1a2b3c--d785e50a661529be89f2\`; +export { _6 as "1a2b3c" }; +var _7 = \`#fake-id--a2d7428449895097291a\`; +export { _7 as "#fake-id" }; +var _8 = \`-a-b-c---ccf3274dd45a8534913a\`; +export { _8 as "-a-b-c-" }; +var _9 = \`©--adb36177ba3316dd9afb\`; +export { _9 as "©" }; +var _a = \`♥--c663262caaf9ada1c6a0\`; +export { _a as "♥" }; +var _b = \`😍--d8e76280f5be316bb39c\`; +export { _b as "😍" }; +var _c = \`“‘’”--f87afd60ed2beca8050a\`; +export { _c as "“‘’”" }; +var _d = \`☺☃--fe372e2946d00a877026\`; +export { _d as "☺☃" }; +var _e = \`⌘⌥--fc006a6459cc592e3b7c\`; +export { _e as "⌘⌥" }; +var _f = \`𝄞♪♩♫♬--fd618d266b80203525ea\`; +export { _f as "𝄞♪♩♫♬" }; +var _10 = \`💩--da6582591f548841513d\`; +export { _10 as "💩" }; +var _11 = \`?--b11162427f8dc0109aaf\`; +export { _11 as "?" }; +var _12 = \`@--bb281d67eaa9e09d6112\`; +export { _12 as "@" }; +var _13 = \`.--b1699afe1173ecd986e4\`; +export { _13 as "." }; +var _14 = \`:)--a94f76ff951371f51151\`; +export { _14 as ":)" }; +var _15 = \`

--cc00b17b428adef51f6c\`; +export { _15 as "

" }; +var _16 = \`<><<<>><>--a2a770d06d29491cb90e\`; +export { _16 as "<><<<>><>" }; +var _17 = \`++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.--cc7846d4433278cb7dc4\`; +export { _17 as "++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>." }; +var _18 = \`#--c7a943b3297883fd2089\`; +export { _18 as "#" }; +var _19 = \`##--ea628e8df88221969552\`; +export { _19 as "##" }; +var _1a = \`#.#.#--dea710d8c9521902e062\`; +export { _1a as "#.#.#" }; +export var _ = \`_--e9f571bfd47fb40b377c\`; +var _1b = \`{}--def5f97b0ff315e9c069\`; +export { _1b as "{}" }; +var _1c = \`foo.bar--a4aa4a1a78b94ac062a8\`; +export { _1c as "foo.bar" }; +var _1d = \`:hover--cc13dcdd34f352f8db26\`; +export { _1d as ":hover" }; +var _1e = \`:hover:focus:active--de4f205b1da2542a3508\`; +export { _1e as ":hover:focus:active" }; +var _1f = \`[attr=value]--ed6f9744ffabc36e81fd\`; +export { _1f as "[attr=value]" }; +var _20 = \`f/o/o--fef3c40a18a3bdc6aadf\`; +export { _20 as "f/o/o" }; +var _21 = \`f\\\\o\\\\o--bed5a37b85151828fd59\`; +export { _21 as "f\\\\o\\\\o" }; +var _22 = \`f*o*o--dbb328bab1b211b02df5\`; +export { _22 as "f*o*o" }; +var _23 = \`f!o!o--d35399e626d374f6a536\`; +export { _23 as "f!o!o" }; +var _24 = \`f'o'o--dffb0a3cb0c3b935c5f4\`; +export { _24 as "f'o'o" }; +var _25 = \`f~o~o--f3f5d93f57c13ee77bb5\`; +export { _25 as "f~o~o" }; +var _26 = \`f+o+o--d70c625b18c77fdca148\`; +export { _26 as "f+o+o" }; +var _27 = \`foo/bar--bb4ad2f425527544553f\`; +export { _27 as "foo/bar" }; +var _28 = \`foo\\\\bar--e8ba4f9a74f8b7fa8361\`; +export { _28 as "foo\\\\bar" }; +var _29 = \`foo/bar/baz--b5eb40201778b94976f0\`; +export { _29 as "foo/bar/baz" }; +var _2a = \`foo\\\\bar\\\\baz--b178648b8128f2bbc548\`; +export { _2a as "foo\\\\bar\\\\baz" }; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should work and respect the "hashSalt" option: result 1`] = ` +[ + [ + "./modules/localIdentName/localIdentName.css", + ".test--a5c5ad41747f587b6274 { + background: red; +} + +._test--df4a97df5d4981c18fd3 { + background: blue; +} + +.className--f51a39697d46ec360e5d { + background: red; +} + +#someId--a66e8413a3c261c3b5db { + background: green; +} + +.className--f51a39697d46ec360e5d .subClass--a2c5762a1671ee02d495 { + color: green; +} + +#someId--a66e8413a3c261c3b5db .subClass--a2c5762a1671ee02d495 { + color: blue; +} + +.-a0-34a___f--bcceae76b21ea32837d1 { + color: red; +} + +.m_x_\\@--bf8f3ed982973d67547f { + margin-left: auto !important; + margin-right: auto !important; +} + +.B\\&W\\?--fdee73d5165bc2acf73d { + margin-left: auto !important; + margin-right: auto !important; +} + +/* matches elements with class=":\`(" */ +.\\3A \\\`\\(--daecad79b824a8ae7e46 { + color: aqua; +} + +/* matches elements with class="1a2b3c" */ +.\\31 a2b3c--d785e50a661529be89f2 { + color: aliceblue; +} + +/* matches the element with id="#fake-id" */ +#\\#fake-id--a2d7428449895097291a { + color: antiquewhite; +} + +/* matches the element with id="-a-b-c-" */ +#-a-b-c---ccf3274dd45a8534913a { + color: azure; +} + +/* matches the element with id="©" */ +#©--adb36177ba3316dd9afb { + color: black; +} + +.♥--c663262caaf9ada1c6a0 { background: lime; } +.©--adb36177ba3316dd9afb { background: lime; } +.😍--d8e76280f5be316bb39c { background: lime; } +.“‘’”--f87afd60ed2beca8050a { background: lime; } +.☺☃--fe372e2946d00a877026 { background: lime; } +.⌘⌥--fc006a6459cc592e3b7c { background: lime; } +.𝄞♪♩♫♬--fd618d266b80203525ea { background: lime; } +.💩--da6582591f548841513d { background: lime; } +.\\?--b11162427f8dc0109aaf { background: lime; } +.\\@--bb281d67eaa9e09d6112 { background: lime; } +.\\.--b1699afe1173ecd986e4 { background: lime; } +.\\3A \\)--a94f76ff951371f51151 { background: lime; } +.\\3A \\\`\\(--daecad79b824a8ae7e46 { background: lime; } +.\\31 23--d235ae87e4273d19e7e5 { background: lime; } +.\\31 a2b3c--d785e50a661529be89f2 { background: lime; } +.\\--cc00b17b428adef51f6c { background: lime; } +.\\<\\>\\<\\<\\<\\>\\>\\<\\>--a2a770d06d29491cb90e { background: lime; } +.\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\[\\>\\+\\+\\+\\+\\+\\+\\+\\>\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\>\\+\\+\\+\\>\\+\\<\\<\\<\\<\\-\\]\\>\\+\\+\\.\\>\\+\\.\\+\\+\\+\\+\\+\\+\\+\\.\\.\\+\\+\\+\\.\\>\\+\\+\\.\\<\\<\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\.\\>\\.\\+\\+\\+\\.\\-\\-\\-\\-\\-\\-\\.\\-\\-\\-\\-\\-\\-\\-\\-\\.\\>\\+\\.\\>\\.--cc7846d4433278cb7dc4 { background: lime; } +.\\#--c7a943b3297883fd2089 { background: lime; } +.\\#\\#--ea628e8df88221969552 { background: lime; } +.\\#\\.\\#\\.\\#--dea710d8c9521902e062 { background: lime; } +.\\_--e9f571bfd47fb40b377c { background: lime; } +.\\{\\}--def5f97b0ff315e9c069 { background: lime; } +.\\#fake\\-id--a2d7428449895097291a { background: lime; } +.foo\\.bar--a4aa4a1a78b94ac062a8 { background: lime; } +.\\3A hover--cc13dcdd34f352f8db26 { background: lime; } +.\\3A hover\\3A focus\\3A active--de4f205b1da2542a3508 { background: lime; } +.\\[attr\\=value\\]--ed6f9744ffabc36e81fd { background: lime; } +.f\\/o\\/o--fef3c40a18a3bdc6aadf { background: lime; } +.f\\\\o\\\\o--bed5a37b85151828fd59 { background: lime; } +.f\\*o\\*o--dbb328bab1b211b02df5 { background: lime; } +.f\\!o\\!o--d35399e626d374f6a536 { background: lime; } +.f\\'o\\'o--dffb0a3cb0c3b935c5f4 { background: lime; } +.f\\~o\\~o--f3f5d93f57c13ee77bb5 { background: lime; } +.f\\+o\\+o--d70c625b18c77fdca148 { background: lime; } + +.foo\\/bar--bb4ad2f425527544553f { + background: hotpink; +} + +.foo\\\\bar--e8ba4f9a74f8b7fa8361 { + background: hotpink; +} + +.foo\\/bar\\/baz--b5eb40201778b94976f0 { + background: hotpink; +} + +.foo\\\\bar\\\\baz--b178648b8128f2bbc548 { + background: hotpink; +} +", + "", + ], +] +`; + +exports[`"modules" option should work and respect the "hashSalt" option: warnings 1`] = `[]`; + +exports[`"modules" option should work and respect the "hashStrategy" = "minimal-subset" and [local]: errors 1`] = `[]`; + +exports[`"modules" option should work and respect the "hashStrategy" = "minimal-subset" and [local]: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../../src/runtime/api.js"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`.test__iHMJbI42 { + background: red; +} + +._test__iHMJbI42 { + background: blue; +} + +.className__iHMJbI42 { + background: red; +} + +#someId__iHMJbI42 { + background: green; +} + +.className__iHMJbI42 .subClass__iHMJbI42 { + color: green; +} + +#someId__iHMJbI42 .subClass__iHMJbI42 { + color: blue; +} + +.-a0-34a___f__iHMJbI42 { + color: red; +} + +.m_x_\\\\@__iHMJbI42 { + margin-left: auto !important; + margin-right: auto !important; +} + +.B\\\\&W\\\\?__iHMJbI42 { + margin-left: auto !important; + margin-right: auto !important; +} + +/* matches elements with class=":\\\`(" */ +.\\\\3A \\\\\\\`\\\\(__iHMJbI42 { + color: aqua; +} + +/* matches elements with class="1a2b3c" */ +.\\\\31 a2b3c__iHMJbI42 { + color: aliceblue; +} + +/* matches the element with id="#fake-id" */ +#\\\\#fake-id__iHMJbI42 { + color: antiquewhite; +} + +/* matches the element with id="-a-b-c-" */ +#-a-b-c-__iHMJbI42 { + color: azure; +} + +/* matches the element with id="©" */ +#©__iHMJbI42 { + color: black; +} + +.♥__iHMJbI42 { background: lime; } +.©__iHMJbI42 { background: lime; } +.😍__iHMJbI42 { background: lime; } +.“‘’”__iHMJbI42 { background: lime; } +.☺☃__iHMJbI42 { background: lime; } +.⌘⌥__iHMJbI42 { background: lime; } +.𝄞♪♩♫♬__iHMJbI42 { background: lime; } +.💩__iHMJbI42 { background: lime; } +.\\\\?__iHMJbI42 { background: lime; } +.\\\\@__iHMJbI42 { background: lime; } +.\\\\.__iHMJbI42 { background: lime; } +.\\\\3A \\\\)__iHMJbI42 { background: lime; } +.\\\\3A \\\\\\\`\\\\(__iHMJbI42 { background: lime; } +.\\\\31 23__iHMJbI42 { background: lime; } +.\\\\31 a2b3c__iHMJbI42 { background: lime; } +.\\\\__iHMJbI42 { background: lime; } +.\\\\<\\\\>\\\\<\\\\<\\\\<\\\\>\\\\>\\\\<\\\\>__iHMJbI42 { background: lime; } +.\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\[\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\>\\\\+\\\\<\\\\<\\\\<\\\\<\\\\-\\\\]\\\\>\\\\+\\\\+\\\\.\\\\>\\\\+\\\\.\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\.\\\\+\\\\+\\\\+\\\\.\\\\>\\\\+\\\\+\\\\.\\\\<\\\\<\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\>\\\\.\\\\+\\\\+\\\\+\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\>\\\\+\\\\.\\\\>\\\\.__iHMJbI42 { background: lime; } +.\\\\#__iHMJbI42 { background: lime; } +.\\\\#\\\\#__iHMJbI42 { background: lime; } +.\\\\#\\\\.\\\\#\\\\.\\\\#__iHMJbI42 { background: lime; } +.\\\\___iHMJbI42 { background: lime; } +.\\\\{\\\\}__iHMJbI42 { background: lime; } +.\\\\#fake\\\\-id__iHMJbI42 { background: lime; } +.foo\\\\.bar__iHMJbI42 { background: lime; } +.\\\\3A hover__iHMJbI42 { background: lime; } +.\\\\3A hover\\\\3A focus\\\\3A active__iHMJbI42 { background: lime; } +.\\\\[attr\\\\=value\\\\]__iHMJbI42 { background: lime; } +.f\\\\/o\\\\/o__iHMJbI42 { background: lime; } +.f\\\\\\\\o\\\\\\\\o__iHMJbI42 { background: lime; } +.f\\\\*o\\\\*o__iHMJbI42 { background: lime; } +.f\\\\!o\\\\!o__iHMJbI42 { background: lime; } +.f\\\\'o\\\\'o__iHMJbI42 { background: lime; } +.f\\\\~o\\\\~o__iHMJbI42 { background: lime; } +.f\\\\+o\\\\+o__iHMJbI42 { background: lime; } + +.foo\\\\/bar__iHMJbI42 { + background: hotpink; +} + +.foo\\\\\\\\bar__iHMJbI42 { + background: hotpink; +} + +.foo\\\\/bar\\\\/baz__iHMJbI42 { + background: hotpink; +} + +.foo\\\\\\\\bar\\\\\\\\baz__iHMJbI42 { + background: hotpink; +} +\`, ""]); +// Exports +var _1 = \`123__iHMJbI42\`; +export { _1 as "123" }; +export var test = \`test__iHMJbI42\`; +export var _test = \`_test__iHMJbI42\`; +export var className = \`className__iHMJbI42\`; +export var someId = \`someId__iHMJbI42\`; +export var subClass = \`subClass__iHMJbI42\`; +var _2 = \`-a0-34a___f__iHMJbI42\`; +export { _2 as "-a0-34a___f" }; +var _3 = \`m_x_@__iHMJbI42\`; +export { _3 as "m_x_@" }; +var _4 = \`B&W?__iHMJbI42\`; +export { _4 as "B&W?" }; +var _5 = \`:\\\`(__iHMJbI42\`; +export { _5 as ":\`(" }; +var _6 = \`1a2b3c__iHMJbI42\`; +export { _6 as "1a2b3c" }; +var _7 = \`#fake-id__iHMJbI42\`; +export { _7 as "#fake-id" }; +var _8 = \`-a-b-c-__iHMJbI42\`; +export { _8 as "-a-b-c-" }; +var _9 = \`©__iHMJbI42\`; +export { _9 as "©" }; +var _a = \`♥__iHMJbI42\`; +export { _a as "♥" }; +var _b = \`😍__iHMJbI42\`; +export { _b as "😍" }; +var _c = \`“‘’”__iHMJbI42\`; +export { _c as "“‘’”" }; +var _d = \`☺☃__iHMJbI42\`; +export { _d as "☺☃" }; +var _e = \`⌘⌥__iHMJbI42\`; +export { _e as "⌘⌥" }; +var _f = \`𝄞♪♩♫♬__iHMJbI42\`; +export { _f as "𝄞♪♩♫♬" }; +var _10 = \`💩__iHMJbI42\`; +export { _10 as "💩" }; +var _11 = \`?__iHMJbI42\`; +export { _11 as "?" }; +var _12 = \`@__iHMJbI42\`; +export { _12 as "@" }; +var _13 = \`.__iHMJbI42\`; +export { _13 as "." }; +var _14 = \`:)__iHMJbI42\`; +export { _14 as ":)" }; +var _15 = \`

__iHMJbI42\`; +export { _15 as "

" }; +var _16 = \`<><<<>><>__iHMJbI42\`; +export { _16 as "<><<<>><>" }; +var _17 = \`++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.__iHMJbI42\`; +export { _17 as "++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>." }; +var _18 = \`#__iHMJbI42\`; +export { _18 as "#" }; +var _19 = \`##__iHMJbI42\`; +export { _19 as "##" }; +var _1a = \`#.#.#__iHMJbI42\`; +export { _1a as "#.#.#" }; +export var _ = \`___iHMJbI42\`; +var _1b = \`{}__iHMJbI42\`; +export { _1b as "{}" }; +var _1c = \`foo.bar__iHMJbI42\`; +export { _1c as "foo.bar" }; +var _1d = \`:hover__iHMJbI42\`; +export { _1d as ":hover" }; +var _1e = \`:hover:focus:active__iHMJbI42\`; +export { _1e as ":hover:focus:active" }; +var _1f = \`[attr=value]__iHMJbI42\`; +export { _1f as "[attr=value]" }; +var _20 = \`f/o/o__iHMJbI42\`; +export { _20 as "f/o/o" }; +var _21 = \`f\\\\o\\\\o__iHMJbI42\`; +export { _21 as "f\\\\o\\\\o" }; +var _22 = \`f*o*o__iHMJbI42\`; +export { _22 as "f*o*o" }; +var _23 = \`f!o!o__iHMJbI42\`; +export { _23 as "f!o!o" }; +var _24 = \`f'o'o__iHMJbI42\`; +export { _24 as "f'o'o" }; +var _25 = \`f~o~o__iHMJbI42\`; +export { _25 as "f~o~o" }; +var _26 = \`f+o+o__iHMJbI42\`; +export { _26 as "f+o+o" }; +var _27 = \`foo/bar__iHMJbI42\`; +export { _27 as "foo/bar" }; +var _28 = \`foo\\\\bar__iHMJbI42\`; +export { _28 as "foo\\\\bar" }; +var _29 = \`foo/bar/baz__iHMJbI42\`; +export { _29 as "foo/bar/baz" }; +var _2a = \`foo\\\\bar\\\\baz__iHMJbI42\`; +export { _2a as "foo\\\\bar\\\\baz" }; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should work and respect the "hashStrategy" = "minimal-subset" and [local]: result 1`] = ` +[ + [ + "./modules/localIdentName/localIdentName.css", + ".test__iHMJbI42 { + background: red; +} + +._test__iHMJbI42 { + background: blue; +} + +.className__iHMJbI42 { + background: red; +} + +#someId__iHMJbI42 { + background: green; +} + +.className__iHMJbI42 .subClass__iHMJbI42 { + color: green; +} + +#someId__iHMJbI42 .subClass__iHMJbI42 { + color: blue; +} + +.-a0-34a___f__iHMJbI42 { + color: red; +} + +.m_x_\\@__iHMJbI42 { + margin-left: auto !important; + margin-right: auto !important; +} + +.B\\&W\\?__iHMJbI42 { + margin-left: auto !important; + margin-right: auto !important; +} + +/* matches elements with class=":\`(" */ +.\\3A \\\`\\(__iHMJbI42 { + color: aqua; +} + +/* matches elements with class="1a2b3c" */ +.\\31 a2b3c__iHMJbI42 { + color: aliceblue; +} + +/* matches the element with id="#fake-id" */ +#\\#fake-id__iHMJbI42 { + color: antiquewhite; +} + +/* matches the element with id="-a-b-c-" */ +#-a-b-c-__iHMJbI42 { + color: azure; +} + +/* matches the element with id="©" */ +#©__iHMJbI42 { + color: black; +} + +.♥__iHMJbI42 { background: lime; } +.©__iHMJbI42 { background: lime; } +.😍__iHMJbI42 { background: lime; } +.“‘’”__iHMJbI42 { background: lime; } +.☺☃__iHMJbI42 { background: lime; } +.⌘⌥__iHMJbI42 { background: lime; } +.𝄞♪♩♫♬__iHMJbI42 { background: lime; } +.💩__iHMJbI42 { background: lime; } +.\\?__iHMJbI42 { background: lime; } +.\\@__iHMJbI42 { background: lime; } +.\\.__iHMJbI42 { background: lime; } +.\\3A \\)__iHMJbI42 { background: lime; } +.\\3A \\\`\\(__iHMJbI42 { background: lime; } +.\\31 23__iHMJbI42 { background: lime; } +.\\31 a2b3c__iHMJbI42 { background: lime; } +.\\__iHMJbI42 { background: lime; } +.\\<\\>\\<\\<\\<\\>\\>\\<\\>__iHMJbI42 { background: lime; } +.\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\[\\>\\+\\+\\+\\+\\+\\+\\+\\>\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\>\\+\\+\\+\\>\\+\\<\\<\\<\\<\\-\\]\\>\\+\\+\\.\\>\\+\\.\\+\\+\\+\\+\\+\\+\\+\\.\\.\\+\\+\\+\\.\\>\\+\\+\\.\\<\\<\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\.\\>\\.\\+\\+\\+\\.\\-\\-\\-\\-\\-\\-\\.\\-\\-\\-\\-\\-\\-\\-\\-\\.\\>\\+\\.\\>\\.__iHMJbI42 { background: lime; } +.\\#__iHMJbI42 { background: lime; } +.\\#\\#__iHMJbI42 { background: lime; } +.\\#\\.\\#\\.\\#__iHMJbI42 { background: lime; } +.\\___iHMJbI42 { background: lime; } +.\\{\\}__iHMJbI42 { background: lime; } +.\\#fake\\-id__iHMJbI42 { background: lime; } +.foo\\.bar__iHMJbI42 { background: lime; } +.\\3A hover__iHMJbI42 { background: lime; } +.\\3A hover\\3A focus\\3A active__iHMJbI42 { background: lime; } +.\\[attr\\=value\\]__iHMJbI42 { background: lime; } +.f\\/o\\/o__iHMJbI42 { background: lime; } +.f\\\\o\\\\o__iHMJbI42 { background: lime; } +.f\\*o\\*o__iHMJbI42 { background: lime; } +.f\\!o\\!o__iHMJbI42 { background: lime; } +.f\\'o\\'o__iHMJbI42 { background: lime; } +.f\\~o\\~o__iHMJbI42 { background: lime; } +.f\\+o\\+o__iHMJbI42 { background: lime; } + +.foo\\/bar__iHMJbI42 { + background: hotpink; +} + +.foo\\\\bar__iHMJbI42 { + background: hotpink; +} + +.foo\\/bar\\/baz__iHMJbI42 { + background: hotpink; +} + +.foo\\\\bar\\\\baz__iHMJbI42 { + background: hotpink; +} +", + "", + ], +] +`; + +exports[`"modules" option should work and respect the "hashStrategy" = "minimal-subset" and [local]: warnings 1`] = `[]`; + +exports[`"modules" option should work and respect the "hashStrategy" = "minimal-subset" and no [local]: errors 1`] = `[]`; + +exports[`"modules" option should work and respect the "hashStrategy" = "minimal-subset" and no [local]: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../../src/runtime/api.js"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`.KuIShlgs { + background: red; +} + +.Lb3fhDAu { + background: blue; +} + +.LdhpkZRW { + background: red; +} + +#b0rhwJSt { + background: green; +} + +.LdhpkZRW .Mw9j4nId { + color: green; +} + +#b0rhwJSt .Mw9j4nId { + color: blue; +} + +.DdFWMPol { + color: red; +} + +.OdAmghrm { + margin-left: auto !important; + margin-right: auto !important; +} + +.h4SEF34C { + margin-left: auto !important; + margin-right: auto !important; +} + +/* matches elements with class=":\\\`(" */ +.fKJQkLar { + color: aqua; +} + +/* matches elements with class="1a2b3c" */ +.YR1u_buY { + color: aliceblue; +} + +/* matches the element with id="#fake-id" */ +#AqiAGSfn { + color: antiquewhite; +} + +/* matches the element with id="-a-b-c-" */ +#CwXv27VM { + color: azure; +} + +/* matches the element with id="©" */ +#jBj0sZiW { + color: black; +} + +.vJl9A9Ds { background: lime; } +.jBj0sZiW { background: lime; } +.CNLr9yJw { background: lime; } +.GM0Y0nFC { background: lime; } +.NKrBw7EA { background: lime; } +.edHWpSne { background: lime; } +.QyMp9YME { background: lime; } +.B82YxwgR { background: lime; } +.ndmpvNNl { background: lime; } +.v3gq0wPo { background: lime; } +.zd5uIZq6 { background: lime; } +.ZiZnRjRT { background: lime; } +.fKJQkLar { background: lime; } +.oqRGsO4U { background: lime; } +.YR1u_buY { background: lime; } +.TdAx2ZSk { background: lime; } +.ozNsTIG0 { background: lime; } +.ByKoYcSr { background: lime; } +.HkwIsjW5 { background: lime; } +.IJc6Xl4Z { background: lime; } +.BnPpnJmP { background: lime; } +.bCwkZEDu { background: lime; } +.IZkBfE9i { background: lime; } +.AqiAGSfn { background: lime; } +.uajo7mHz { background: lime; } +.HVudUNXn { background: lime; } +.ZlaaXvHL { background: lime; } +.PWvC4jVM { background: lime; } +.A5l5sDOD { background: lime; } +.DFfh4Kyq { background: lime; } +.gv1E2n_b { background: lime; } +._aIyR9ET { background: lime; } +.HSXNnSjt { background: lime; } +.MrVzSIcS { background: lime; } +.EvMHRmCu { background: lime; } + +.hei2uQgD { + background: hotpink; +} + +.IgSzmmsC { + background: hotpink; +} + +.p6KJMhNW { + background: hotpink; +} + +.HZerWgmU { + background: hotpink; +} +\`, ""]); +// Exports +var _1 = \`oqRGsO4U\`; +export { _1 as "123" }; +export var test = \`KuIShlgs\`; +export var _test = \`Lb3fhDAu\`; +export var className = \`LdhpkZRW\`; +export var someId = \`b0rhwJSt\`; +export var subClass = \`Mw9j4nId\`; +var _2 = \`DdFWMPol\`; +export { _2 as "-a0-34a___f" }; +var _3 = \`OdAmghrm\`; +export { _3 as "m_x_@" }; +var _4 = \`h4SEF34C\`; +export { _4 as "B&W?" }; +var _5 = \`fKJQkLar\`; +export { _5 as ":\`(" }; +var _6 = \`YR1u_buY\`; +export { _6 as "1a2b3c" }; +var _7 = \`AqiAGSfn\`; +export { _7 as "#fake-id" }; +var _8 = \`CwXv27VM\`; +export { _8 as "-a-b-c-" }; +var _9 = \`jBj0sZiW\`; +export { _9 as "©" }; +var _a = \`vJl9A9Ds\`; +export { _a as "♥" }; +var _b = \`CNLr9yJw\`; +export { _b as "😍" }; +var _c = \`GM0Y0nFC\`; +export { _c as "“‘’”" }; +var _d = \`NKrBw7EA\`; +export { _d as "☺☃" }; +var _e = \`edHWpSne\`; +export { _e as "⌘⌥" }; +var _f = \`QyMp9YME\`; +export { _f as "𝄞♪♩♫♬" }; +var _10 = \`B82YxwgR\`; +export { _10 as "💩" }; +var _11 = \`ndmpvNNl\`; +export { _11 as "?" }; +var _12 = \`v3gq0wPo\`; +export { _12 as "@" }; +var _13 = \`zd5uIZq6\`; +export { _13 as "." }; +var _14 = \`ZiZnRjRT\`; +export { _14 as ":)" }; +var _15 = \`TdAx2ZSk\`; +export { _15 as "

" }; +var _16 = \`ozNsTIG0\`; +export { _16 as "<><<<>><>" }; +var _17 = \`ByKoYcSr\`; +export { _17 as "++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>." }; +var _18 = \`HkwIsjW5\`; +export { _18 as "#" }; +var _19 = \`IJc6Xl4Z\`; +export { _19 as "##" }; +var _1a = \`BnPpnJmP\`; +export { _1a as "#.#.#" }; +export var _ = \`bCwkZEDu\`; +var _1b = \`IZkBfE9i\`; +export { _1b as "{}" }; +var _1c = \`uajo7mHz\`; +export { _1c as "foo.bar" }; +var _1d = \`HVudUNXn\`; +export { _1d as ":hover" }; +var _1e = \`ZlaaXvHL\`; +export { _1e as ":hover:focus:active" }; +var _1f = \`PWvC4jVM\`; +export { _1f as "[attr=value]" }; +var _20 = \`A5l5sDOD\`; +export { _20 as "f/o/o" }; +var _21 = \`DFfh4Kyq\`; +export { _21 as "f\\\\o\\\\o" }; +var _22 = \`gv1E2n_b\`; +export { _22 as "f*o*o" }; +var _23 = \`_aIyR9ET\`; +export { _23 as "f!o!o" }; +var _24 = \`HSXNnSjt\`; +export { _24 as "f'o'o" }; +var _25 = \`MrVzSIcS\`; +export { _25 as "f~o~o" }; +var _26 = \`EvMHRmCu\`; +export { _26 as "f+o+o" }; +var _27 = \`hei2uQgD\`; +export { _27 as "foo/bar" }; +var _28 = \`IgSzmmsC\`; +export { _28 as "foo\\\\bar" }; +var _29 = \`p6KJMhNW\`; +export { _29 as "foo/bar/baz" }; +var _2a = \`HZerWgmU\`; +export { _2a as "foo\\\\bar\\\\baz" }; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should work and respect the "hashStrategy" = "minimal-subset" and no [local]: result 1`] = ` +[ + [ + "./modules/localIdentName/localIdentName.css", + ".KuIShlgs { + background: red; +} + +.Lb3fhDAu { + background: blue; +} + +.LdhpkZRW { + background: red; +} + +#b0rhwJSt { + background: green; +} + +.LdhpkZRW .Mw9j4nId { + color: green; +} + +#b0rhwJSt .Mw9j4nId { + color: blue; +} + +.DdFWMPol { + color: red; +} + +.OdAmghrm { + margin-left: auto !important; + margin-right: auto !important; +} + +.h4SEF34C { + margin-left: auto !important; + margin-right: auto !important; +} + +/* matches elements with class=":\`(" */ +.fKJQkLar { + color: aqua; +} + +/* matches elements with class="1a2b3c" */ +.YR1u_buY { + color: aliceblue; +} + +/* matches the element with id="#fake-id" */ +#AqiAGSfn { + color: antiquewhite; +} + +/* matches the element with id="-a-b-c-" */ +#CwXv27VM { + color: azure; +} + +/* matches the element with id="©" */ +#jBj0sZiW { + color: black; +} + +.vJl9A9Ds { background: lime; } +.jBj0sZiW { background: lime; } +.CNLr9yJw { background: lime; } +.GM0Y0nFC { background: lime; } +.NKrBw7EA { background: lime; } +.edHWpSne { background: lime; } +.QyMp9YME { background: lime; } +.B82YxwgR { background: lime; } +.ndmpvNNl { background: lime; } +.v3gq0wPo { background: lime; } +.zd5uIZq6 { background: lime; } +.ZiZnRjRT { background: lime; } +.fKJQkLar { background: lime; } +.oqRGsO4U { background: lime; } +.YR1u_buY { background: lime; } +.TdAx2ZSk { background: lime; } +.ozNsTIG0 { background: lime; } +.ByKoYcSr { background: lime; } +.HkwIsjW5 { background: lime; } +.IJc6Xl4Z { background: lime; } +.BnPpnJmP { background: lime; } +.bCwkZEDu { background: lime; } +.IZkBfE9i { background: lime; } +.AqiAGSfn { background: lime; } +.uajo7mHz { background: lime; } +.HVudUNXn { background: lime; } +.ZlaaXvHL { background: lime; } +.PWvC4jVM { background: lime; } +.A5l5sDOD { background: lime; } +.DFfh4Kyq { background: lime; } +.gv1E2n_b { background: lime; } +._aIyR9ET { background: lime; } +.HSXNnSjt { background: lime; } +.MrVzSIcS { background: lime; } +.EvMHRmCu { background: lime; } + +.hei2uQgD { + background: hotpink; +} + +.IgSzmmsC { + background: hotpink; +} + +.p6KJMhNW { + background: hotpink; +} + +.HZerWgmU { + background: hotpink; +} +", + "", + ], +] +`; + +exports[`"modules" option should work and respect the "hashStrategy" = "minimal-subset" and no [local]: warnings 1`] = `[]`; + +exports[`"modules" option should work and respect the "hashStrategy" = "resource-path-and-local-name": errors 1`] = `[]`; + +exports[`"modules" option should work and respect the "hashStrategy" = "resource-path-and-local-name": module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../../src/runtime/api.js"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`.test__KuIShlgs { + background: red; +} + +._test__Lb3fhDAu { + background: blue; +} + +.className__LdhpkZRW { + background: red; +} + +#someId__b0rhwJSt { + background: green; +} + +.className__LdhpkZRW .subClass__Mw9j4nId { + color: green; +} + +#someId__b0rhwJSt .subClass__Mw9j4nId { + color: blue; +} + +.-a0-34a___f__DdFWMPol { + color: red; +} + +.m_x_\\\\@__OdAmghrm { + margin-left: auto !important; + margin-right: auto !important; +} + +.B\\\\&W\\\\?__h4SEF34C { + margin-left: auto !important; + margin-right: auto !important; +} + +/* matches elements with class=":\\\`(" */ +.\\\\3A \\\\\\\`\\\\(__fKJQkLar { + color: aqua; +} + +/* matches elements with class="1a2b3c" */ +.\\\\31 a2b3c__YR1u_buY { + color: aliceblue; +} + +/* matches the element with id="#fake-id" */ +#\\\\#fake-id__AqiAGSfn { + color: antiquewhite; +} + +/* matches the element with id="-a-b-c-" */ +#-a-b-c-__CwXv27VM { + color: azure; +} + +/* matches the element with id="©" */ +#©__jBj0sZiW { + color: black; +} + +.♥__vJl9A9Ds { background: lime; } +.©__jBj0sZiW { background: lime; } +.😍__CNLr9yJw { background: lime; } +.“‘’”__GM0Y0nFC { background: lime; } +.☺☃__NKrBw7EA { background: lime; } +.⌘⌥__edHWpSne { background: lime; } +.𝄞♪♩♫♬__QyMp9YME { background: lime; } +.💩__B82YxwgR { background: lime; } +.\\\\?__ndmpvNNl { background: lime; } +.\\\\@__v3gq0wPo { background: lime; } +.\\\\.__zd5uIZq6 { background: lime; } +.\\\\3A \\\\)__ZiZnRjRT { background: lime; } +.\\\\3A \\\\\\\`\\\\(__fKJQkLar { background: lime; } +.\\\\31 23__oqRGsO4U { background: lime; } +.\\\\31 a2b3c__YR1u_buY { background: lime; } +.\\\\__TdAx2ZSk { background: lime; } +.\\\\<\\\\>\\\\<\\\\<\\\\<\\\\>\\\\>\\\\<\\\\>__ozNsTIG0 { background: lime; } +.\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\[\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\>\\\\+\\\\<\\\\<\\\\<\\\\<\\\\-\\\\]\\\\>\\\\+\\\\+\\\\.\\\\>\\\\+\\\\.\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\.\\\\+\\\\+\\\\+\\\\.\\\\>\\\\+\\\\+\\\\.\\\\<\\\\<\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\>\\\\.\\\\+\\\\+\\\\+\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\>\\\\+\\\\.\\\\>\\\\.__ByKoYcSr { background: lime; } +.\\\\#__HkwIsjW5 { background: lime; } +.\\\\#\\\\#__IJc6Xl4Z { background: lime; } +.\\\\#\\\\.\\\\#\\\\.\\\\#__BnPpnJmP { background: lime; } +.\\\\___bCwkZEDu { background: lime; } +.\\\\{\\\\}__IZkBfE9i { background: lime; } +.\\\\#fake\\\\-id__AqiAGSfn { background: lime; } +.foo\\\\.bar__uajo7mHz { background: lime; } +.\\\\3A hover__HVudUNXn { background: lime; } +.\\\\3A hover\\\\3A focus\\\\3A active__ZlaaXvHL { background: lime; } +.\\\\[attr\\\\=value\\\\]__PWvC4jVM { background: lime; } +.f\\\\/o\\\\/o__A5l5sDOD { background: lime; } +.f\\\\\\\\o\\\\\\\\o__DFfh4Kyq { background: lime; } +.f\\\\*o\\\\*o__gv1E2n_b { background: lime; } +.f\\\\!o\\\\!o___aIyR9ET { background: lime; } +.f\\\\'o\\\\'o__HSXNnSjt { background: lime; } +.f\\\\~o\\\\~o__MrVzSIcS { background: lime; } +.f\\\\+o\\\\+o__EvMHRmCu { background: lime; } + +.foo\\\\/bar__hei2uQgD { + background: hotpink; +} + +.foo\\\\\\\\bar__IgSzmmsC { + background: hotpink; +} + +.foo\\\\/bar\\\\/baz__p6KJMhNW { + background: hotpink; +} + +.foo\\\\\\\\bar\\\\\\\\baz__HZerWgmU { + background: hotpink; +} +\`, ""]); +// Exports +var _1 = \`123__oqRGsO4U\`; +export { _1 as "123" }; +export var test = \`test__KuIShlgs\`; +export var _test = \`_test__Lb3fhDAu\`; +export var className = \`className__LdhpkZRW\`; +export var someId = \`someId__b0rhwJSt\`; +export var subClass = \`subClass__Mw9j4nId\`; +var _2 = \`-a0-34a___f__DdFWMPol\`; +export { _2 as "-a0-34a___f" }; +var _3 = \`m_x_@__OdAmghrm\`; +export { _3 as "m_x_@" }; +var _4 = \`B&W?__h4SEF34C\`; +export { _4 as "B&W?" }; +var _5 = \`:\\\`(__fKJQkLar\`; +export { _5 as ":\`(" }; +var _6 = \`1a2b3c__YR1u_buY\`; +export { _6 as "1a2b3c" }; +var _7 = \`#fake-id__AqiAGSfn\`; +export { _7 as "#fake-id" }; +var _8 = \`-a-b-c-__CwXv27VM\`; +export { _8 as "-a-b-c-" }; +var _9 = \`©__jBj0sZiW\`; +export { _9 as "©" }; +var _a = \`♥__vJl9A9Ds\`; +export { _a as "♥" }; +var _b = \`😍__CNLr9yJw\`; +export { _b as "😍" }; +var _c = \`“‘’”__GM0Y0nFC\`; +export { _c as "“‘’”" }; +var _d = \`☺☃__NKrBw7EA\`; +export { _d as "☺☃" }; +var _e = \`⌘⌥__edHWpSne\`; +export { _e as "⌘⌥" }; +var _f = \`𝄞♪♩♫♬__QyMp9YME\`; +export { _f as "𝄞♪♩♫♬" }; +var _10 = \`💩__B82YxwgR\`; +export { _10 as "💩" }; +var _11 = \`?__ndmpvNNl\`; +export { _11 as "?" }; +var _12 = \`@__v3gq0wPo\`; +export { _12 as "@" }; +var _13 = \`.__zd5uIZq6\`; +export { _13 as "." }; +var _14 = \`:)__ZiZnRjRT\`; +export { _14 as ":)" }; +var _15 = \`

__TdAx2ZSk\`; +export { _15 as "

" }; +var _16 = \`<><<<>><>__ozNsTIG0\`; +export { _16 as "<><<<>><>" }; +var _17 = \`++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.__ByKoYcSr\`; +export { _17 as "++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>." }; +var _18 = \`#__HkwIsjW5\`; +export { _18 as "#" }; +var _19 = \`##__IJc6Xl4Z\`; +export { _19 as "##" }; +var _1a = \`#.#.#__BnPpnJmP\`; +export { _1a as "#.#.#" }; +export var _ = \`___bCwkZEDu\`; +var _1b = \`{}__IZkBfE9i\`; +export { _1b as "{}" }; +var _1c = \`foo.bar__uajo7mHz\`; +export { _1c as "foo.bar" }; +var _1d = \`:hover__HVudUNXn\`; +export { _1d as ":hover" }; +var _1e = \`:hover:focus:active__ZlaaXvHL\`; +export { _1e as ":hover:focus:active" }; +var _1f = \`[attr=value]__PWvC4jVM\`; +export { _1f as "[attr=value]" }; +var _20 = \`f/o/o__A5l5sDOD\`; +export { _20 as "f/o/o" }; +var _21 = \`f\\\\o\\\\o__DFfh4Kyq\`; +export { _21 as "f\\\\o\\\\o" }; +var _22 = \`f*o*o__gv1E2n_b\`; +export { _22 as "f*o*o" }; +var _23 = \`f!o!o___aIyR9ET\`; +export { _23 as "f!o!o" }; +var _24 = \`f'o'o__HSXNnSjt\`; +export { _24 as "f'o'o" }; +var _25 = \`f~o~o__MrVzSIcS\`; +export { _25 as "f~o~o" }; +var _26 = \`f+o+o__EvMHRmCu\`; +export { _26 as "f+o+o" }; +var _27 = \`foo/bar__hei2uQgD\`; +export { _27 as "foo/bar" }; +var _28 = \`foo\\\\bar__IgSzmmsC\`; +export { _28 as "foo\\\\bar" }; +var _29 = \`foo/bar/baz__p6KJMhNW\`; +export { _29 as "foo/bar/baz" }; +var _2a = \`foo\\\\bar\\\\baz__HZerWgmU\`; +export { _2a as "foo\\\\bar\\\\baz" }; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should work and respect the "hashStrategy" = "resource-path-and-local-name": result 1`] = ` +[ + [ + "./modules/localIdentName/localIdentName.css", + ".test__KuIShlgs { + background: red; +} + +._test__Lb3fhDAu { + background: blue; +} + +.className__LdhpkZRW { + background: red; +} + +#someId__b0rhwJSt { + background: green; +} + +.className__LdhpkZRW .subClass__Mw9j4nId { + color: green; +} + +#someId__b0rhwJSt .subClass__Mw9j4nId { + color: blue; +} + +.-a0-34a___f__DdFWMPol { + color: red; +} + +.m_x_\\@__OdAmghrm { + margin-left: auto !important; + margin-right: auto !important; +} + +.B\\&W\\?__h4SEF34C { + margin-left: auto !important; + margin-right: auto !important; +} + +/* matches elements with class=":\`(" */ +.\\3A \\\`\\(__fKJQkLar { + color: aqua; +} + +/* matches elements with class="1a2b3c" */ +.\\31 a2b3c__YR1u_buY { + color: aliceblue; +} + +/* matches the element with id="#fake-id" */ +#\\#fake-id__AqiAGSfn { + color: antiquewhite; +} + +/* matches the element with id="-a-b-c-" */ +#-a-b-c-__CwXv27VM { + color: azure; +} + +/* matches the element with id="©" */ +#©__jBj0sZiW { + color: black; +} + +.♥__vJl9A9Ds { background: lime; } +.©__jBj0sZiW { background: lime; } +.😍__CNLr9yJw { background: lime; } +.“‘’”__GM0Y0nFC { background: lime; } +.☺☃__NKrBw7EA { background: lime; } +.⌘⌥__edHWpSne { background: lime; } +.𝄞♪♩♫♬__QyMp9YME { background: lime; } +.💩__B82YxwgR { background: lime; } +.\\?__ndmpvNNl { background: lime; } +.\\@__v3gq0wPo { background: lime; } +.\\.__zd5uIZq6 { background: lime; } +.\\3A \\)__ZiZnRjRT { background: lime; } +.\\3A \\\`\\(__fKJQkLar { background: lime; } +.\\31 23__oqRGsO4U { background: lime; } +.\\31 a2b3c__YR1u_buY { background: lime; } +.\\__TdAx2ZSk { background: lime; } +.\\<\\>\\<\\<\\<\\>\\>\\<\\>__ozNsTIG0 { background: lime; } +.\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\[\\>\\+\\+\\+\\+\\+\\+\\+\\>\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\>\\+\\+\\+\\>\\+\\<\\<\\<\\<\\-\\]\\>\\+\\+\\.\\>\\+\\.\\+\\+\\+\\+\\+\\+\\+\\.\\.\\+\\+\\+\\.\\>\\+\\+\\.\\<\\<\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\.\\>\\.\\+\\+\\+\\.\\-\\-\\-\\-\\-\\-\\.\\-\\-\\-\\-\\-\\-\\-\\-\\.\\>\\+\\.\\>\\.__ByKoYcSr { background: lime; } +.\\#__HkwIsjW5 { background: lime; } +.\\#\\#__IJc6Xl4Z { background: lime; } +.\\#\\.\\#\\.\\#__BnPpnJmP { background: lime; } +.\\___bCwkZEDu { background: lime; } +.\\{\\}__IZkBfE9i { background: lime; } +.\\#fake\\-id__AqiAGSfn { background: lime; } +.foo\\.bar__uajo7mHz { background: lime; } +.\\3A hover__HVudUNXn { background: lime; } +.\\3A hover\\3A focus\\3A active__ZlaaXvHL { background: lime; } +.\\[attr\\=value\\]__PWvC4jVM { background: lime; } +.f\\/o\\/o__A5l5sDOD { background: lime; } +.f\\\\o\\\\o__DFfh4Kyq { background: lime; } +.f\\*o\\*o__gv1E2n_b { background: lime; } +.f\\!o\\!o___aIyR9ET { background: lime; } +.f\\'o\\'o__HSXNnSjt { background: lime; } +.f\\~o\\~o__MrVzSIcS { background: lime; } +.f\\+o\\+o__EvMHRmCu { background: lime; } + +.foo\\/bar__hei2uQgD { + background: hotpink; +} + +.foo\\\\bar__IgSzmmsC { + background: hotpink; +} + +.foo\\/bar\\/baz__p6KJMhNW { + background: hotpink; +} + +.foo\\\\bar\\\\baz__HZerWgmU { + background: hotpink; +} +", + "", + ], +] +`; + +exports[`"modules" option should work and respect the "hashStrategy" = "resource-path-and-local-name": warnings 1`] = `[]`; + +exports[`"modules" option should work and respect the "localConvention" option with the "asIs" value: errors 1`] = `[]`; + +exports[`"modules" option should work and respect the "localConvention" option with the "asIs" value: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../../src/runtime/api.js"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`.rmc8ltu8P1VXaeqLNU6N { + color: blue; +} + +.AooVHuvzAIGXWngdfslc { + color: blue; +} + +.snmJCrfw3LVnrlx87XVC { + color: red; +} + +a { + color: yellow; +} + +.vA4oeh0XymefKJVIJyg1 { + color: red; +} + +.mDiC1MIOTWjgsd86woaJ { + color: red; +} + +.kY3VVFqpzmTiFlxOd9KU { + color: red; +} + +.eiLdMC_n9TCXQ0oPIJyI { + color: red; +} +\`, ""]); +// Exports +export var foo = \`bar\`; +var _1 = \`value\`; +export { _1 as "my-btn-info_is-disabled" }; +var _2 = \`rmc8ltu8P1VXaeqLNU6N\`; +export { _2 as "btn-info_is-disabled" }; +var _3 = \`AooVHuvzAIGXWngdfslc\`; +export { _3 as "btn--info_is-disabled_1" }; +export var simple = \`snmJCrfw3LVnrlx87XVC\`; +export var foo_bar = \`vA4oeh0XymefKJVIJyg1\`; +var _4 = \`mDiC1MIOTWjgsd86woaJ\`; +export { _4 as "class" }; +export var fooBarBaz = \`kY3VVFqpzmTiFlxOd9KU\`; +export var b = \`eiLdMC_n9TCXQ0oPIJyI\`; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should work and respect the "localConvention" option with the "asIs" value: result 1`] = ` +[ + [ + "./modules/localsConvention/localsConvention.css", + ".rmc8ltu8P1VXaeqLNU6N { + color: blue; +} + +.AooVHuvzAIGXWngdfslc { + color: blue; +} + +.snmJCrfw3LVnrlx87XVC { + color: red; +} + +a { + color: yellow; +} + +.vA4oeh0XymefKJVIJyg1 { + color: red; +} + +.mDiC1MIOTWjgsd86woaJ { + color: red; +} + +.kY3VVFqpzmTiFlxOd9KU { + color: red; +} + +.eiLdMC_n9TCXQ0oPIJyI { + color: red; +} +", + "", + ], +] +`; + +exports[`"modules" option should work and respect the "localConvention" option with the "asIs" value: warnings 1`] = `[]`; + +exports[`"modules" option should work and respect the "localIdentHashFunction" option: errors 1`] = `[]`; + +exports[`"modules" option should work and respect the "localIdentHashFunction" option: errors 2`] = `[]`; + +exports[`"modules" option should work and respect the "localIdentHashFunction" option: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../../src/runtime/api.js"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`.test--ddd414ab5d5137709283 { + background: red; +} + +._test--e91d3d0c5fd37cd4b01b { + background: blue; +} + +.className--e02e6f829b2bee39d627 { + background: red; +} + +#someId--de52fa8c46db92b11447 { + background: green; +} + +.className--e02e6f829b2bee39d627 .subClass--be91981b36e10e364e4c { + color: green; +} + +#someId--de52fa8c46db92b11447 .subClass--be91981b36e10e364e4c { + color: blue; +} + +.-a0-34a___f--da00a255d4f26816d790 { + color: red; +} + +.m_x_\\\\@--bfd2a88024baab94215a { + margin-left: auto !important; + margin-right: auto !important; +} + +.B\\\\&W\\\\?--bdeaa204fa06e193156e { + margin-left: auto !important; + margin-right: auto !important; +} + +/* matches elements with class=":\\\`(" */ +.\\\\3A \\\\\\\`\\\\(--ca761b17eca1ae06d42e { + color: aqua; +} + +/* matches elements with class="1a2b3c" */ +.\\\\31 a2b3c--a35141d9affd245508ec { + color: aliceblue; +} + +/* matches the element with id="#fake-id" */ +#\\\\#fake-id--ad040e49adcf9ebf2b28 { + color: antiquewhite; +} + +/* matches the element with id="-a-b-c-" */ +#-a-b-c---e778be7522ccfc908a7f { + color: azure; +} + +/* matches the element with id="©" */ +#©--e0f3ca20d394f3e4c0c4 { + color: black; +} + +.♥--a33350b333a80f1b1a5b { background: lime; } +.©--e0f3ca20d394f3e4c0c4 { background: lime; } +.😍--c0436529b39516386e8e { background: lime; } +.“‘’”--e70e1ad7759d3f300df8 { background: lime; } +.☺☃--a0cb57576a5c7938d368 { background: lime; } +.⌘⌥--e217e979d1184a514863 { background: lime; } +.𝄞♪♩♫♬--a84ff99d334be3b94b99 { background: lime; } +.💩--d850ae0fa2bc4c199f78 { background: lime; } +.\\\\?--ce25d6e6d5d3f7f1caf8 { background: lime; } +.\\\\@--af4ac041e6ccf6398ff5 { background: lime; } +.\\\\.--e94958877c738509339f { background: lime; } +.\\\\3A \\\\)--c80360aed4da410414fc { background: lime; } +.\\\\3A \\\\\\\`\\\\(--ca761b17eca1ae06d42e { background: lime; } +.\\\\31 23--c945113ffceee32ec307 { background: lime; } +.\\\\31 a2b3c--a35141d9affd245508ec { background: lime; } +.\\\\--b01c44339fab06966cef { background: lime; } +.\\\\<\\\\>\\\\<\\\\<\\\\<\\\\>\\\\>\\\\<\\\\>--e4fde695b6d3728c37e2 { background: lime; } +.\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\[\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\>\\\\+\\\\<\\\\<\\\\<\\\\<\\\\-\\\\]\\\\>\\\\+\\\\+\\\\.\\\\>\\\\+\\\\.\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\.\\\\+\\\\+\\\\+\\\\.\\\\>\\\\+\\\\+\\\\.\\\\<\\\\<\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\>\\\\.\\\\+\\\\+\\\\+\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\>\\\\+\\\\.\\\\>\\\\.--dd1263b9248633b49ab6 { background: lime; } +.\\\\#--e135fb99b5f04b604132 { background: lime; } +.\\\\#\\\\#--ba6fb20eb138e8d73dc4 { background: lime; } +.\\\\#\\\\.\\\\#\\\\.\\\\#--a6704dcf2abf08ff56bd { background: lime; } +.\\\\_--aa2521adbafa6a1b57d0 { background: lime; } +.\\\\{\\\\}--c716be70a0fac8bbc9e8 { background: lime; } +.\\\\#fake\\\\-id--ad040e49adcf9ebf2b28 { background: lime; } +.foo\\\\.bar--ce58180c03c903fcc73c { background: lime; } +.\\\\3A hover--defde77234f3cb7141b1 { background: lime; } +.\\\\3A hover\\\\3A focus\\\\3A active--cf83606abd36c7adf7e7 { background: lime; } +.\\\\[attr\\\\=value\\\\]--c9620f5e0b4a2472cd5a { background: lime; } +.f\\\\/o\\\\/o--d439f5313663238836bb { background: lime; } +.f\\\\\\\\o\\\\\\\\o--f64285b41af14c5e74b5 { background: lime; } +.f\\\\*o\\\\*o--e844a318c45519219501 { background: lime; } +.f\\\\!o\\\\!o--ae46ad5331777ab05875 { background: lime; } +.f\\\\'o\\\\'o--a23d7b9b14b04706b089 { background: lime; } +.f\\\\~o\\\\~o--cc96b7a27dbd52fba7a5 { background: lime; } +.f\\\\+o\\\\+o--debcf9986b3f64af6af9 { background: lime; } + +.foo\\\\/bar--d76ec2006d8359a0df78 { + background: hotpink; +} + +.foo\\\\\\\\bar--c17737aec664275b67b0 { + background: hotpink; +} + +.foo\\\\/bar\\\\/baz--c948ac137924110011f2 { + background: hotpink; +} + +.foo\\\\\\\\bar\\\\\\\\baz--ee89c9e938e6eb8df43d { + background: hotpink; +} +\`, ""]); +// Exports +var _1 = \`123--c945113ffceee32ec307\`; +export { _1 as "123" }; +export var test = \`test--ddd414ab5d5137709283\`; +export var _test = \`_test--e91d3d0c5fd37cd4b01b\`; +export var className = \`className--e02e6f829b2bee39d627\`; +export var someId = \`someId--de52fa8c46db92b11447\`; +export var subClass = \`subClass--be91981b36e10e364e4c\`; +var _2 = \`-a0-34a___f--da00a255d4f26816d790\`; +export { _2 as "-a0-34a___f" }; +var _3 = \`m_x_@--bfd2a88024baab94215a\`; +export { _3 as "m_x_@" }; +var _4 = \`B&W?--bdeaa204fa06e193156e\`; +export { _4 as "B&W?" }; +var _5 = \`:\\\`(--ca761b17eca1ae06d42e\`; +export { _5 as ":\`(" }; +var _6 = \`1a2b3c--a35141d9affd245508ec\`; +export { _6 as "1a2b3c" }; +var _7 = \`#fake-id--ad040e49adcf9ebf2b28\`; +export { _7 as "#fake-id" }; +var _8 = \`-a-b-c---e778be7522ccfc908a7f\`; +export { _8 as "-a-b-c-" }; +var _9 = \`©--e0f3ca20d394f3e4c0c4\`; +export { _9 as "©" }; +var _a = \`♥--a33350b333a80f1b1a5b\`; +export { _a as "♥" }; +var _b = \`😍--c0436529b39516386e8e\`; +export { _b as "😍" }; +var _c = \`“‘’”--e70e1ad7759d3f300df8\`; +export { _c as "“‘’”" }; +var _d = \`☺☃--a0cb57576a5c7938d368\`; +export { _d as "☺☃" }; +var _e = \`⌘⌥--e217e979d1184a514863\`; +export { _e as "⌘⌥" }; +var _f = \`𝄞♪♩♫♬--a84ff99d334be3b94b99\`; +export { _f as "𝄞♪♩♫♬" }; +var _10 = \`💩--d850ae0fa2bc4c199f78\`; +export { _10 as "💩" }; +var _11 = \`?--ce25d6e6d5d3f7f1caf8\`; +export { _11 as "?" }; +var _12 = \`@--af4ac041e6ccf6398ff5\`; +export { _12 as "@" }; +var _13 = \`.--e94958877c738509339f\`; +export { _13 as "." }; +var _14 = \`:)--c80360aed4da410414fc\`; +export { _14 as ":)" }; +var _15 = \`

--b01c44339fab06966cef\`; +export { _15 as "

" }; +var _16 = \`<><<<>><>--e4fde695b6d3728c37e2\`; +export { _16 as "<><<<>><>" }; +var _17 = \`++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.--dd1263b9248633b49ab6\`; +export { _17 as "++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>." }; +var _18 = \`#--e135fb99b5f04b604132\`; +export { _18 as "#" }; +var _19 = \`##--ba6fb20eb138e8d73dc4\`; +export { _19 as "##" }; +var _1a = \`#.#.#--a6704dcf2abf08ff56bd\`; +export { _1a as "#.#.#" }; +export var _ = \`_--aa2521adbafa6a1b57d0\`; +var _1b = \`{}--c716be70a0fac8bbc9e8\`; +export { _1b as "{}" }; +var _1c = \`foo.bar--ce58180c03c903fcc73c\`; +export { _1c as "foo.bar" }; +var _1d = \`:hover--defde77234f3cb7141b1\`; +export { _1d as ":hover" }; +var _1e = \`:hover:focus:active--cf83606abd36c7adf7e7\`; +export { _1e as ":hover:focus:active" }; +var _1f = \`[attr=value]--c9620f5e0b4a2472cd5a\`; +export { _1f as "[attr=value]" }; +var _20 = \`f/o/o--d439f5313663238836bb\`; +export { _20 as "f/o/o" }; +var _21 = \`f\\\\o\\\\o--f64285b41af14c5e74b5\`; +export { _21 as "f\\\\o\\\\o" }; +var _22 = \`f*o*o--e844a318c45519219501\`; +export { _22 as "f*o*o" }; +var _23 = \`f!o!o--ae46ad5331777ab05875\`; +export { _23 as "f!o!o" }; +var _24 = \`f'o'o--a23d7b9b14b04706b089\`; +export { _24 as "f'o'o" }; +var _25 = \`f~o~o--cc96b7a27dbd52fba7a5\`; +export { _25 as "f~o~o" }; +var _26 = \`f+o+o--debcf9986b3f64af6af9\`; +export { _26 as "f+o+o" }; +var _27 = \`foo/bar--d76ec2006d8359a0df78\`; +export { _27 as "foo/bar" }; +var _28 = \`foo\\\\bar--c17737aec664275b67b0\`; +export { _28 as "foo\\\\bar" }; +var _29 = \`foo/bar/baz--c948ac137924110011f2\`; +export { _29 as "foo/bar/baz" }; +var _2a = \`foo\\\\bar\\\\baz--ee89c9e938e6eb8df43d\`; +export { _2a as "foo\\\\bar\\\\baz" }; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should work and respect the "localIdentHashFunction" option: module 2`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../../src/runtime/api.js"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`.test--KuIShlgsYf { + background: red; +} + +._test--Lb3fhDAuJv { + background: blue; +} + +.className--LdhpkZRWyK { + background: red; +} + +#someId--b0rhwJStMR { + background: green; +} + +.className--LdhpkZRWyK .subClass--Mw9j4nIdjx { + color: green; +} + +#someId--b0rhwJStMR .subClass--Mw9j4nIdjx { + color: blue; +} + +.-a0-34a___f--DdFWMPoluI { + color: red; +} + +.m_x_\\\\@--OdAmghrme3 { + margin-left: auto !important; + margin-right: auto !important; +} + +.B\\\\&W\\\\?--h4SEF34CLw { + margin-left: auto !important; + margin-right: auto !important; +} + +/* matches elements with class=":\\\`(" */ +.\\\\3A \\\\\\\`\\\\(--fKJQkLarfQ { + color: aqua; +} + +/* matches elements with class="1a2b3c" */ +.\\\\31 a2b3c--YR1u_buYf6 { + color: aliceblue; +} + +/* matches the element with id="#fake-id" */ +#\\\\#fake-id--AqiAGSfnwa { + color: antiquewhite; +} + +/* matches the element with id="-a-b-c-" */ +#-a-b-c---CwXv27VMwy { + color: azure; +} + +/* matches the element with id="©" */ +#©--jBj0sZiWBy { + color: black; +} + +.♥--vJl9A9Ds21 { background: lime; } +.©--jBj0sZiWBy { background: lime; } +.😍--CNLr9yJwqs { background: lime; } +.“‘’”--GM0Y0nFCPt { background: lime; } +.☺☃--NKrBw7EAqP { background: lime; } +.⌘⌥--edHWpSne18 { background: lime; } +.𝄞♪♩♫♬--QyMp9YMEoY { background: lime; } +.💩--B82YxwgREH { background: lime; } +.\\\\?--ndmpvNNltJ { background: lime; } +.\\\\@--v3gq0wPogd { background: lime; } +.\\\\.--zd5uIZq6Kr { background: lime; } +.\\\\3A \\\\)--ZiZnRjRT03 { background: lime; } +.\\\\3A \\\\\\\`\\\\(--fKJQkLarfQ { background: lime; } +.\\\\31 23--oqRGsO4UR7 { background: lime; } +.\\\\31 a2b3c--YR1u_buYf6 { background: lime; } +.\\\\--TdAx2ZSkw7 { background: lime; } +.\\\\<\\\\>\\\\<\\\\<\\\\<\\\\>\\\\>\\\\<\\\\>--ozNsTIG0LL { background: lime; } +.\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\[\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\>\\\\+\\\\<\\\\<\\\\<\\\\<\\\\-\\\\]\\\\>\\\\+\\\\+\\\\.\\\\>\\\\+\\\\.\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\.\\\\+\\\\+\\\\+\\\\.\\\\>\\\\+\\\\+\\\\.\\\\<\\\\<\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\>\\\\.\\\\+\\\\+\\\\+\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\>\\\\+\\\\.\\\\>\\\\.--ByKoYcSrMT { background: lime; } +.\\\\#--HkwIsjW5i7 { background: lime; } +.\\\\#\\\\#--IJc6Xl4ZKV { background: lime; } +.\\\\#\\\\.\\\\#\\\\.\\\\#--BnPpnJmPeN { background: lime; } +.\\\\_--bCwkZEDuxD { background: lime; } +.\\\\{\\\\}--IZkBfE9iUP { background: lime; } +.\\\\#fake\\\\-id--AqiAGSfnwa { background: lime; } +.foo\\\\.bar--uajo7mHzD_ { background: lime; } +.\\\\3A hover--HVudUNXnLN { background: lime; } +.\\\\3A hover\\\\3A focus\\\\3A active--ZlaaXvHLUs { background: lime; } +.\\\\[attr\\\\=value\\\\]--PWvC4jVM5S { background: lime; } +.f\\\\/o\\\\/o--A5l5sDODF4 { background: lime; } +.f\\\\\\\\o\\\\\\\\o--DFfh4KyqOO { background: lime; } +.f\\\\*o\\\\*o--gv1E2n_bVv { background: lime; } +.f\\\\!o\\\\!o--_aIyR9ETAs { background: lime; } +.f\\\\'o\\\\'o--HSXNnSjt1Q { background: lime; } +.f\\\\~o\\\\~o--MrVzSIcSXy { background: lime; } +.f\\\\+o\\\\+o--EvMHRmCudy { background: lime; } + +.foo\\\\/bar--hei2uQgDeX { + background: hotpink; +} + +.foo\\\\\\\\bar--IgSzmmsCqi { + background: hotpink; +} + +.foo\\\\/bar\\\\/baz--p6KJMhNWwm { + background: hotpink; +} + +.foo\\\\\\\\bar\\\\\\\\baz--HZerWgmU0f { + background: hotpink; +} +\`, ""]); +// Exports +var _1 = \`123--oqRGsO4UR7\`; +export { _1 as "123" }; +export var test = \`test--KuIShlgsYf\`; +export var _test = \`_test--Lb3fhDAuJv\`; +export var className = \`className--LdhpkZRWyK\`; +export var someId = \`someId--b0rhwJStMR\`; +export var subClass = \`subClass--Mw9j4nIdjx\`; +var _2 = \`-a0-34a___f--DdFWMPoluI\`; +export { _2 as "-a0-34a___f" }; +var _3 = \`m_x_@--OdAmghrme3\`; +export { _3 as "m_x_@" }; +var _4 = \`B&W?--h4SEF34CLw\`; +export { _4 as "B&W?" }; +var _5 = \`:\\\`(--fKJQkLarfQ\`; +export { _5 as ":\`(" }; +var _6 = \`1a2b3c--YR1u_buYf6\`; +export { _6 as "1a2b3c" }; +var _7 = \`#fake-id--AqiAGSfnwa\`; +export { _7 as "#fake-id" }; +var _8 = \`-a-b-c---CwXv27VMwy\`; +export { _8 as "-a-b-c-" }; +var _9 = \`©--jBj0sZiWBy\`; +export { _9 as "©" }; +var _a = \`♥--vJl9A9Ds21\`; +export { _a as "♥" }; +var _b = \`😍--CNLr9yJwqs\`; +export { _b as "😍" }; +var _c = \`“‘’”--GM0Y0nFCPt\`; +export { _c as "“‘’”" }; +var _d = \`☺☃--NKrBw7EAqP\`; +export { _d as "☺☃" }; +var _e = \`⌘⌥--edHWpSne18\`; +export { _e as "⌘⌥" }; +var _f = \`𝄞♪♩♫♬--QyMp9YMEoY\`; +export { _f as "𝄞♪♩♫♬" }; +var _10 = \`💩--B82YxwgREH\`; +export { _10 as "💩" }; +var _11 = \`?--ndmpvNNltJ\`; +export { _11 as "?" }; +var _12 = \`@--v3gq0wPogd\`; +export { _12 as "@" }; +var _13 = \`.--zd5uIZq6Kr\`; +export { _13 as "." }; +var _14 = \`:)--ZiZnRjRT03\`; +export { _14 as ":)" }; +var _15 = \`

--TdAx2ZSkw7\`; +export { _15 as "

" }; +var _16 = \`<><<<>><>--ozNsTIG0LL\`; +export { _16 as "<><<<>><>" }; +var _17 = \`++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.--ByKoYcSrMT\`; +export { _17 as "++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>." }; +var _18 = \`#--HkwIsjW5i7\`; +export { _18 as "#" }; +var _19 = \`##--IJc6Xl4ZKV\`; +export { _19 as "##" }; +var _1a = \`#.#.#--BnPpnJmPeN\`; +export { _1a as "#.#.#" }; +export var _ = \`_--bCwkZEDuxD\`; +var _1b = \`{}--IZkBfE9iUP\`; +export { _1b as "{}" }; +var _1c = \`foo.bar--uajo7mHzD_\`; +export { _1c as "foo.bar" }; +var _1d = \`:hover--HVudUNXnLN\`; +export { _1d as ":hover" }; +var _1e = \`:hover:focus:active--ZlaaXvHLUs\`; +export { _1e as ":hover:focus:active" }; +var _1f = \`[attr=value]--PWvC4jVM5S\`; +export { _1f as "[attr=value]" }; +var _20 = \`f/o/o--A5l5sDODF4\`; +export { _20 as "f/o/o" }; +var _21 = \`f\\\\o\\\\o--DFfh4KyqOO\`; +export { _21 as "f\\\\o\\\\o" }; +var _22 = \`f*o*o--gv1E2n_bVv\`; +export { _22 as "f*o*o" }; +var _23 = \`f!o!o--_aIyR9ETAs\`; +export { _23 as "f!o!o" }; +var _24 = \`f'o'o--HSXNnSjt1Q\`; +export { _24 as "f'o'o" }; +var _25 = \`f~o~o--MrVzSIcSXy\`; +export { _25 as "f~o~o" }; +var _26 = \`f+o+o--EvMHRmCudy\`; +export { _26 as "f+o+o" }; +var _27 = \`foo/bar--hei2uQgDeX\`; +export { _27 as "foo/bar" }; +var _28 = \`foo\\\\bar--IgSzmmsCqi\`; +export { _28 as "foo\\\\bar" }; +var _29 = \`foo/bar/baz--p6KJMhNWwm\`; +export { _29 as "foo/bar/baz" }; +var _2a = \`foo\\\\bar\\\\baz--HZerWgmU0f\`; +export { _2a as "foo\\\\bar\\\\baz" }; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should work and respect the "localIdentHashFunction" option: result 1`] = ` +[ + [ + "./modules/localIdentName/localIdentName.css", + ".test--ddd414ab5d5137709283 { + background: red; +} + +._test--e91d3d0c5fd37cd4b01b { + background: blue; +} + +.className--e02e6f829b2bee39d627 { + background: red; +} + +#someId--de52fa8c46db92b11447 { + background: green; +} + +.className--e02e6f829b2bee39d627 .subClass--be91981b36e10e364e4c { + color: green; +} + +#someId--de52fa8c46db92b11447 .subClass--be91981b36e10e364e4c { + color: blue; +} + +.-a0-34a___f--da00a255d4f26816d790 { + color: red; +} + +.m_x_\\@--bfd2a88024baab94215a { + margin-left: auto !important; + margin-right: auto !important; +} + +.B\\&W\\?--bdeaa204fa06e193156e { + margin-left: auto !important; + margin-right: auto !important; +} + +/* matches elements with class=":\`(" */ +.\\3A \\\`\\(--ca761b17eca1ae06d42e { + color: aqua; +} + +/* matches elements with class="1a2b3c" */ +.\\31 a2b3c--a35141d9affd245508ec { + color: aliceblue; +} + +/* matches the element with id="#fake-id" */ +#\\#fake-id--ad040e49adcf9ebf2b28 { + color: antiquewhite; +} + +/* matches the element with id="-a-b-c-" */ +#-a-b-c---e778be7522ccfc908a7f { + color: azure; +} + +/* matches the element with id="©" */ +#©--e0f3ca20d394f3e4c0c4 { + color: black; +} + +.♥--a33350b333a80f1b1a5b { background: lime; } +.©--e0f3ca20d394f3e4c0c4 { background: lime; } +.😍--c0436529b39516386e8e { background: lime; } +.“‘’”--e70e1ad7759d3f300df8 { background: lime; } +.☺☃--a0cb57576a5c7938d368 { background: lime; } +.⌘⌥--e217e979d1184a514863 { background: lime; } +.𝄞♪♩♫♬--a84ff99d334be3b94b99 { background: lime; } +.💩--d850ae0fa2bc4c199f78 { background: lime; } +.\\?--ce25d6e6d5d3f7f1caf8 { background: lime; } +.\\@--af4ac041e6ccf6398ff5 { background: lime; } +.\\.--e94958877c738509339f { background: lime; } +.\\3A \\)--c80360aed4da410414fc { background: lime; } +.\\3A \\\`\\(--ca761b17eca1ae06d42e { background: lime; } +.\\31 23--c945113ffceee32ec307 { background: lime; } +.\\31 a2b3c--a35141d9affd245508ec { background: lime; } +.\\--b01c44339fab06966cef { background: lime; } +.\\<\\>\\<\\<\\<\\>\\>\\<\\>--e4fde695b6d3728c37e2 { background: lime; } +.\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\[\\>\\+\\+\\+\\+\\+\\+\\+\\>\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\>\\+\\+\\+\\>\\+\\<\\<\\<\\<\\-\\]\\>\\+\\+\\.\\>\\+\\.\\+\\+\\+\\+\\+\\+\\+\\.\\.\\+\\+\\+\\.\\>\\+\\+\\.\\<\\<\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\.\\>\\.\\+\\+\\+\\.\\-\\-\\-\\-\\-\\-\\.\\-\\-\\-\\-\\-\\-\\-\\-\\.\\>\\+\\.\\>\\.--dd1263b9248633b49ab6 { background: lime; } +.\\#--e135fb99b5f04b604132 { background: lime; } +.\\#\\#--ba6fb20eb138e8d73dc4 { background: lime; } +.\\#\\.\\#\\.\\#--a6704dcf2abf08ff56bd { background: lime; } +.\\_--aa2521adbafa6a1b57d0 { background: lime; } +.\\{\\}--c716be70a0fac8bbc9e8 { background: lime; } +.\\#fake\\-id--ad040e49adcf9ebf2b28 { background: lime; } +.foo\\.bar--ce58180c03c903fcc73c { background: lime; } +.\\3A hover--defde77234f3cb7141b1 { background: lime; } +.\\3A hover\\3A focus\\3A active--cf83606abd36c7adf7e7 { background: lime; } +.\\[attr\\=value\\]--c9620f5e0b4a2472cd5a { background: lime; } +.f\\/o\\/o--d439f5313663238836bb { background: lime; } +.f\\\\o\\\\o--f64285b41af14c5e74b5 { background: lime; } +.f\\*o\\*o--e844a318c45519219501 { background: lime; } +.f\\!o\\!o--ae46ad5331777ab05875 { background: lime; } +.f\\'o\\'o--a23d7b9b14b04706b089 { background: lime; } +.f\\~o\\~o--cc96b7a27dbd52fba7a5 { background: lime; } +.f\\+o\\+o--debcf9986b3f64af6af9 { background: lime; } + +.foo\\/bar--d76ec2006d8359a0df78 { + background: hotpink; +} + +.foo\\\\bar--c17737aec664275b67b0 { + background: hotpink; +} + +.foo\\/bar\\/baz--c948ac137924110011f2 { + background: hotpink; +} + +.foo\\\\bar\\\\baz--ee89c9e938e6eb8df43d { + background: hotpink; +} +", + "", + ], +] +`; + +exports[`"modules" option should work and respect the "localIdentHashFunction" option: result 2`] = ` +[ + [ + "./modules/localIdentName/localIdentName.css", + ".test--KuIShlgsYf { + background: red; +} + +._test--Lb3fhDAuJv { + background: blue; +} + +.className--LdhpkZRWyK { + background: red; +} + +#someId--b0rhwJStMR { + background: green; +} + +.className--LdhpkZRWyK .subClass--Mw9j4nIdjx { + color: green; +} + +#someId--b0rhwJStMR .subClass--Mw9j4nIdjx { + color: blue; +} + +.-a0-34a___f--DdFWMPoluI { + color: red; +} + +.m_x_\\@--OdAmghrme3 { + margin-left: auto !important; + margin-right: auto !important; +} + +.B\\&W\\?--h4SEF34CLw { + margin-left: auto !important; + margin-right: auto !important; +} + +/* matches elements with class=":\`(" */ +.\\3A \\\`\\(--fKJQkLarfQ { + color: aqua; +} + +/* matches elements with class="1a2b3c" */ +.\\31 a2b3c--YR1u_buYf6 { + color: aliceblue; +} + +/* matches the element with id="#fake-id" */ +#\\#fake-id--AqiAGSfnwa { + color: antiquewhite; +} + +/* matches the element with id="-a-b-c-" */ +#-a-b-c---CwXv27VMwy { + color: azure; +} + +/* matches the element with id="©" */ +#©--jBj0sZiWBy { + color: black; +} + +.♥--vJl9A9Ds21 { background: lime; } +.©--jBj0sZiWBy { background: lime; } +.😍--CNLr9yJwqs { background: lime; } +.“‘’”--GM0Y0nFCPt { background: lime; } +.☺☃--NKrBw7EAqP { background: lime; } +.⌘⌥--edHWpSne18 { background: lime; } +.𝄞♪♩♫♬--QyMp9YMEoY { background: lime; } +.💩--B82YxwgREH { background: lime; } +.\\?--ndmpvNNltJ { background: lime; } +.\\@--v3gq0wPogd { background: lime; } +.\\.--zd5uIZq6Kr { background: lime; } +.\\3A \\)--ZiZnRjRT03 { background: lime; } +.\\3A \\\`\\(--fKJQkLarfQ { background: lime; } +.\\31 23--oqRGsO4UR7 { background: lime; } +.\\31 a2b3c--YR1u_buYf6 { background: lime; } +.\\--TdAx2ZSkw7 { background: lime; } +.\\<\\>\\<\\<\\<\\>\\>\\<\\>--ozNsTIG0LL { background: lime; } +.\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\[\\>\\+\\+\\+\\+\\+\\+\\+\\>\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\>\\+\\+\\+\\>\\+\\<\\<\\<\\<\\-\\]\\>\\+\\+\\.\\>\\+\\.\\+\\+\\+\\+\\+\\+\\+\\.\\.\\+\\+\\+\\.\\>\\+\\+\\.\\<\\<\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\.\\>\\.\\+\\+\\+\\.\\-\\-\\-\\-\\-\\-\\.\\-\\-\\-\\-\\-\\-\\-\\-\\.\\>\\+\\.\\>\\.--ByKoYcSrMT { background: lime; } +.\\#--HkwIsjW5i7 { background: lime; } +.\\#\\#--IJc6Xl4ZKV { background: lime; } +.\\#\\.\\#\\.\\#--BnPpnJmPeN { background: lime; } +.\\_--bCwkZEDuxD { background: lime; } +.\\{\\}--IZkBfE9iUP { background: lime; } +.\\#fake\\-id--AqiAGSfnwa { background: lime; } +.foo\\.bar--uajo7mHzD_ { background: lime; } +.\\3A hover--HVudUNXnLN { background: lime; } +.\\3A hover\\3A focus\\3A active--ZlaaXvHLUs { background: lime; } +.\\[attr\\=value\\]--PWvC4jVM5S { background: lime; } +.f\\/o\\/o--A5l5sDODF4 { background: lime; } +.f\\\\o\\\\o--DFfh4KyqOO { background: lime; } +.f\\*o\\*o--gv1E2n_bVv { background: lime; } +.f\\!o\\!o--_aIyR9ETAs { background: lime; } +.f\\'o\\'o--HSXNnSjt1Q { background: lime; } +.f\\~o\\~o--MrVzSIcSXy { background: lime; } +.f\\+o\\+o--EvMHRmCudy { background: lime; } + +.foo\\/bar--hei2uQgDeX { + background: hotpink; +} + +.foo\\\\bar--IgSzmmsCqi { + background: hotpink; +} + +.foo\\/bar\\/baz--p6KJMhNWwm { + background: hotpink; +} + +.foo\\\\bar\\\\baz--HZerWgmU0f { + background: hotpink; +} +", + "", + ], +] +`; + +exports[`"modules" option should work and respect the "localIdentHashFunction" option: warnings 1`] = `[]`; + +exports[`"modules" option should work and respect the "localIdentHashFunction" option: warnings 2`] = `[]`; + +exports[`"modules" option should work and respect the "localIdentName" option 2: errors 1`] = `[]`; + +exports[`"modules" option should work and respect the "localIdentName" option 2: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../../src/runtime/api.js"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`.localIdentName--test--aa7e9 { + background: red; +} + +.localIdentName--_test--c6a38 { + background: blue; +} + +.localIdentName--className--ae4cd { + background: red; +} + +#localIdentName--someId--a747a { + background: green; +} + +.localIdentName--className--ae4cd .localIdentName--subClass--bf463 { + color: green; +} + +#localIdentName--someId--a747a .localIdentName--subClass--bf463 { + color: blue; +} + +.localIdentName---a0-34a___f--d3488 { + color: red; +} + +.localIdentName--m_x_\\\\@--ff0d5 { + margin-left: auto !important; + margin-right: auto !important; +} + +.localIdentName--B\\\\&W\\\\?--f7662 { + margin-left: auto !important; + margin-right: auto !important; +} + +/* matches elements with class=":\\\`(" */ +.localIdentName--\\\\3A \\\\\\\`\\\\(--d3744 { + color: aqua; +} + +/* matches elements with class="1a2b3c" */ +.localIdentName--\\\\31 a2b3c--c4cbc { + color: aliceblue; +} + +/* matches the element with id="#fake-id" */ +#localIdentName--\\\\#fake-id--e42a4 { + color: antiquewhite; +} + +/* matches the element with id="-a-b-c-" */ +#localIdentName---a-b-c---e4b0f { + color: azure; +} + +/* matches the element with id="©" */ +#localIdentName--©--c3e22 { + color: black; +} + +.localIdentName--♥--a47a2 { background: lime; } +.localIdentName--©--c3e22 { background: lime; } +.localIdentName--😍--f0c92 { background: lime; } +.localIdentName--“‘’”--ca0fd { background: lime; } +.localIdentName--☺☃--f9c8b { background: lime; } +.localIdentName--⌘⌥--b3cde { background: lime; } +.localIdentName--𝄞♪♩♫♬--d2c20 { background: lime; } +.localIdentName--💩--f7356 { background: lime; } +.localIdentName--\\\\?--d9503 { background: lime; } +.localIdentName--\\\\@--b2fac { background: lime; } +.localIdentName--\\\\.--fd361 { background: lime; } +.localIdentName--\\\\3A \\\\)--c58a4 { background: lime; } +.localIdentName--\\\\3A \\\\\\\`\\\\(--d3744 { background: lime; } +.localIdentName--\\\\31 23--c47e4 { background: lime; } +.localIdentName--\\\\31 a2b3c--c4cbc { background: lime; } +.localIdentName--\\\\--cc129 { background: lime; } +.localIdentName--\\\\<\\\\>\\\\<\\\\<\\\\<\\\\>\\\\>\\\\<\\\\>--fcdf9 { background: lime; } +.localIdentName--\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\[\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\>\\\\+\\\\<\\\\<\\\\<\\\\<\\\\-\\\\]\\\\>\\\\+\\\\+\\\\.\\\\>\\\\+\\\\.\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\.\\\\+\\\\+\\\\+\\\\.\\\\>\\\\+\\\\+\\\\.\\\\<\\\\<\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\>\\\\.\\\\+\\\\+\\\\+\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\>\\\\+\\\\.\\\\>\\\\.--fec05 { background: lime; } +.localIdentName--\\\\#--e36d3 { background: lime; } +.localIdentName--\\\\#\\\\#--b7f30 { background: lime; } +.localIdentName--\\\\#\\\\.\\\\#\\\\.\\\\#--a3350 { background: lime; } +.localIdentName--\\\\_--f2a47 { background: lime; } +.localIdentName--\\\\{\\\\}--b6deb { background: lime; } +.localIdentName--\\\\#fake\\\\-id--e42a4 { background: lime; } +.localIdentName--foo\\\\.bar--e5115 { background: lime; } +.localIdentName--\\\\3A hover--dd09e { background: lime; } +.localIdentName--\\\\3A hover\\\\3A focus\\\\3A active--a9185 { background: lime; } +.localIdentName--\\\\[attr\\\\=value\\\\]--c242f { background: lime; } +.localIdentName--f\\\\/o\\\\/o--a3967 { background: lime; } +.localIdentName--f\\\\\\\\o\\\\\\\\o--ec55c { background: lime; } +.localIdentName--f\\\\*o\\\\*o--f8235 { background: lime; } +.localIdentName--f\\\\!o\\\\!o--b05e2 { background: lime; } +.localIdentName--f\\\\'o\\\\'o--e0449 { background: lime; } +.localIdentName--f\\\\~o\\\\~o--b5a43 { background: lime; } +.localIdentName--f\\\\+o\\\\+o--e002f { background: lime; } + +.localIdentName--foo\\\\/bar--e3f1a { + background: hotpink; +} + +.localIdentName--foo\\\\\\\\bar--ac6d2 { + background: hotpink; +} + +.localIdentName--foo\\\\/bar\\\\/baz--c78d7 { + background: hotpink; +} + +.localIdentName--foo\\\\\\\\bar\\\\\\\\baz--f235d { + background: hotpink; +} +\`, ""]); +// Exports +var _1 = \`localIdentName--123--c47e4\`; +export { _1 as "123" }; +export var test = \`localIdentName--test--aa7e9\`; +export var _test = \`localIdentName--_test--c6a38\`; +export var className = \`localIdentName--className--ae4cd\`; +export var someId = \`localIdentName--someId--a747a\`; +export var subClass = \`localIdentName--subClass--bf463\`; +var _2 = \`localIdentName---a0-34a___f--d3488\`; +export { _2 as "-a0-34a___f" }; +var _3 = \`localIdentName--m_x_@--ff0d5\`; +export { _3 as "m_x_@" }; +var _4 = \`localIdentName--B&W?--f7662\`; +export { _4 as "B&W?" }; +var _5 = \`localIdentName--:\\\`(--d3744\`; +export { _5 as ":\`(" }; +var _6 = \`localIdentName--1a2b3c--c4cbc\`; +export { _6 as "1a2b3c" }; +var _7 = \`localIdentName--#fake-id--e42a4\`; +export { _7 as "#fake-id" }; +var _8 = \`localIdentName---a-b-c---e4b0f\`; +export { _8 as "-a-b-c-" }; +var _9 = \`localIdentName--©--c3e22\`; +export { _9 as "©" }; +var _a = \`localIdentName--♥--a47a2\`; +export { _a as "♥" }; +var _b = \`localIdentName--😍--f0c92\`; +export { _b as "😍" }; +var _c = \`localIdentName--“‘’”--ca0fd\`; +export { _c as "“‘’”" }; +var _d = \`localIdentName--☺☃--f9c8b\`; +export { _d as "☺☃" }; +var _e = \`localIdentName--⌘⌥--b3cde\`; +export { _e as "⌘⌥" }; +var _f = \`localIdentName--𝄞♪♩♫♬--d2c20\`; +export { _f as "𝄞♪♩♫♬" }; +var _10 = \`localIdentName--💩--f7356\`; +export { _10 as "💩" }; +var _11 = \`localIdentName--?--d9503\`; +export { _11 as "?" }; +var _12 = \`localIdentName--@--b2fac\`; +export { _12 as "@" }; +var _13 = \`localIdentName--.--fd361\`; +export { _13 as "." }; +var _14 = \`localIdentName--:)--c58a4\`; +export { _14 as ":)" }; +var _15 = \`localIdentName--

--cc129\`; +export { _15 as "

" }; +var _16 = \`localIdentName--<><<<>><>--fcdf9\`; +export { _16 as "<><<<>><>" }; +var _17 = \`localIdentName--++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.--fec05\`; +export { _17 as "++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>." }; +var _18 = \`localIdentName--#--e36d3\`; +export { _18 as "#" }; +var _19 = \`localIdentName--##--b7f30\`; +export { _19 as "##" }; +var _1a = \`localIdentName--#.#.#--a3350\`; +export { _1a as "#.#.#" }; +export var _ = \`localIdentName--_--f2a47\`; +var _1b = \`localIdentName--{}--b6deb\`; +export { _1b as "{}" }; +var _1c = \`localIdentName--foo.bar--e5115\`; +export { _1c as "foo.bar" }; +var _1d = \`localIdentName--:hover--dd09e\`; +export { _1d as ":hover" }; +var _1e = \`localIdentName--:hover:focus:active--a9185\`; +export { _1e as ":hover:focus:active" }; +var _1f = \`localIdentName--[attr=value]--c242f\`; +export { _1f as "[attr=value]" }; +var _20 = \`localIdentName--f/o/o--a3967\`; +export { _20 as "f/o/o" }; +var _21 = \`localIdentName--f\\\\o\\\\o--ec55c\`; +export { _21 as "f\\\\o\\\\o" }; +var _22 = \`localIdentName--f*o*o--f8235\`; +export { _22 as "f*o*o" }; +var _23 = \`localIdentName--f!o!o--b05e2\`; +export { _23 as "f!o!o" }; +var _24 = \`localIdentName--f'o'o--e0449\`; +export { _24 as "f'o'o" }; +var _25 = \`localIdentName--f~o~o--b5a43\`; +export { _25 as "f~o~o" }; +var _26 = \`localIdentName--f+o+o--e002f\`; +export { _26 as "f+o+o" }; +var _27 = \`localIdentName--foo/bar--e3f1a\`; +export { _27 as "foo/bar" }; +var _28 = \`localIdentName--foo\\\\bar--ac6d2\`; +export { _28 as "foo\\\\bar" }; +var _29 = \`localIdentName--foo/bar/baz--c78d7\`; +export { _29 as "foo/bar/baz" }; +var _2a = \`localIdentName--foo\\\\bar\\\\baz--f235d\`; +export { _2a as "foo\\\\bar\\\\baz" }; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should work and respect the "localIdentName" option 2: result 1`] = ` +[ + [ + "./modules/localIdentName/localIdentName.css", + ".localIdentName--test--aa7e9 { + background: red; +} + +.localIdentName--_test--c6a38 { + background: blue; +} + +.localIdentName--className--ae4cd { + background: red; +} + +#localIdentName--someId--a747a { + background: green; +} + +.localIdentName--className--ae4cd .localIdentName--subClass--bf463 { + color: green; +} + +#localIdentName--someId--a747a .localIdentName--subClass--bf463 { + color: blue; +} + +.localIdentName---a0-34a___f--d3488 { + color: red; +} + +.localIdentName--m_x_\\@--ff0d5 { + margin-left: auto !important; + margin-right: auto !important; +} + +.localIdentName--B\\&W\\?--f7662 { + margin-left: auto !important; + margin-right: auto !important; +} + +/* matches elements with class=":\`(" */ +.localIdentName--\\3A \\\`\\(--d3744 { + color: aqua; +} + +/* matches elements with class="1a2b3c" */ +.localIdentName--\\31 a2b3c--c4cbc { + color: aliceblue; +} + +/* matches the element with id="#fake-id" */ +#localIdentName--\\#fake-id--e42a4 { + color: antiquewhite; +} + +/* matches the element with id="-a-b-c-" */ +#localIdentName---a-b-c---e4b0f { + color: azure; +} + +/* matches the element with id="©" */ +#localIdentName--©--c3e22 { + color: black; +} + +.localIdentName--♥--a47a2 { background: lime; } +.localIdentName--©--c3e22 { background: lime; } +.localIdentName--😍--f0c92 { background: lime; } +.localIdentName--“‘’”--ca0fd { background: lime; } +.localIdentName--☺☃--f9c8b { background: lime; } +.localIdentName--⌘⌥--b3cde { background: lime; } +.localIdentName--𝄞♪♩♫♬--d2c20 { background: lime; } +.localIdentName--💩--f7356 { background: lime; } +.localIdentName--\\?--d9503 { background: lime; } +.localIdentName--\\@--b2fac { background: lime; } +.localIdentName--\\.--fd361 { background: lime; } +.localIdentName--\\3A \\)--c58a4 { background: lime; } +.localIdentName--\\3A \\\`\\(--d3744 { background: lime; } +.localIdentName--\\31 23--c47e4 { background: lime; } +.localIdentName--\\31 a2b3c--c4cbc { background: lime; } +.localIdentName--\\--cc129 { background: lime; } +.localIdentName--\\<\\>\\<\\<\\<\\>\\>\\<\\>--fcdf9 { background: lime; } +.localIdentName--\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\[\\>\\+\\+\\+\\+\\+\\+\\+\\>\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\>\\+\\+\\+\\>\\+\\<\\<\\<\\<\\-\\]\\>\\+\\+\\.\\>\\+\\.\\+\\+\\+\\+\\+\\+\\+\\.\\.\\+\\+\\+\\.\\>\\+\\+\\.\\<\\<\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\.\\>\\.\\+\\+\\+\\.\\-\\-\\-\\-\\-\\-\\.\\-\\-\\-\\-\\-\\-\\-\\-\\.\\>\\+\\.\\>\\.--fec05 { background: lime; } +.localIdentName--\\#--e36d3 { background: lime; } +.localIdentName--\\#\\#--b7f30 { background: lime; } +.localIdentName--\\#\\.\\#\\.\\#--a3350 { background: lime; } +.localIdentName--\\_--f2a47 { background: lime; } +.localIdentName--\\{\\}--b6deb { background: lime; } +.localIdentName--\\#fake\\-id--e42a4 { background: lime; } +.localIdentName--foo\\.bar--e5115 { background: lime; } +.localIdentName--\\3A hover--dd09e { background: lime; } +.localIdentName--\\3A hover\\3A focus\\3A active--a9185 { background: lime; } +.localIdentName--\\[attr\\=value\\]--c242f { background: lime; } +.localIdentName--f\\/o\\/o--a3967 { background: lime; } +.localIdentName--f\\\\o\\\\o--ec55c { background: lime; } +.localIdentName--f\\*o\\*o--f8235 { background: lime; } +.localIdentName--f\\!o\\!o--b05e2 { background: lime; } +.localIdentName--f\\'o\\'o--e0449 { background: lime; } +.localIdentName--f\\~o\\~o--b5a43 { background: lime; } +.localIdentName--f\\+o\\+o--e002f { background: lime; } + +.localIdentName--foo\\/bar--e3f1a { + background: hotpink; +} + +.localIdentName--foo\\\\bar--ac6d2 { + background: hotpink; +} + +.localIdentName--foo\\/bar\\/baz--c78d7 { + background: hotpink; +} + +.localIdentName--foo\\\\bar\\\\baz--f235d { + background: hotpink; +} +", + "", + ], +] +`; + +exports[`"modules" option should work and respect the "localIdentName" option 2: warnings 1`] = `[]`; + +exports[`"modules" option should work and respect the "localIdentName" option: errors 1`] = `[]`; + +exports[`"modules" option should work and respect the "localIdentName" option: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../../src/runtime/api.js"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`.localIdentName--test--Cqfpw { + background: red; +} + +.localIdentName--_test--TGo4R { + background: blue; +} + +.localIdentName--className--V3rkz { + background: red; +} + +#localIdentName--someId--p0emr { + background: green; +} + +.localIdentName--className--V3rkz .localIdentName--subClass--v0YwV { + color: green; +} + +#localIdentName--someId--p0emr .localIdentName--subClass--v0YwV { + color: blue; +} + +.localIdentName---a0-34a___f--iD7O5 { + color: red; +} + +.localIdentName--m_x_\\\\@--RH_w1 { + margin-left: auto !important; + margin-right: auto !important; +} + +.localIdentName--B\\\\&W\\\\?--Ag92Y { + margin-left: auto !important; + margin-right: auto !important; +} + +/* matches elements with class=":\\\`(" */ +.localIdentName--\\\\3A \\\\\\\`\\\\(--ETB9N { + color: aqua; +} + +/* matches elements with class="1a2b3c" */ +.localIdentName--\\\\31 a2b3c--LEy8b { + color: aliceblue; +} + +/* matches the element with id="#fake-id" */ +#localIdentName--\\\\#fake-id--JOQqQ { + color: antiquewhite; +} + +/* matches the element with id="-a-b-c-" */ +#localIdentName---a-b-c---LD6vZ { + color: azure; +} + +/* matches the element with id="©" */ +#localIdentName--©--bD4iE { + color: black; +} + +.localIdentName--♥--pHooK { background: lime; } +.localIdentName--©--bD4iE { background: lime; } +.localIdentName--😍--Mkprj { background: lime; } +.localIdentName--“‘’”--hsoP1 { background: lime; } +.localIdentName--☺☃--AERfn { background: lime; } +.localIdentName--⌘⌥--s83tE { background: lime; } +.localIdentName--𝄞♪♩♫♬--sIO5d { background: lime; } +.localIdentName--💩--zVi6s { background: lime; } +.localIdentName--\\\\?--N9lQN { background: lime; } +.localIdentName--\\\\@--SysYq { background: lime; } +.localIdentName--\\\\.--_TYYa { background: lime; } +.localIdentName--\\\\3A \\\\)--TFikf { background: lime; } +.localIdentName--\\\\3A \\\\\\\`\\\\(--ETB9N { background: lime; } +.localIdentName--\\\\31 23--DEfkS { background: lime; } +.localIdentName--\\\\31 a2b3c--LEy8b { background: lime; } +.localIdentName--\\\\--nMEpp { background: lime; } +.localIdentName--\\\\<\\\\>\\\\<\\\\<\\\\<\\\\>\\\\>\\\\<\\\\>--cGH83 { background: lime; } +.localIdentName--\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\[\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\>\\\\+\\\\<\\\\<\\\\<\\\\<\\\\-\\\\]\\\\>\\\\+\\\\+\\\\.\\\\>\\\\+\\\\.\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\.\\\\+\\\\+\\\\+\\\\.\\\\>\\\\+\\\\+\\\\.\\\\<\\\\<\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\>\\\\.\\\\+\\\\+\\\\+\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\>\\\\+\\\\.\\\\>\\\\.--_sBaA { background: lime; } +.localIdentName--\\\\#--Ig420 { background: lime; } +.localIdentName--\\\\#\\\\#--t_MNC { background: lime; } +.localIdentName--\\\\#\\\\.\\\\#\\\\.\\\\#--ozULn { background: lime; } +.localIdentName--\\\\_--qR0Vn { background: lime; } +.localIdentName--\\\\{\\\\}--tt66I { background: lime; } +.localIdentName--\\\\#fake\\\\-id--JOQqQ { background: lime; } +.localIdentName--foo\\\\.bar--RFVWf { background: lime; } +.localIdentName--\\\\3A hover--QnhAB { background: lime; } +.localIdentName--\\\\3A hover\\\\3A focus\\\\3A active--qRhRp { background: lime; } +.localIdentName--\\\\[attr\\\\=value\\\\]--wkL_Q { background: lime; } +.localIdentName--f\\\\/o\\\\/o--KDSjl { background: lime; } +.localIdentName--f\\\\\\\\o\\\\\\\\o--LsVcY { background: lime; } +.localIdentName--f\\\\*o\\\\*o--CNQow { background: lime; } +.localIdentName--f\\\\!o\\\\!o--eUsF4 { background: lime; } +.localIdentName--f\\\\'o\\\\'o--ESWns { background: lime; } +.localIdentName--f\\\\~o\\\\~o--taQ7D { background: lime; } +.localIdentName--f\\\\+o\\\\+o--AL7FE { background: lime; } + +.localIdentName--foo\\\\/bar--GOPxp { + background: hotpink; +} + +.localIdentName--foo\\\\\\\\bar--chesb { + background: hotpink; +} + +.localIdentName--foo\\\\/bar\\\\/baz--QMeNd { + background: hotpink; +} + +.localIdentName--foo\\\\\\\\bar\\\\\\\\baz--jXaak { + background: hotpink; +} +\`, ""]); +// Exports +var _1 = \`localIdentName--123--DEfkS\`; +export { _1 as "123" }; +export var test = \`localIdentName--test--Cqfpw\`; +export var _test = \`localIdentName--_test--TGo4R\`; +export var className = \`localIdentName--className--V3rkz\`; +export var someId = \`localIdentName--someId--p0emr\`; +export var subClass = \`localIdentName--subClass--v0YwV\`; +var _2 = \`localIdentName---a0-34a___f--iD7O5\`; +export { _2 as "-a0-34a___f" }; +var _3 = \`localIdentName--m_x_@--RH_w1\`; +export { _3 as "m_x_@" }; +var _4 = \`localIdentName--B&W?--Ag92Y\`; +export { _4 as "B&W?" }; +var _5 = \`localIdentName--:\\\`(--ETB9N\`; +export { _5 as ":\`(" }; +var _6 = \`localIdentName--1a2b3c--LEy8b\`; +export { _6 as "1a2b3c" }; +var _7 = \`localIdentName--#fake-id--JOQqQ\`; +export { _7 as "#fake-id" }; +var _8 = \`localIdentName---a-b-c---LD6vZ\`; +export { _8 as "-a-b-c-" }; +var _9 = \`localIdentName--©--bD4iE\`; +export { _9 as "©" }; +var _a = \`localIdentName--♥--pHooK\`; +export { _a as "♥" }; +var _b = \`localIdentName--😍--Mkprj\`; +export { _b as "😍" }; +var _c = \`localIdentName--“‘’”--hsoP1\`; +export { _c as "“‘’”" }; +var _d = \`localIdentName--☺☃--AERfn\`; +export { _d as "☺☃" }; +var _e = \`localIdentName--⌘⌥--s83tE\`; +export { _e as "⌘⌥" }; +var _f = \`localIdentName--𝄞♪♩♫♬--sIO5d\`; +export { _f as "𝄞♪♩♫♬" }; +var _10 = \`localIdentName--💩--zVi6s\`; +export { _10 as "💩" }; +var _11 = \`localIdentName--?--N9lQN\`; +export { _11 as "?" }; +var _12 = \`localIdentName--@--SysYq\`; +export { _12 as "@" }; +var _13 = \`localIdentName--.--_TYYa\`; +export { _13 as "." }; +var _14 = \`localIdentName--:)--TFikf\`; +export { _14 as ":)" }; +var _15 = \`localIdentName--

--nMEpp\`; +export { _15 as "

" }; +var _16 = \`localIdentName--<><<<>><>--cGH83\`; +export { _16 as "<><<<>><>" }; +var _17 = \`localIdentName--++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.--_sBaA\`; +export { _17 as "++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>." }; +var _18 = \`localIdentName--#--Ig420\`; +export { _18 as "#" }; +var _19 = \`localIdentName--##--t_MNC\`; +export { _19 as "##" }; +var _1a = \`localIdentName--#.#.#--ozULn\`; +export { _1a as "#.#.#" }; +export var _ = \`localIdentName--_--qR0Vn\`; +var _1b = \`localIdentName--{}--tt66I\`; +export { _1b as "{}" }; +var _1c = \`localIdentName--foo.bar--RFVWf\`; +export { _1c as "foo.bar" }; +var _1d = \`localIdentName--:hover--QnhAB\`; +export { _1d as ":hover" }; +var _1e = \`localIdentName--:hover:focus:active--qRhRp\`; +export { _1e as ":hover:focus:active" }; +var _1f = \`localIdentName--[attr=value]--wkL_Q\`; +export { _1f as "[attr=value]" }; +var _20 = \`localIdentName--f/o/o--KDSjl\`; +export { _20 as "f/o/o" }; +var _21 = \`localIdentName--f\\\\o\\\\o--LsVcY\`; +export { _21 as "f\\\\o\\\\o" }; +var _22 = \`localIdentName--f*o*o--CNQow\`; +export { _22 as "f*o*o" }; +var _23 = \`localIdentName--f!o!o--eUsF4\`; +export { _23 as "f!o!o" }; +var _24 = \`localIdentName--f'o'o--ESWns\`; +export { _24 as "f'o'o" }; +var _25 = \`localIdentName--f~o~o--taQ7D\`; +export { _25 as "f~o~o" }; +var _26 = \`localIdentName--f+o+o--AL7FE\`; +export { _26 as "f+o+o" }; +var _27 = \`localIdentName--foo/bar--GOPxp\`; +export { _27 as "foo/bar" }; +var _28 = \`localIdentName--foo\\\\bar--chesb\`; +export { _28 as "foo\\\\bar" }; +var _29 = \`localIdentName--foo/bar/baz--QMeNd\`; +export { _29 as "foo/bar/baz" }; +var _2a = \`localIdentName--foo\\\\bar\\\\baz--jXaak\`; +export { _2a as "foo\\\\bar\\\\baz" }; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should work and respect the "localIdentName" option: result 1`] = ` +[ + [ + "./modules/localIdentName/localIdentName.css", + ".localIdentName--test--Cqfpw { + background: red; +} + +.localIdentName--_test--TGo4R { + background: blue; +} + +.localIdentName--className--V3rkz { + background: red; +} + +#localIdentName--someId--p0emr { + background: green; +} + +.localIdentName--className--V3rkz .localIdentName--subClass--v0YwV { + color: green; +} + +#localIdentName--someId--p0emr .localIdentName--subClass--v0YwV { + color: blue; +} + +.localIdentName---a0-34a___f--iD7O5 { + color: red; +} + +.localIdentName--m_x_\\@--RH_w1 { + margin-left: auto !important; + margin-right: auto !important; +} + +.localIdentName--B\\&W\\?--Ag92Y { + margin-left: auto !important; + margin-right: auto !important; +} + +/* matches elements with class=":\`(" */ +.localIdentName--\\3A \\\`\\(--ETB9N { + color: aqua; +} + +/* matches elements with class="1a2b3c" */ +.localIdentName--\\31 a2b3c--LEy8b { + color: aliceblue; +} + +/* matches the element with id="#fake-id" */ +#localIdentName--\\#fake-id--JOQqQ { + color: antiquewhite; +} + +/* matches the element with id="-a-b-c-" */ +#localIdentName---a-b-c---LD6vZ { + color: azure; +} + +/* matches the element with id="©" */ +#localIdentName--©--bD4iE { + color: black; +} + +.localIdentName--♥--pHooK { background: lime; } +.localIdentName--©--bD4iE { background: lime; } +.localIdentName--😍--Mkprj { background: lime; } +.localIdentName--“‘’”--hsoP1 { background: lime; } +.localIdentName--☺☃--AERfn { background: lime; } +.localIdentName--⌘⌥--s83tE { background: lime; } +.localIdentName--𝄞♪♩♫♬--sIO5d { background: lime; } +.localIdentName--💩--zVi6s { background: lime; } +.localIdentName--\\?--N9lQN { background: lime; } +.localIdentName--\\@--SysYq { background: lime; } +.localIdentName--\\.--_TYYa { background: lime; } +.localIdentName--\\3A \\)--TFikf { background: lime; } +.localIdentName--\\3A \\\`\\(--ETB9N { background: lime; } +.localIdentName--\\31 23--DEfkS { background: lime; } +.localIdentName--\\31 a2b3c--LEy8b { background: lime; } +.localIdentName--\\--nMEpp { background: lime; } +.localIdentName--\\<\\>\\<\\<\\<\\>\\>\\<\\>--cGH83 { background: lime; } +.localIdentName--\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\[\\>\\+\\+\\+\\+\\+\\+\\+\\>\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\>\\+\\+\\+\\>\\+\\<\\<\\<\\<\\-\\]\\>\\+\\+\\.\\>\\+\\.\\+\\+\\+\\+\\+\\+\\+\\.\\.\\+\\+\\+\\.\\>\\+\\+\\.\\<\\<\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\.\\>\\.\\+\\+\\+\\.\\-\\-\\-\\-\\-\\-\\.\\-\\-\\-\\-\\-\\-\\-\\-\\.\\>\\+\\.\\>\\.--_sBaA { background: lime; } +.localIdentName--\\#--Ig420 { background: lime; } +.localIdentName--\\#\\#--t_MNC { background: lime; } +.localIdentName--\\#\\.\\#\\.\\#--ozULn { background: lime; } +.localIdentName--\\_--qR0Vn { background: lime; } +.localIdentName--\\{\\}--tt66I { background: lime; } +.localIdentName--\\#fake\\-id--JOQqQ { background: lime; } +.localIdentName--foo\\.bar--RFVWf { background: lime; } +.localIdentName--\\3A hover--QnhAB { background: lime; } +.localIdentName--\\3A hover\\3A focus\\3A active--qRhRp { background: lime; } +.localIdentName--\\[attr\\=value\\]--wkL_Q { background: lime; } +.localIdentName--f\\/o\\/o--KDSjl { background: lime; } +.localIdentName--f\\\\o\\\\o--LsVcY { background: lime; } +.localIdentName--f\\*o\\*o--CNQow { background: lime; } +.localIdentName--f\\!o\\!o--eUsF4 { background: lime; } +.localIdentName--f\\'o\\'o--ESWns { background: lime; } +.localIdentName--f\\~o\\~o--taQ7D { background: lime; } +.localIdentName--f\\+o\\+o--AL7FE { background: lime; } + +.localIdentName--foo\\/bar--GOPxp { + background: hotpink; +} + +.localIdentName--foo\\\\bar--chesb { + background: hotpink; +} + +.localIdentName--foo\\/bar\\/baz--QMeNd { + background: hotpink; +} + +.localIdentName--foo\\\\bar\\\\baz--jXaak { + background: hotpink; +} +", + "", + ], +] +`; + +exports[`"modules" option should work and respect the "localIdentName" option: warnings 1`] = `[]`; + +exports[`"modules" option should work and respect the "localIdentRegExp" option: errors 1`] = `[]`; + +exports[`"modules" option should work and respect the "localIdentRegExp" option: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../../src/runtime/api.js"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`.localIdentName__test__KuIShlgs { + background: red; +} + +.localIdentName___test__Lb3fhDAu { + background: blue; +} + +.localIdentName__className__LdhpkZRW { + background: red; +} + +#localIdentName__someId__b0rhwJSt { + background: green; +} + +.localIdentName__className__LdhpkZRW .localIdentName__subClass__Mw9j4nId { + color: green; +} + +#localIdentName__someId__b0rhwJSt .localIdentName__subClass__Mw9j4nId { + color: blue; +} + +.localIdentName__-a0-34a___f__DdFWMPol { + color: red; +} + +.localIdentName__m_x_\\\\@__OdAmghrm { + margin-left: auto !important; + margin-right: auto !important; +} + +.localIdentName__B\\\\&W\\\\?__h4SEF34C { + margin-left: auto !important; + margin-right: auto !important; +} + +/* matches elements with class=":\\\`(" */ +.localIdentName__\\\\3A \\\\\\\`\\\\(__fKJQkLar { + color: aqua; +} + +/* matches elements with class="1a2b3c" */ +.localIdentName__\\\\31 a2b3c__YR1u_buY { + color: aliceblue; +} + +/* matches the element with id="#fake-id" */ +#localIdentName__\\\\#fake-id__AqiAGSfn { + color: antiquewhite; +} + +/* matches the element with id="-a-b-c-" */ +#localIdentName__-a-b-c-__CwXv27VM { + color: azure; +} + +/* matches the element with id="©" */ +#localIdentName__©__jBj0sZiW { + color: black; +} + +.localIdentName__♥__vJl9A9Ds { background: lime; } +.localIdentName__©__jBj0sZiW { background: lime; } +.localIdentName__😍__CNLr9yJw { background: lime; } +.localIdentName__“‘’”__GM0Y0nFC { background: lime; } +.localIdentName__☺☃__NKrBw7EA { background: lime; } +.localIdentName__⌘⌥__edHWpSne { background: lime; } +.localIdentName__𝄞♪♩♫♬__QyMp9YME { background: lime; } +.localIdentName__💩__B82YxwgR { background: lime; } +.localIdentName__\\\\?__ndmpvNNl { background: lime; } +.localIdentName__\\\\@__v3gq0wPo { background: lime; } +.localIdentName__\\\\.__zd5uIZq6 { background: lime; } +.localIdentName__\\\\3A \\\\)__ZiZnRjRT { background: lime; } +.localIdentName__\\\\3A \\\\\\\`\\\\(__fKJQkLar { background: lime; } +.localIdentName__\\\\31 23__oqRGsO4U { background: lime; } +.localIdentName__\\\\31 a2b3c__YR1u_buY { background: lime; } +.localIdentName__\\\\__TdAx2ZSk { background: lime; } +.localIdentName__\\\\<\\\\>\\\\<\\\\<\\\\<\\\\>\\\\>\\\\<\\\\>__ozNsTIG0 { background: lime; } +.localIdentName__\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\[\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\>\\\\+\\\\<\\\\<\\\\<\\\\<\\\\-\\\\]\\\\>\\\\+\\\\+\\\\.\\\\>\\\\+\\\\.\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\.\\\\+\\\\+\\\\+\\\\.\\\\>\\\\+\\\\+\\\\.\\\\<\\\\<\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\>\\\\.\\\\+\\\\+\\\\+\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\>\\\\+\\\\.\\\\>\\\\.__ByKoYcSr { background: lime; } +.localIdentName__\\\\#__HkwIsjW5 { background: lime; } +.localIdentName__\\\\#\\\\#__IJc6Xl4Z { background: lime; } +.localIdentName__\\\\#\\\\.\\\\#\\\\.\\\\#__BnPpnJmP { background: lime; } +.localIdentName__\\\\___bCwkZEDu { background: lime; } +.localIdentName__\\\\{\\\\}__IZkBfE9i { background: lime; } +.localIdentName__\\\\#fake\\\\-id__AqiAGSfn { background: lime; } +.localIdentName__foo\\\\.bar__uajo7mHz { background: lime; } +.localIdentName__\\\\3A hover__HVudUNXn { background: lime; } +.localIdentName__\\\\3A hover\\\\3A focus\\\\3A active__ZlaaXvHL { background: lime; } +.localIdentName__\\\\[attr\\\\=value\\\\]__PWvC4jVM { background: lime; } +.localIdentName__f\\\\/o\\\\/o__A5l5sDOD { background: lime; } +.localIdentName__f\\\\\\\\o\\\\\\\\o__DFfh4Kyq { background: lime; } +.localIdentName__f\\\\*o\\\\*o__gv1E2n_b { background: lime; } +.localIdentName__f\\\\!o\\\\!o___aIyR9ET { background: lime; } +.localIdentName__f\\\\'o\\\\'o__HSXNnSjt { background: lime; } +.localIdentName__f\\\\~o\\\\~o__MrVzSIcS { background: lime; } +.localIdentName__f\\\\+o\\\\+o__EvMHRmCu { background: lime; } + +.localIdentName__foo\\\\/bar__hei2uQgD { + background: hotpink; +} + +.localIdentName__foo\\\\\\\\bar__IgSzmmsC { + background: hotpink; +} + +.localIdentName__foo\\\\/bar\\\\/baz__p6KJMhNW { + background: hotpink; +} + +.localIdentName__foo\\\\\\\\bar\\\\\\\\baz__HZerWgmU { + background: hotpink; +} +\`, ""]); +// Exports +var _1 = \`localIdentName__123__oqRGsO4U\`; +export { _1 as "123" }; +export var test = \`localIdentName__test__KuIShlgs\`; +export var _test = \`localIdentName___test__Lb3fhDAu\`; +export var className = \`localIdentName__className__LdhpkZRW\`; +export var someId = \`localIdentName__someId__b0rhwJSt\`; +export var subClass = \`localIdentName__subClass__Mw9j4nId\`; +var _2 = \`localIdentName__-a0-34a___f__DdFWMPol\`; +export { _2 as "-a0-34a___f" }; +var _3 = \`localIdentName__m_x_@__OdAmghrm\`; +export { _3 as "m_x_@" }; +var _4 = \`localIdentName__B&W?__h4SEF34C\`; +export { _4 as "B&W?" }; +var _5 = \`localIdentName__:\\\`(__fKJQkLar\`; +export { _5 as ":\`(" }; +var _6 = \`localIdentName__1a2b3c__YR1u_buY\`; +export { _6 as "1a2b3c" }; +var _7 = \`localIdentName__#fake-id__AqiAGSfn\`; +export { _7 as "#fake-id" }; +var _8 = \`localIdentName__-a-b-c-__CwXv27VM\`; +export { _8 as "-a-b-c-" }; +var _9 = \`localIdentName__©__jBj0sZiW\`; +export { _9 as "©" }; +var _a = \`localIdentName__♥__vJl9A9Ds\`; +export { _a as "♥" }; +var _b = \`localIdentName__😍__CNLr9yJw\`; +export { _b as "😍" }; +var _c = \`localIdentName__“‘’”__GM0Y0nFC\`; +export { _c as "“‘’”" }; +var _d = \`localIdentName__☺☃__NKrBw7EA\`; +export { _d as "☺☃" }; +var _e = \`localIdentName__⌘⌥__edHWpSne\`; +export { _e as "⌘⌥" }; +var _f = \`localIdentName__𝄞♪♩♫♬__QyMp9YME\`; +export { _f as "𝄞♪♩♫♬" }; +var _10 = \`localIdentName__💩__B82YxwgR\`; +export { _10 as "💩" }; +var _11 = \`localIdentName__?__ndmpvNNl\`; +export { _11 as "?" }; +var _12 = \`localIdentName__@__v3gq0wPo\`; +export { _12 as "@" }; +var _13 = \`localIdentName__.__zd5uIZq6\`; +export { _13 as "." }; +var _14 = \`localIdentName__:)__ZiZnRjRT\`; +export { _14 as ":)" }; +var _15 = \`localIdentName__

__TdAx2ZSk\`; +export { _15 as "

" }; +var _16 = \`localIdentName__<><<<>><>__ozNsTIG0\`; +export { _16 as "<><<<>><>" }; +var _17 = \`localIdentName__++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.__ByKoYcSr\`; +export { _17 as "++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>." }; +var _18 = \`localIdentName__#__HkwIsjW5\`; +export { _18 as "#" }; +var _19 = \`localIdentName__##__IJc6Xl4Z\`; +export { _19 as "##" }; +var _1a = \`localIdentName__#.#.#__BnPpnJmP\`; +export { _1a as "#.#.#" }; +export var _ = \`localIdentName_____bCwkZEDu\`; +var _1b = \`localIdentName__{}__IZkBfE9i\`; +export { _1b as "{}" }; +var _1c = \`localIdentName__foo.bar__uajo7mHz\`; +export { _1c as "foo.bar" }; +var _1d = \`localIdentName__:hover__HVudUNXn\`; +export { _1d as ":hover" }; +var _1e = \`localIdentName__:hover:focus:active__ZlaaXvHL\`; +export { _1e as ":hover:focus:active" }; +var _1f = \`localIdentName__[attr=value]__PWvC4jVM\`; +export { _1f as "[attr=value]" }; +var _20 = \`localIdentName__f/o/o__A5l5sDOD\`; +export { _20 as "f/o/o" }; +var _21 = \`localIdentName__f\\\\o\\\\o__DFfh4Kyq\`; +export { _21 as "f\\\\o\\\\o" }; +var _22 = \`localIdentName__f*o*o__gv1E2n_b\`; +export { _22 as "f*o*o" }; +var _23 = \`localIdentName__f!o!o___aIyR9ET\`; +export { _23 as "f!o!o" }; +var _24 = \`localIdentName__f'o'o__HSXNnSjt\`; +export { _24 as "f'o'o" }; +var _25 = \`localIdentName__f~o~o__MrVzSIcS\`; +export { _25 as "f~o~o" }; +var _26 = \`localIdentName__f+o+o__EvMHRmCu\`; +export { _26 as "f+o+o" }; +var _27 = \`localIdentName__foo/bar__hei2uQgD\`; +export { _27 as "foo/bar" }; +var _28 = \`localIdentName__foo\\\\bar__IgSzmmsC\`; +export { _28 as "foo\\\\bar" }; +var _29 = \`localIdentName__foo/bar/baz__p6KJMhNW\`; +export { _29 as "foo/bar/baz" }; +var _2a = \`localIdentName__foo\\\\bar\\\\baz__HZerWgmU\`; +export { _2a as "foo\\\\bar\\\\baz" }; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should work and respect the "localIdentRegExp" option: result 1`] = ` +[ + [ + "./modules/localIdentName/localIdentName.css", + ".localIdentName__test__KuIShlgs { + background: red; +} + +.localIdentName___test__Lb3fhDAu { + background: blue; +} + +.localIdentName__className__LdhpkZRW { + background: red; +} + +#localIdentName__someId__b0rhwJSt { + background: green; +} + +.localIdentName__className__LdhpkZRW .localIdentName__subClass__Mw9j4nId { + color: green; +} + +#localIdentName__someId__b0rhwJSt .localIdentName__subClass__Mw9j4nId { + color: blue; +} + +.localIdentName__-a0-34a___f__DdFWMPol { + color: red; +} + +.localIdentName__m_x_\\@__OdAmghrm { + margin-left: auto !important; + margin-right: auto !important; +} + +.localIdentName__B\\&W\\?__h4SEF34C { + margin-left: auto !important; + margin-right: auto !important; +} + +/* matches elements with class=":\`(" */ +.localIdentName__\\3A \\\`\\(__fKJQkLar { + color: aqua; +} + +/* matches elements with class="1a2b3c" */ +.localIdentName__\\31 a2b3c__YR1u_buY { + color: aliceblue; +} + +/* matches the element with id="#fake-id" */ +#localIdentName__\\#fake-id__AqiAGSfn { + color: antiquewhite; +} + +/* matches the element with id="-a-b-c-" */ +#localIdentName__-a-b-c-__CwXv27VM { + color: azure; +} + +/* matches the element with id="©" */ +#localIdentName__©__jBj0sZiW { + color: black; +} + +.localIdentName__♥__vJl9A9Ds { background: lime; } +.localIdentName__©__jBj0sZiW { background: lime; } +.localIdentName__😍__CNLr9yJw { background: lime; } +.localIdentName__“‘’”__GM0Y0nFC { background: lime; } +.localIdentName__☺☃__NKrBw7EA { background: lime; } +.localIdentName__⌘⌥__edHWpSne { background: lime; } +.localIdentName__𝄞♪♩♫♬__QyMp9YME { background: lime; } +.localIdentName__💩__B82YxwgR { background: lime; } +.localIdentName__\\?__ndmpvNNl { background: lime; } +.localIdentName__\\@__v3gq0wPo { background: lime; } +.localIdentName__\\.__zd5uIZq6 { background: lime; } +.localIdentName__\\3A \\)__ZiZnRjRT { background: lime; } +.localIdentName__\\3A \\\`\\(__fKJQkLar { background: lime; } +.localIdentName__\\31 23__oqRGsO4U { background: lime; } +.localIdentName__\\31 a2b3c__YR1u_buY { background: lime; } +.localIdentName__\\__TdAx2ZSk { background: lime; } +.localIdentName__\\<\\>\\<\\<\\<\\>\\>\\<\\>__ozNsTIG0 { background: lime; } +.localIdentName__\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\[\\>\\+\\+\\+\\+\\+\\+\\+\\>\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\>\\+\\+\\+\\>\\+\\<\\<\\<\\<\\-\\]\\>\\+\\+\\.\\>\\+\\.\\+\\+\\+\\+\\+\\+\\+\\.\\.\\+\\+\\+\\.\\>\\+\\+\\.\\<\\<\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\.\\>\\.\\+\\+\\+\\.\\-\\-\\-\\-\\-\\-\\.\\-\\-\\-\\-\\-\\-\\-\\-\\.\\>\\+\\.\\>\\.__ByKoYcSr { background: lime; } +.localIdentName__\\#__HkwIsjW5 { background: lime; } +.localIdentName__\\#\\#__IJc6Xl4Z { background: lime; } +.localIdentName__\\#\\.\\#\\.\\#__BnPpnJmP { background: lime; } +.localIdentName__\\___bCwkZEDu { background: lime; } +.localIdentName__\\{\\}__IZkBfE9i { background: lime; } +.localIdentName__\\#fake\\-id__AqiAGSfn { background: lime; } +.localIdentName__foo\\.bar__uajo7mHz { background: lime; } +.localIdentName__\\3A hover__HVudUNXn { background: lime; } +.localIdentName__\\3A hover\\3A focus\\3A active__ZlaaXvHL { background: lime; } +.localIdentName__\\[attr\\=value\\]__PWvC4jVM { background: lime; } +.localIdentName__f\\/o\\/o__A5l5sDOD { background: lime; } +.localIdentName__f\\\\o\\\\o__DFfh4Kyq { background: lime; } +.localIdentName__f\\*o\\*o__gv1E2n_b { background: lime; } +.localIdentName__f\\!o\\!o___aIyR9ET { background: lime; } +.localIdentName__f\\'o\\'o__HSXNnSjt { background: lime; } +.localIdentName__f\\~o\\~o__MrVzSIcS { background: lime; } +.localIdentName__f\\+o\\+o__EvMHRmCu { background: lime; } + +.localIdentName__foo\\/bar__hei2uQgD { + background: hotpink; +} + +.localIdentName__foo\\\\bar__IgSzmmsC { + background: hotpink; +} + +.localIdentName__foo\\/bar\\/baz__p6KJMhNW { + background: hotpink; +} + +.localIdentName__foo\\\\bar\\\\baz__HZerWgmU { + background: hotpink; +} +", + "", + ], +] +`; + +exports[`"modules" option should work and respect the "localIdentRegExp" option: warnings 1`] = `[]`; + +exports[`"modules" option should work and respect the "path" placeholder: errors 1`] = `[]`; + +exports[`"modules" option should work and respect the "path" placeholder: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../../src/runtime/api.js"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`.fixtures-modules-localIdentName-localIdentName__test { + background: red; +} + +.fixtures-modules-localIdentName-localIdentName___test { + background: blue; +} + +.fixtures-modules-localIdentName-localIdentName__className { + background: red; +} + +#fixtures-modules-localIdentName-localIdentName__someId { + background: green; +} + +.fixtures-modules-localIdentName-localIdentName__className .fixtures-modules-localIdentName-localIdentName__subClass { + color: green; +} + +#fixtures-modules-localIdentName-localIdentName__someId .fixtures-modules-localIdentName-localIdentName__subClass { + color: blue; +} + +.fixtures-modules-localIdentName-localIdentName__-a0-34a___f { + color: red; +} + +.fixtures-modules-localIdentName-localIdentName__m_x_\\\\@ { + margin-left: auto !important; + margin-right: auto !important; +} + +.fixtures-modules-localIdentName-localIdentName__B\\\\&W\\\\? { + margin-left: auto !important; + margin-right: auto !important; +} + +/* matches elements with class=":\\\`(" */ +.fixtures-modules-localIdentName-localIdentName__\\\\3A \\\\\\\`\\\\( { + color: aqua; +} + +/* matches elements with class="1a2b3c" */ +.fixtures-modules-localIdentName-localIdentName__\\\\31 a2b3c { + color: aliceblue; +} + +/* matches the element with id="#fake-id" */ +#fixtures-modules-localIdentName-localIdentName__\\\\#fake-id { + color: antiquewhite; +} + +/* matches the element with id="-a-b-c-" */ +#fixtures-modules-localIdentName-localIdentName__-a-b-c- { + color: azure; +} + +/* matches the element with id="©" */ +#fixtures-modules-localIdentName-localIdentName__© { + color: black; +} + +.fixtures-modules-localIdentName-localIdentName__♥ { background: lime; } +.fixtures-modules-localIdentName-localIdentName__© { background: lime; } +.fixtures-modules-localIdentName-localIdentName__😍 { background: lime; } +.fixtures-modules-localIdentName-localIdentName__“‘’” { background: lime; } +.fixtures-modules-localIdentName-localIdentName__☺☃ { background: lime; } +.fixtures-modules-localIdentName-localIdentName__⌘⌥ { background: lime; } +.fixtures-modules-localIdentName-localIdentName__𝄞♪♩♫♬ { background: lime; } +.fixtures-modules-localIdentName-localIdentName__💩 { background: lime; } +.fixtures-modules-localIdentName-localIdentName__\\\\? { background: lime; } +.fixtures-modules-localIdentName-localIdentName__\\\\@ { background: lime; } +.fixtures-modules-localIdentName-localIdentName__\\\\. { background: lime; } +.fixtures-modules-localIdentName-localIdentName__\\\\3A \\\\) { background: lime; } +.fixtures-modules-localIdentName-localIdentName__\\\\3A \\\\\\\`\\\\( { background: lime; } +.fixtures-modules-localIdentName-localIdentName__\\\\31 23 { background: lime; } +.fixtures-modules-localIdentName-localIdentName__\\\\31 a2b3c { background: lime; } +.fixtures-modules-localIdentName-localIdentName__\\\\ { background: lime; } +.fixtures-modules-localIdentName-localIdentName__\\\\<\\\\>\\\\<\\\\<\\\\<\\\\>\\\\>\\\\<\\\\> { background: lime; } +.fixtures-modules-localIdentName-localIdentName__\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\[\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\>\\\\+\\\\<\\\\<\\\\<\\\\<\\\\-\\\\]\\\\>\\\\+\\\\+\\\\.\\\\>\\\\+\\\\.\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\.\\\\+\\\\+\\\\+\\\\.\\\\>\\\\+\\\\+\\\\.\\\\<\\\\<\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\>\\\\.\\\\+\\\\+\\\\+\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\>\\\\+\\\\.\\\\>\\\\. { background: lime; } +.fixtures-modules-localIdentName-localIdentName__\\\\# { background: lime; } +.fixtures-modules-localIdentName-localIdentName__\\\\#\\\\# { background: lime; } +.fixtures-modules-localIdentName-localIdentName__\\\\#\\\\.\\\\#\\\\.\\\\# { background: lime; } +.fixtures-modules-localIdentName-localIdentName__\\\\_ { background: lime; } +.fixtures-modules-localIdentName-localIdentName__\\\\{\\\\} { background: lime; } +.fixtures-modules-localIdentName-localIdentName__\\\\#fake\\\\-id { background: lime; } +.fixtures-modules-localIdentName-localIdentName__foo\\\\.bar { background: lime; } +.fixtures-modules-localIdentName-localIdentName__\\\\3A hover { background: lime; } +.fixtures-modules-localIdentName-localIdentName__\\\\3A hover\\\\3A focus\\\\3A active { background: lime; } +.fixtures-modules-localIdentName-localIdentName__\\\\[attr\\\\=value\\\\] { background: lime; } +.fixtures-modules-localIdentName-localIdentName__f\\\\/o\\\\/o { background: lime; } +.fixtures-modules-localIdentName-localIdentName__f\\\\\\\\o\\\\\\\\o { background: lime; } +.fixtures-modules-localIdentName-localIdentName__f\\\\*o\\\\*o { background: lime; } +.fixtures-modules-localIdentName-localIdentName__f\\\\!o\\\\!o { background: lime; } +.fixtures-modules-localIdentName-localIdentName__f\\\\'o\\\\'o { background: lime; } +.fixtures-modules-localIdentName-localIdentName__f\\\\~o\\\\~o { background: lime; } +.fixtures-modules-localIdentName-localIdentName__f\\\\+o\\\\+o { background: lime; } + +.fixtures-modules-localIdentName-localIdentName__foo\\\\/bar { + background: hotpink; +} + +.fixtures-modules-localIdentName-localIdentName__foo\\\\\\\\bar { + background: hotpink; +} + +.fixtures-modules-localIdentName-localIdentName__foo\\\\/bar\\\\/baz { + background: hotpink; +} + +.fixtures-modules-localIdentName-localIdentName__foo\\\\\\\\bar\\\\\\\\baz { + background: hotpink; +} +\`, ""]); +// Exports +var _1 = \`fixtures-modules-localIdentName-localIdentName__123\`; +export { _1 as "123" }; +export var test = \`fixtures-modules-localIdentName-localIdentName__test\`; +export var _test = \`fixtures-modules-localIdentName-localIdentName___test\`; +export var className = \`fixtures-modules-localIdentName-localIdentName__className\`; +export var someId = \`fixtures-modules-localIdentName-localIdentName__someId\`; +export var subClass = \`fixtures-modules-localIdentName-localIdentName__subClass\`; +var _2 = \`fixtures-modules-localIdentName-localIdentName__-a0-34a___f\`; +export { _2 as "-a0-34a___f" }; +var _3 = \`fixtures-modules-localIdentName-localIdentName__m_x_@\`; +export { _3 as "m_x_@" }; +var _4 = \`fixtures-modules-localIdentName-localIdentName__B&W?\`; +export { _4 as "B&W?" }; +var _5 = \`fixtures-modules-localIdentName-localIdentName__:\\\`(\`; +export { _5 as ":\`(" }; +var _6 = \`fixtures-modules-localIdentName-localIdentName__1a2b3c\`; +export { _6 as "1a2b3c" }; +var _7 = \`fixtures-modules-localIdentName-localIdentName__#fake-id\`; +export { _7 as "#fake-id" }; +var _8 = \`fixtures-modules-localIdentName-localIdentName__-a-b-c-\`; +export { _8 as "-a-b-c-" }; +var _9 = \`fixtures-modules-localIdentName-localIdentName__©\`; +export { _9 as "©" }; +var _a = \`fixtures-modules-localIdentName-localIdentName__♥\`; +export { _a as "♥" }; +var _b = \`fixtures-modules-localIdentName-localIdentName__😍\`; +export { _b as "😍" }; +var _c = \`fixtures-modules-localIdentName-localIdentName__“‘’”\`; +export { _c as "“‘’”" }; +var _d = \`fixtures-modules-localIdentName-localIdentName__☺☃\`; +export { _d as "☺☃" }; +var _e = \`fixtures-modules-localIdentName-localIdentName__⌘⌥\`; +export { _e as "⌘⌥" }; +var _f = \`fixtures-modules-localIdentName-localIdentName__𝄞♪♩♫♬\`; +export { _f as "𝄞♪♩♫♬" }; +var _10 = \`fixtures-modules-localIdentName-localIdentName__💩\`; +export { _10 as "💩" }; +var _11 = \`fixtures-modules-localIdentName-localIdentName__?\`; +export { _11 as "?" }; +var _12 = \`fixtures-modules-localIdentName-localIdentName__@\`; +export { _12 as "@" }; +var _13 = \`fixtures-modules-localIdentName-localIdentName__.\`; +export { _13 as "." }; +var _14 = \`fixtures-modules-localIdentName-localIdentName__:)\`; +export { _14 as ":)" }; +var _15 = \`fixtures-modules-localIdentName-localIdentName__

\`; +export { _15 as "

" }; +var _16 = \`fixtures-modules-localIdentName-localIdentName__<><<<>><>\`; +export { _16 as "<><<<>><>" }; +var _17 = \`fixtures-modules-localIdentName-localIdentName__++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.\`; +export { _17 as "++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>." }; +var _18 = \`fixtures-modules-localIdentName-localIdentName__#\`; +export { _18 as "#" }; +var _19 = \`fixtures-modules-localIdentName-localIdentName__##\`; +export { _19 as "##" }; +var _1a = \`fixtures-modules-localIdentName-localIdentName__#.#.#\`; +export { _1a as "#.#.#" }; +export var _ = \`fixtures-modules-localIdentName-localIdentName___\`; +var _1b = \`fixtures-modules-localIdentName-localIdentName__{}\`; +export { _1b as "{}" }; +var _1c = \`fixtures-modules-localIdentName-localIdentName__foo.bar\`; +export { _1c as "foo.bar" }; +var _1d = \`fixtures-modules-localIdentName-localIdentName__:hover\`; +export { _1d as ":hover" }; +var _1e = \`fixtures-modules-localIdentName-localIdentName__:hover:focus:active\`; +export { _1e as ":hover:focus:active" }; +var _1f = \`fixtures-modules-localIdentName-localIdentName__[attr=value]\`; +export { _1f as "[attr=value]" }; +var _20 = \`fixtures-modules-localIdentName-localIdentName__f/o/o\`; +export { _20 as "f/o/o" }; +var _21 = \`fixtures-modules-localIdentName-localIdentName__f\\\\o\\\\o\`; +export { _21 as "f\\\\o\\\\o" }; +var _22 = \`fixtures-modules-localIdentName-localIdentName__f*o*o\`; +export { _22 as "f*o*o" }; +var _23 = \`fixtures-modules-localIdentName-localIdentName__f!o!o\`; +export { _23 as "f!o!o" }; +var _24 = \`fixtures-modules-localIdentName-localIdentName__f'o'o\`; +export { _24 as "f'o'o" }; +var _25 = \`fixtures-modules-localIdentName-localIdentName__f~o~o\`; +export { _25 as "f~o~o" }; +var _26 = \`fixtures-modules-localIdentName-localIdentName__f+o+o\`; +export { _26 as "f+o+o" }; +var _27 = \`fixtures-modules-localIdentName-localIdentName__foo/bar\`; +export { _27 as "foo/bar" }; +var _28 = \`fixtures-modules-localIdentName-localIdentName__foo\\\\bar\`; +export { _28 as "foo\\\\bar" }; +var _29 = \`fixtures-modules-localIdentName-localIdentName__foo/bar/baz\`; +export { _29 as "foo/bar/baz" }; +var _2a = \`fixtures-modules-localIdentName-localIdentName__foo\\\\bar\\\\baz\`; +export { _2a as "foo\\\\bar\\\\baz" }; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should work and respect the "path" placeholder: result 1`] = ` +[ + [ + "./modules/localIdentName/localIdentName.css", + ".fixtures-modules-localIdentName-localIdentName__test { + background: red; +} + +.fixtures-modules-localIdentName-localIdentName___test { + background: blue; +} + +.fixtures-modules-localIdentName-localIdentName__className { + background: red; +} + +#fixtures-modules-localIdentName-localIdentName__someId { + background: green; +} + +.fixtures-modules-localIdentName-localIdentName__className .fixtures-modules-localIdentName-localIdentName__subClass { + color: green; +} + +#fixtures-modules-localIdentName-localIdentName__someId .fixtures-modules-localIdentName-localIdentName__subClass { + color: blue; +} + +.fixtures-modules-localIdentName-localIdentName__-a0-34a___f { + color: red; +} + +.fixtures-modules-localIdentName-localIdentName__m_x_\\@ { + margin-left: auto !important; + margin-right: auto !important; +} + +.fixtures-modules-localIdentName-localIdentName__B\\&W\\? { + margin-left: auto !important; + margin-right: auto !important; +} + +/* matches elements with class=":\`(" */ +.fixtures-modules-localIdentName-localIdentName__\\3A \\\`\\( { + color: aqua; +} + +/* matches elements with class="1a2b3c" */ +.fixtures-modules-localIdentName-localIdentName__\\31 a2b3c { + color: aliceblue; +} + +/* matches the element with id="#fake-id" */ +#fixtures-modules-localIdentName-localIdentName__\\#fake-id { + color: antiquewhite; +} + +/* matches the element with id="-a-b-c-" */ +#fixtures-modules-localIdentName-localIdentName__-a-b-c- { + color: azure; +} + +/* matches the element with id="©" */ +#fixtures-modules-localIdentName-localIdentName__© { + color: black; +} + +.fixtures-modules-localIdentName-localIdentName__♥ { background: lime; } +.fixtures-modules-localIdentName-localIdentName__© { background: lime; } +.fixtures-modules-localIdentName-localIdentName__😍 { background: lime; } +.fixtures-modules-localIdentName-localIdentName__“‘’” { background: lime; } +.fixtures-modules-localIdentName-localIdentName__☺☃ { background: lime; } +.fixtures-modules-localIdentName-localIdentName__⌘⌥ { background: lime; } +.fixtures-modules-localIdentName-localIdentName__𝄞♪♩♫♬ { background: lime; } +.fixtures-modules-localIdentName-localIdentName__💩 { background: lime; } +.fixtures-modules-localIdentName-localIdentName__\\? { background: lime; } +.fixtures-modules-localIdentName-localIdentName__\\@ { background: lime; } +.fixtures-modules-localIdentName-localIdentName__\\. { background: lime; } +.fixtures-modules-localIdentName-localIdentName__\\3A \\) { background: lime; } +.fixtures-modules-localIdentName-localIdentName__\\3A \\\`\\( { background: lime; } +.fixtures-modules-localIdentName-localIdentName__\\31 23 { background: lime; } +.fixtures-modules-localIdentName-localIdentName__\\31 a2b3c { background: lime; } +.fixtures-modules-localIdentName-localIdentName__\\ { background: lime; } +.fixtures-modules-localIdentName-localIdentName__\\<\\>\\<\\<\\<\\>\\>\\<\\> { background: lime; } +.fixtures-modules-localIdentName-localIdentName__\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\[\\>\\+\\+\\+\\+\\+\\+\\+\\>\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\>\\+\\+\\+\\>\\+\\<\\<\\<\\<\\-\\]\\>\\+\\+\\.\\>\\+\\.\\+\\+\\+\\+\\+\\+\\+\\.\\.\\+\\+\\+\\.\\>\\+\\+\\.\\<\\<\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\+\\.\\>\\.\\+\\+\\+\\.\\-\\-\\-\\-\\-\\-\\.\\-\\-\\-\\-\\-\\-\\-\\-\\.\\>\\+\\.\\>\\. { background: lime; } +.fixtures-modules-localIdentName-localIdentName__\\# { background: lime; } +.fixtures-modules-localIdentName-localIdentName__\\#\\# { background: lime; } +.fixtures-modules-localIdentName-localIdentName__\\#\\.\\#\\.\\# { background: lime; } +.fixtures-modules-localIdentName-localIdentName__\\_ { background: lime; } +.fixtures-modules-localIdentName-localIdentName__\\{\\} { background: lime; } +.fixtures-modules-localIdentName-localIdentName__\\#fake\\-id { background: lime; } +.fixtures-modules-localIdentName-localIdentName__foo\\.bar { background: lime; } +.fixtures-modules-localIdentName-localIdentName__\\3A hover { background: lime; } +.fixtures-modules-localIdentName-localIdentName__\\3A hover\\3A focus\\3A active { background: lime; } +.fixtures-modules-localIdentName-localIdentName__\\[attr\\=value\\] { background: lime; } +.fixtures-modules-localIdentName-localIdentName__f\\/o\\/o { background: lime; } +.fixtures-modules-localIdentName-localIdentName__f\\\\o\\\\o { background: lime; } +.fixtures-modules-localIdentName-localIdentName__f\\*o\\*o { background: lime; } +.fixtures-modules-localIdentName-localIdentName__f\\!o\\!o { background: lime; } +.fixtures-modules-localIdentName-localIdentName__f\\'o\\'o { background: lime; } +.fixtures-modules-localIdentName-localIdentName__f\\~o\\~o { background: lime; } +.fixtures-modules-localIdentName-localIdentName__f\\+o\\+o { background: lime; } + +.fixtures-modules-localIdentName-localIdentName__foo\\/bar { + background: hotpink; +} + +.fixtures-modules-localIdentName-localIdentName__foo\\\\bar { + background: hotpink; +} + +.fixtures-modules-localIdentName-localIdentName__foo\\/bar\\/baz { + background: hotpink; +} + +.fixtures-modules-localIdentName-localIdentName__foo\\\\bar\\\\baz { + background: hotpink; +} +", + "", + ], +] +`; + +exports[`"modules" option should work and respect the "path" placeholder: warnings 1`] = `[]`; + +exports[`"modules" option should work and respect the \`localConvention\` option with the "as-is" value: errors 1`] = `[]`; + +exports[`"modules" option should work and respect the \`localConvention\` option with the "as-is" value: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../../src/runtime/api.js"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`.rmc8ltu8P1VXaeqLNU6N { + color: blue; +} + +.AooVHuvzAIGXWngdfslc { + color: blue; +} + +.snmJCrfw3LVnrlx87XVC { + color: red; +} + +a { + color: yellow; +} + +.vA4oeh0XymefKJVIJyg1 { + color: red; +} + +.mDiC1MIOTWjgsd86woaJ { + color: red; +} + +.kY3VVFqpzmTiFlxOd9KU { + color: red; +} + +.eiLdMC_n9TCXQ0oPIJyI { + color: red; +} +\`, ""]); +// Exports +export var foo = \`bar\`; +var _1 = \`value\`; +export { _1 as "my-btn-info_is-disabled" }; +var _2 = \`rmc8ltu8P1VXaeqLNU6N\`; +export { _2 as "btn-info_is-disabled" }; +var _3 = \`AooVHuvzAIGXWngdfslc\`; +export { _3 as "btn--info_is-disabled_1" }; +export var simple = \`snmJCrfw3LVnrlx87XVC\`; +export var foo_bar = \`vA4oeh0XymefKJVIJyg1\`; +var _4 = \`mDiC1MIOTWjgsd86woaJ\`; +export { _4 as "class" }; +export var fooBarBaz = \`kY3VVFqpzmTiFlxOd9KU\`; +export var b = \`eiLdMC_n9TCXQ0oPIJyI\`; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should work and respect the \`localConvention\` option with the "as-is" value: result 1`] = ` +[ + [ + "./modules/localsConvention/localsConvention.css", + ".rmc8ltu8P1VXaeqLNU6N { + color: blue; +} + +.AooVHuvzAIGXWngdfslc { + color: blue; +} + +.snmJCrfw3LVnrlx87XVC { + color: red; +} + +a { + color: yellow; +} + +.vA4oeh0XymefKJVIJyg1 { + color: red; +} + +.mDiC1MIOTWjgsd86woaJ { + color: red; +} + +.kY3VVFqpzmTiFlxOd9KU { + color: red; +} + +.eiLdMC_n9TCXQ0oPIJyI { + color: red; +} +", + "", + ], +] +`; + +exports[`"modules" option should work and respect the \`localConvention\` option with the "as-is" value: warnings 1`] = `[]`; + +exports[`"modules" option should work and respect the \`localConvention\` option with the \`as-is\` value and \`namedExport\` is \`false\`: errors 1`] = `[]`; + +exports[`"modules" option should work and respect the \`localConvention\` option with the \`as-is\` value and \`namedExport\` is \`false\`: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../../src/runtime/api.js"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`.rmc8ltu8P1VXaeqLNU6N { + color: blue; +} + +.AooVHuvzAIGXWngdfslc { + color: blue; +} + +.snmJCrfw3LVnrlx87XVC { + color: red; +} + +a { + color: yellow; +} + +.vA4oeh0XymefKJVIJyg1 { + color: red; +} + +.mDiC1MIOTWjgsd86woaJ { + color: red; +} + +.kY3VVFqpzmTiFlxOd9KU { + color: red; +} + +.eiLdMC_n9TCXQ0oPIJyI { + color: red; +} +\`, ""]); +// Exports +___CSS_LOADER_EXPORT___.locals = { + "foo": \`bar\`, + "my-btn-info_is-disabled": \`value\`, + "btn-info_is-disabled": \`rmc8ltu8P1VXaeqLNU6N\`, + "btn--info_is-disabled_1": \`AooVHuvzAIGXWngdfslc\`, + "simple": \`snmJCrfw3LVnrlx87XVC\`, + "foo_bar": \`vA4oeh0XymefKJVIJyg1\`, + "class": \`mDiC1MIOTWjgsd86woaJ\`, + "fooBarBaz": \`kY3VVFqpzmTiFlxOd9KU\`, + "b": \`eiLdMC_n9TCXQ0oPIJyI\` +}; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should work and respect the \`localConvention\` option with the \`as-is\` value and \`namedExport\` is \`false\`: result 1`] = ` +[ + [ + "./modules/localsConvention/localsConvention.css", + ".rmc8ltu8P1VXaeqLNU6N { + color: blue; +} + +.AooVHuvzAIGXWngdfslc { + color: blue; +} + +.snmJCrfw3LVnrlx87XVC { + color: red; +} + +a { + color: yellow; +} + +.vA4oeh0XymefKJVIJyg1 { + color: red; +} + +.mDiC1MIOTWjgsd86woaJ { + color: red; +} + +.kY3VVFqpzmTiFlxOd9KU { + color: red; +} + +.eiLdMC_n9TCXQ0oPIJyI { + color: red; +} +", + "", + ], +] +`; + +exports[`"modules" option should work and respect the \`localConvention\` option with the \`as-is\` value and \`namedExport\` is \`false\`: warnings 1`] = `[]`; + +exports[`"modules" option should work and respect the \`localConvention\` option with the \`camel-case-only\` value and \`namedExport\` false: errors 1`] = `[]`; + +exports[`"modules" option should work and respect the \`localConvention\` option with the \`camel-case-only\` value and \`namedExport\` false: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../../src/runtime/api.js"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`.rmc8ltu8P1VXaeqLNU6N { + color: blue; +} + +.AooVHuvzAIGXWngdfslc { + color: blue; +} + +.snmJCrfw3LVnrlx87XVC { + color: red; +} + +a { + color: yellow; +} + +.vA4oeh0XymefKJVIJyg1 { + color: red; +} + +.mDiC1MIOTWjgsd86woaJ { + color: red; +} + +.kY3VVFqpzmTiFlxOd9KU { + color: red; +} + +.eiLdMC_n9TCXQ0oPIJyI { + color: red; +} +\`, ""]); +// Exports +___CSS_LOADER_EXPORT___.locals = { + "foo": \`bar\`, + "myBtnInfoIsDisabled": \`value\`, + "btnInfoIsDisabled": \`rmc8ltu8P1VXaeqLNU6N\`, + "btnInfoIsDisabled1": \`AooVHuvzAIGXWngdfslc\`, + "simple": \`snmJCrfw3LVnrlx87XVC\`, + "fooBar": \`vA4oeh0XymefKJVIJyg1\`, + "class": \`mDiC1MIOTWjgsd86woaJ\`, + "fooBarBaz": \`kY3VVFqpzmTiFlxOd9KU\`, + "b": \`eiLdMC_n9TCXQ0oPIJyI\` +}; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should work and respect the \`localConvention\` option with the \`camel-case-only\` value and \`namedExport\` false: result 1`] = ` +[ + [ + "./modules/localsConvention/localsConvention.css", + ".rmc8ltu8P1VXaeqLNU6N { + color: blue; +} + +.AooVHuvzAIGXWngdfslc { + color: blue; +} + +.snmJCrfw3LVnrlx87XVC { + color: red; +} + +a { + color: yellow; +} + +.vA4oeh0XymefKJVIJyg1 { + color: red; +} + +.mDiC1MIOTWjgsd86woaJ { + color: red; +} + +.kY3VVFqpzmTiFlxOd9KU { + color: red; +} + +.eiLdMC_n9TCXQ0oPIJyI { + color: red; +} +", + "", + ], +] +`; + +exports[`"modules" option should work and respect the \`localConvention\` option with the \`camel-case-only\` value and \`namedExport\` false: warnings 1`] = `[]`; + +exports[`"modules" option should work and respect the \`localConvention\` option with the \`camel-case-only\` value: errors 1`] = `[]`; + +exports[`"modules" option should work and respect the \`localConvention\` option with the \`camel-case-only\` value: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../../src/runtime/api.js"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`.rmc8ltu8P1VXaeqLNU6N { + color: blue; +} + +.AooVHuvzAIGXWngdfslc { + color: blue; +} + +.snmJCrfw3LVnrlx87XVC { + color: red; +} + +a { + color: yellow; +} + +.vA4oeh0XymefKJVIJyg1 { + color: red; +} + +.mDiC1MIOTWjgsd86woaJ { + color: red; +} + +.kY3VVFqpzmTiFlxOd9KU { + color: red; +} + +.eiLdMC_n9TCXQ0oPIJyI { + color: red; +} +\`, ""]); +// Exports +export var foo = \`bar\`; +export var myBtnInfoIsDisabled = \`value\`; +export var btnInfoIsDisabled = \`rmc8ltu8P1VXaeqLNU6N\`; +export var btnInfoIsDisabled1 = \`AooVHuvzAIGXWngdfslc\`; +export var simple = \`snmJCrfw3LVnrlx87XVC\`; +export var fooBar = \`vA4oeh0XymefKJVIJyg1\`; +var _1 = \`mDiC1MIOTWjgsd86woaJ\`; +export { _1 as "class" }; +export var fooBarBaz = \`kY3VVFqpzmTiFlxOd9KU\`; +export var b = \`eiLdMC_n9TCXQ0oPIJyI\`; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should work and respect the \`localConvention\` option with the \`camel-case-only\` value: result 1`] = ` +[ + [ + "./modules/localsConvention/localsConvention.css", + ".rmc8ltu8P1VXaeqLNU6N { + color: blue; +} + +.AooVHuvzAIGXWngdfslc { + color: blue; +} + +.snmJCrfw3LVnrlx87XVC { + color: red; +} + +a { + color: yellow; +} + +.vA4oeh0XymefKJVIJyg1 { + color: red; +} + +.mDiC1MIOTWjgsd86woaJ { + color: red; +} + +.kY3VVFqpzmTiFlxOd9KU { + color: red; +} + +.eiLdMC_n9TCXQ0oPIJyI { + color: red; +} +", + "", + ], +] +`; + +exports[`"modules" option should work and respect the \`localConvention\` option with the \`camel-case-only\` value: warnings 1`] = `[]`; + +exports[`"modules" option should work and respect the \`localConvention\` option with the \`camelCase\` value and \`namedExport\` false: errors 1`] = `[]`; + +exports[`"modules" option should work and respect the \`localConvention\` option with the \`camelCase\` value and \`namedExport\` false: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../../src/runtime/api.js"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`.rmc8ltu8P1VXaeqLNU6N { + color: blue; +} + +.AooVHuvzAIGXWngdfslc { + color: blue; +} + +.snmJCrfw3LVnrlx87XVC { + color: red; +} + +a { + color: yellow; +} + +.vA4oeh0XymefKJVIJyg1 { + color: red; +} + +.mDiC1MIOTWjgsd86woaJ { + color: red; +} + +.kY3VVFqpzmTiFlxOd9KU { + color: red; +} + +.eiLdMC_n9TCXQ0oPIJyI { + color: red; +} +\`, ""]); +// Exports +___CSS_LOADER_EXPORT___.locals = { + "foo": \`bar\`, + "my-btn-info_is-disabled": \`value\`, + "myBtnInfoIsDisabled": \`value\`, + "btn-info_is-disabled": \`rmc8ltu8P1VXaeqLNU6N\`, + "btnInfoIsDisabled": \`rmc8ltu8P1VXaeqLNU6N\`, + "btn--info_is-disabled_1": \`AooVHuvzAIGXWngdfslc\`, + "btnInfoIsDisabled1": \`AooVHuvzAIGXWngdfslc\`, + "simple": \`snmJCrfw3LVnrlx87XVC\`, + "foo_bar": \`vA4oeh0XymefKJVIJyg1\`, + "fooBar": \`vA4oeh0XymefKJVIJyg1\`, + "class": \`mDiC1MIOTWjgsd86woaJ\`, + "fooBarBaz": \`kY3VVFqpzmTiFlxOd9KU\`, + "b": \`eiLdMC_n9TCXQ0oPIJyI\` +}; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should work and respect the \`localConvention\` option with the \`camelCase\` value and \`namedExport\` false: result 1`] = ` +[ + [ + "./modules/localsConvention/localsConvention.css", + ".rmc8ltu8P1VXaeqLNU6N { + color: blue; +} + +.AooVHuvzAIGXWngdfslc { + color: blue; +} + +.snmJCrfw3LVnrlx87XVC { + color: red; +} + +a { + color: yellow; +} + +.vA4oeh0XymefKJVIJyg1 { + color: red; +} + +.mDiC1MIOTWjgsd86woaJ { + color: red; +} + +.kY3VVFqpzmTiFlxOd9KU { + color: red; +} + +.eiLdMC_n9TCXQ0oPIJyI { + color: red; +} +", + "", + ], +] +`; + +exports[`"modules" option should work and respect the \`localConvention\` option with the \`camelCase\` value and \`namedExport\` false: warnings 1`] = `[]`; + +exports[`"modules" option should work and respect the \`localConvention\` option with the \`camelCase\` value: errors 1`] = `[]`; + +exports[`"modules" option should work and respect the \`localConvention\` option with the \`camelCase\` value: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../../src/runtime/api.js"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`.rmc8ltu8P1VXaeqLNU6N { + color: blue; +} + +.AooVHuvzAIGXWngdfslc { + color: blue; +} + +.snmJCrfw3LVnrlx87XVC { + color: red; +} + +a { + color: yellow; +} + +.vA4oeh0XymefKJVIJyg1 { + color: red; +} + +.mDiC1MIOTWjgsd86woaJ { + color: red; +} + +.kY3VVFqpzmTiFlxOd9KU { + color: red; +} + +.eiLdMC_n9TCXQ0oPIJyI { + color: red; +} +\`, ""]); +// Exports +export var foo = \`bar\`; +var _1 = \`value\`; +export { _1 as "my-btn-info_is-disabled" }; +export var myBtnInfoIsDisabled = \`value\`; +var _2 = \`rmc8ltu8P1VXaeqLNU6N\`; +export { _2 as "btn-info_is-disabled" }; +export var btnInfoIsDisabled = \`rmc8ltu8P1VXaeqLNU6N\`; +var _3 = \`AooVHuvzAIGXWngdfslc\`; +export { _3 as "btn--info_is-disabled_1" }; +export var btnInfoIsDisabled1 = \`AooVHuvzAIGXWngdfslc\`; +export var simple = \`snmJCrfw3LVnrlx87XVC\`; +export var foo_bar = \`vA4oeh0XymefKJVIJyg1\`; +export var fooBar = \`vA4oeh0XymefKJVIJyg1\`; +var _4 = \`mDiC1MIOTWjgsd86woaJ\`; +export { _4 as "class" }; +export var fooBarBaz = \`kY3VVFqpzmTiFlxOd9KU\`; +export var b = \`eiLdMC_n9TCXQ0oPIJyI\`; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should work and respect the \`localConvention\` option with the \`camelCase\` value: result 1`] = ` +[ + [ + "./modules/localsConvention/localsConvention.css", + ".rmc8ltu8P1VXaeqLNU6N { + color: blue; +} + +.AooVHuvzAIGXWngdfslc { + color: blue; +} + +.snmJCrfw3LVnrlx87XVC { + color: red; +} + +a { + color: yellow; +} + +.vA4oeh0XymefKJVIJyg1 { + color: red; +} + +.mDiC1MIOTWjgsd86woaJ { + color: red; +} + +.kY3VVFqpzmTiFlxOd9KU { + color: red; +} + +.eiLdMC_n9TCXQ0oPIJyI { + color: red; +} +", + "", + ], +] +`; + +exports[`"modules" option should work and respect the \`localConvention\` option with the \`camelCase\` value: warnings 1`] = `[]`; + +exports[`"modules" option should work and respect the \`localConvention\` option with the \`dashes\` value and \`namedExport\` false: errors 1`] = `[]`; + +exports[`"modules" option should work and respect the \`localConvention\` option with the \`dashes\` value and \`namedExport\` false: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../../src/runtime/api.js"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`.rmc8ltu8P1VXaeqLNU6N { + color: blue; +} + +.AooVHuvzAIGXWngdfslc { + color: blue; +} + +.snmJCrfw3LVnrlx87XVC { + color: red; +} + +a { + color: yellow; +} + +.vA4oeh0XymefKJVIJyg1 { + color: red; +} + +.mDiC1MIOTWjgsd86woaJ { + color: red; +} + +.kY3VVFqpzmTiFlxOd9KU { + color: red; +} + +.eiLdMC_n9TCXQ0oPIJyI { + color: red; +} +\`, ""]); +// Exports +___CSS_LOADER_EXPORT___.locals = { + "foo": \`bar\`, + "my-btn-info_is-disabled": \`value\`, + "myBtnInfo_isDisabled": \`value\`, + "btn-info_is-disabled": \`rmc8ltu8P1VXaeqLNU6N\`, + "btnInfo_isDisabled": \`rmc8ltu8P1VXaeqLNU6N\`, + "btn--info_is-disabled_1": \`AooVHuvzAIGXWngdfslc\`, + "btnInfo_isDisabled_1": \`AooVHuvzAIGXWngdfslc\`, + "simple": \`snmJCrfw3LVnrlx87XVC\`, + "foo_bar": \`vA4oeh0XymefKJVIJyg1\`, + "class": \`mDiC1MIOTWjgsd86woaJ\`, + "fooBarBaz": \`kY3VVFqpzmTiFlxOd9KU\`, + "b": \`eiLdMC_n9TCXQ0oPIJyI\` +}; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should work and respect the \`localConvention\` option with the \`dashes\` value and \`namedExport\` false: result 1`] = ` +[ + [ + "./modules/localsConvention/localsConvention.css", + ".rmc8ltu8P1VXaeqLNU6N { + color: blue; +} + +.AooVHuvzAIGXWngdfslc { + color: blue; +} + +.snmJCrfw3LVnrlx87XVC { + color: red; +} + +a { + color: yellow; +} + +.vA4oeh0XymefKJVIJyg1 { + color: red; +} + +.mDiC1MIOTWjgsd86woaJ { + color: red; +} + +.kY3VVFqpzmTiFlxOd9KU { + color: red; +} + +.eiLdMC_n9TCXQ0oPIJyI { + color: red; +} +", + "", + ], +] +`; + +exports[`"modules" option should work and respect the \`localConvention\` option with the \`dashes\` value and \`namedExport\` false: warnings 1`] = `[]`; + +exports[`"modules" option should work and respect the \`localConvention\` option with the \`dashes\` value: errors 1`] = `[]`; + +exports[`"modules" option should work and respect the \`localConvention\` option with the \`dashes\` value: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../../src/runtime/api.js"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`.rmc8ltu8P1VXaeqLNU6N { + color: blue; +} + +.AooVHuvzAIGXWngdfslc { + color: blue; +} + +.snmJCrfw3LVnrlx87XVC { + color: red; +} + +a { + color: yellow; +} + +.vA4oeh0XymefKJVIJyg1 { + color: red; +} + +.mDiC1MIOTWjgsd86woaJ { + color: red; +} + +.kY3VVFqpzmTiFlxOd9KU { + color: red; +} + +.eiLdMC_n9TCXQ0oPIJyI { + color: red; +} +\`, ""]); +// Exports +export var foo = \`bar\`; +var _1 = \`value\`; +export { _1 as "my-btn-info_is-disabled" }; +export var myBtnInfo_isDisabled = \`value\`; +var _2 = \`rmc8ltu8P1VXaeqLNU6N\`; +export { _2 as "btn-info_is-disabled" }; +export var btnInfo_isDisabled = \`rmc8ltu8P1VXaeqLNU6N\`; +var _3 = \`AooVHuvzAIGXWngdfslc\`; +export { _3 as "btn--info_is-disabled_1" }; +export var btnInfo_isDisabled_1 = \`AooVHuvzAIGXWngdfslc\`; +export var simple = \`snmJCrfw3LVnrlx87XVC\`; +export var foo_bar = \`vA4oeh0XymefKJVIJyg1\`; +var _4 = \`mDiC1MIOTWjgsd86woaJ\`; +export { _4 as "class" }; +export var fooBarBaz = \`kY3VVFqpzmTiFlxOd9KU\`; +export var b = \`eiLdMC_n9TCXQ0oPIJyI\`; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should work and respect the \`localConvention\` option with the \`dashes\` value: result 1`] = ` +[ + [ + "./modules/localsConvention/localsConvention.css", + ".rmc8ltu8P1VXaeqLNU6N { + color: blue; +} + +.AooVHuvzAIGXWngdfslc { + color: blue; +} + +.snmJCrfw3LVnrlx87XVC { + color: red; +} + +a { + color: yellow; +} + +.vA4oeh0XymefKJVIJyg1 { + color: red; +} + +.mDiC1MIOTWjgsd86woaJ { + color: red; +} + +.kY3VVFqpzmTiFlxOd9KU { + color: red; +} + +.eiLdMC_n9TCXQ0oPIJyI { + color: red; +} +", + "", + ], +] +`; + +exports[`"modules" option should work and respect the \`localConvention\` option with the \`dashes\` value: warnings 1`] = `[]`; + +exports[`"modules" option should work and respect the \`localConvention\` option with the \`dashesOnly\` value and \`namedExport\` false: errors 1`] = `[]`; + +exports[`"modules" option should work and respect the \`localConvention\` option with the \`dashesOnly\` value and \`namedExport\` false: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../../src/runtime/api.js"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`.rmc8ltu8P1VXaeqLNU6N { + color: blue; +} + +.AooVHuvzAIGXWngdfslc { + color: blue; +} + +.snmJCrfw3LVnrlx87XVC { + color: red; +} + +a { + color: yellow; +} + +.vA4oeh0XymefKJVIJyg1 { + color: red; +} + +.mDiC1MIOTWjgsd86woaJ { + color: red; +} + +.kY3VVFqpzmTiFlxOd9KU { + color: red; +} + +.eiLdMC_n9TCXQ0oPIJyI { + color: red; +} +\`, ""]); +// Exports +___CSS_LOADER_EXPORT___.locals = { + "foo": \`bar\`, + "myBtnInfo_isDisabled": \`value\`, + "btnInfo_isDisabled": \`rmc8ltu8P1VXaeqLNU6N\`, + "btnInfo_isDisabled_1": \`AooVHuvzAIGXWngdfslc\`, + "simple": \`snmJCrfw3LVnrlx87XVC\`, + "foo_bar": \`vA4oeh0XymefKJVIJyg1\`, + "class": \`mDiC1MIOTWjgsd86woaJ\`, + "fooBarBaz": \`kY3VVFqpzmTiFlxOd9KU\`, + "b": \`eiLdMC_n9TCXQ0oPIJyI\` +}; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should work and respect the \`localConvention\` option with the \`dashesOnly\` value and \`namedExport\` false: result 1`] = ` +[ + [ + "./modules/localsConvention/localsConvention.css", + ".rmc8ltu8P1VXaeqLNU6N { + color: blue; +} + +.AooVHuvzAIGXWngdfslc { + color: blue; +} + +.snmJCrfw3LVnrlx87XVC { + color: red; +} + +a { + color: yellow; +} + +.vA4oeh0XymefKJVIJyg1 { + color: red; +} + +.mDiC1MIOTWjgsd86woaJ { + color: red; +} + +.kY3VVFqpzmTiFlxOd9KU { + color: red; +} + +.eiLdMC_n9TCXQ0oPIJyI { + color: red; +} +", + "", + ], +] +`; + +exports[`"modules" option should work and respect the \`localConvention\` option with the \`dashesOnly\` value and \`namedExport\` false: warnings 1`] = `[]`; + +exports[`"modules" option should work and respect the \`localConvention\` option with the \`dashesOnly\` value: errors 1`] = `[]`; + +exports[`"modules" option should work and respect the \`localConvention\` option with the \`dashesOnly\` value: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../../src/runtime/api.js"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`.rmc8ltu8P1VXaeqLNU6N { + color: blue; +} + +.AooVHuvzAIGXWngdfslc { + color: blue; +} + +.snmJCrfw3LVnrlx87XVC { + color: red; +} + +a { + color: yellow; +} + +.vA4oeh0XymefKJVIJyg1 { + color: red; +} + +.mDiC1MIOTWjgsd86woaJ { + color: red; +} + +.kY3VVFqpzmTiFlxOd9KU { + color: red; +} + +.eiLdMC_n9TCXQ0oPIJyI { + color: red; +} +\`, ""]); +// Exports +export var foo = \`bar\`; +export var myBtnInfo_isDisabled = \`value\`; +export var btnInfo_isDisabled = \`rmc8ltu8P1VXaeqLNU6N\`; +export var btnInfo_isDisabled_1 = \`AooVHuvzAIGXWngdfslc\`; +export var simple = \`snmJCrfw3LVnrlx87XVC\`; +export var foo_bar = \`vA4oeh0XymefKJVIJyg1\`; +var _1 = \`mDiC1MIOTWjgsd86woaJ\`; +export { _1 as "class" }; +export var fooBarBaz = \`kY3VVFqpzmTiFlxOd9KU\`; +export var b = \`eiLdMC_n9TCXQ0oPIJyI\`; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should work and respect the \`localConvention\` option with the \`dashesOnly\` value: result 1`] = ` +[ + [ + "./modules/localsConvention/localsConvention.css", + ".rmc8ltu8P1VXaeqLNU6N { + color: blue; +} + +.AooVHuvzAIGXWngdfslc { + color: blue; +} + +.snmJCrfw3LVnrlx87XVC { + color: red; +} + +a { + color: yellow; +} + +.vA4oeh0XymefKJVIJyg1 { + color: red; +} + +.mDiC1MIOTWjgsd86woaJ { + color: red; +} + +.kY3VVFqpzmTiFlxOd9KU { + color: red; +} + +.eiLdMC_n9TCXQ0oPIJyI { + color: red; +} +", + "", + ], +] +`; + +exports[`"modules" option should work and respect the \`localConvention\` option with the \`dashesOnly\` value: warnings 1`] = `[]`; + +exports[`"modules" option should work and support "pure" mode #2: errors 1`] = `[]`; + +exports[`"modules" option should work and support "pure" mode #2: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../../src/runtime/api.js"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`.GG5NOiRT4g06DVEU5tQf { + color: red; +} + +h1 .uUkzTtFrPX7DQk7AJn_C { + color: green; +} + +.d2SVtvxeS3c0zw1j0XY3 h1 { + color: blue; +} + +.uj35KKSMxYrydy9AtwEA h1 .sHauUzQwWo87dp__t_Ug { + color: red; +} + +#ebGYgLwRuH_cwCOAeAIf { + color: red; +} + +h1 #CEBxO1NI6KSE4aIOEe8g { + color: green; +} + +#CIs5QkSldUS9Z6oE85dq h1 { + color: blue; +} + +#eEMqyPYFGmm35aX75zy3 h1 #nNXpPpX8pUC5paDKAwBo { + color: red; +} + +.G4jxkxdOl0F0aHDyzSab .bar .XbSw2R5rWm8FCPx8AUjP { + color: white; +} + +.owPaXiJkt4EitYBDn5Yh .CP7zuaZH99lZJVmJwA3g .vvLsn8M1D1up5NfSbIYh { + color: black; +} + +.nnjcLLGI3W9kePCpF3rz { + color: red; + + & > span { + color: green; + } +} +\`, ""]); +// Exports +export var foo = \`GG5NOiRT4g06DVEU5tQf\`; +var _1 = \`uUkzTtFrPX7DQk7AJn_C\`; +export { _1 as "foo-1" }; +var _2 = \`d2SVtvxeS3c0zw1j0XY3\`; +export { _2 as "foo-2" }; +var _3 = \`uj35KKSMxYrydy9AtwEA\`; +export { _3 as "foo-3" }; +var _4 = \`sHauUzQwWo87dp__t_Ug\`; +export { _4 as "foo-4" }; +var _5 = \`ebGYgLwRuH_cwCOAeAIf\`; +export { _5 as "foo-5" }; +var _6 = \`CEBxO1NI6KSE4aIOEe8g\`; +export { _6 as "foo-6" }; +var _7 = \`CIs5QkSldUS9Z6oE85dq\`; +export { _7 as "foo-7" }; +var _8 = \`eEMqyPYFGmm35aX75zy3\`; +export { _8 as "foo-8" }; +var _9 = \`nNXpPpX8pUC5paDKAwBo\`; +export { _9 as "foo-9" }; +var _a = \`G4jxkxdOl0F0aHDyzSab\`; +export { _a as "bar-1" }; +var _b = \`XbSw2R5rWm8FCPx8AUjP\`; +export { _b as "bar-2" }; +var _c = \`owPaXiJkt4EitYBDn5Yh\`; +export { _c as "baz-3" }; +export var baz = \`CP7zuaZH99lZJVmJwA3g\`; +var _d = \`vvLsn8M1D1up5NfSbIYh\`; +export { _d as "bar-4" }; +export var test = \`nnjcLLGI3W9kePCpF3rz\`; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should work and support "pure" mode #2: result 1`] = ` +[ + [ + "./modules/pure/pure.css", + ".GG5NOiRT4g06DVEU5tQf { + color: red; +} + +h1 .uUkzTtFrPX7DQk7AJn_C { + color: green; +} + +.d2SVtvxeS3c0zw1j0XY3 h1 { + color: blue; +} + +.uj35KKSMxYrydy9AtwEA h1 .sHauUzQwWo87dp__t_Ug { + color: red; +} + +#ebGYgLwRuH_cwCOAeAIf { + color: red; +} + +h1 #CEBxO1NI6KSE4aIOEe8g { + color: green; +} + +#CIs5QkSldUS9Z6oE85dq h1 { + color: blue; +} + +#eEMqyPYFGmm35aX75zy3 h1 #nNXpPpX8pUC5paDKAwBo { + color: red; +} + +.G4jxkxdOl0F0aHDyzSab .bar .XbSw2R5rWm8FCPx8AUjP { + color: white; +} + +.owPaXiJkt4EitYBDn5Yh .CP7zuaZH99lZJVmJwA3g .vvLsn8M1D1up5NfSbIYh { + color: black; +} + +.nnjcLLGI3W9kePCpF3rz { + color: red; + + & > span { + color: green; + } +} +", + "", + ], +] +`; + +exports[`"modules" option should work and support "pure" mode #2: warnings 1`] = `[]`; + +exports[`"modules" option should work and support "pure" mode: errors 1`] = `[]`; + +exports[`"modules" option should work and support "pure" mode: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../../src/runtime/api.js"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`.GG5NOiRT4g06DVEU5tQf { + color: red; +} + +h1 .uUkzTtFrPX7DQk7AJn_C { + color: green; +} + +.d2SVtvxeS3c0zw1j0XY3 h1 { + color: blue; +} + +.uj35KKSMxYrydy9AtwEA h1 .sHauUzQwWo87dp__t_Ug { + color: red; +} + +#ebGYgLwRuH_cwCOAeAIf { + color: red; +} + +h1 #CEBxO1NI6KSE4aIOEe8g { + color: green; +} + +#CIs5QkSldUS9Z6oE85dq h1 { + color: blue; +} + +#eEMqyPYFGmm35aX75zy3 h1 #nNXpPpX8pUC5paDKAwBo { + color: red; +} + +.G4jxkxdOl0F0aHDyzSab .bar .XbSw2R5rWm8FCPx8AUjP { + color: white; +} + +.owPaXiJkt4EitYBDn5Yh .CP7zuaZH99lZJVmJwA3g .vvLsn8M1D1up5NfSbIYh { + color: black; +} + +.nnjcLLGI3W9kePCpF3rz { + color: red; + + & > span { + color: green; + } +} +\`, ""]); +// Exports +export var foo = \`GG5NOiRT4g06DVEU5tQf\`; +var _1 = \`uUkzTtFrPX7DQk7AJn_C\`; +export { _1 as "foo-1" }; +var _2 = \`d2SVtvxeS3c0zw1j0XY3\`; +export { _2 as "foo-2" }; +var _3 = \`uj35KKSMxYrydy9AtwEA\`; +export { _3 as "foo-3" }; +var _4 = \`sHauUzQwWo87dp__t_Ug\`; +export { _4 as "foo-4" }; +var _5 = \`ebGYgLwRuH_cwCOAeAIf\`; +export { _5 as "foo-5" }; +var _6 = \`CEBxO1NI6KSE4aIOEe8g\`; +export { _6 as "foo-6" }; +var _7 = \`CIs5QkSldUS9Z6oE85dq\`; +export { _7 as "foo-7" }; +var _8 = \`eEMqyPYFGmm35aX75zy3\`; +export { _8 as "foo-8" }; +var _9 = \`nNXpPpX8pUC5paDKAwBo\`; +export { _9 as "foo-9" }; +var _a = \`G4jxkxdOl0F0aHDyzSab\`; +export { _a as "bar-1" }; +var _b = \`XbSw2R5rWm8FCPx8AUjP\`; +export { _b as "bar-2" }; +var _c = \`owPaXiJkt4EitYBDn5Yh\`; +export { _c as "baz-3" }; +export var baz = \`CP7zuaZH99lZJVmJwA3g\`; +var _d = \`vvLsn8M1D1up5NfSbIYh\`; +export { _d as "bar-4" }; +export var test = \`nnjcLLGI3W9kePCpF3rz\`; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should work and support "pure" mode: result 1`] = ` +[ + [ + "./modules/pure/pure.css", + ".GG5NOiRT4g06DVEU5tQf { + color: red; +} + +h1 .uUkzTtFrPX7DQk7AJn_C { + color: green; +} + +.d2SVtvxeS3c0zw1j0XY3 h1 { + color: blue; +} + +.uj35KKSMxYrydy9AtwEA h1 .sHauUzQwWo87dp__t_Ug { + color: red; +} + +#ebGYgLwRuH_cwCOAeAIf { + color: red; +} + +h1 #CEBxO1NI6KSE4aIOEe8g { + color: green; +} + +#CIs5QkSldUS9Z6oE85dq h1 { + color: blue; +} + +#eEMqyPYFGmm35aX75zy3 h1 #nNXpPpX8pUC5paDKAwBo { + color: red; +} + +.G4jxkxdOl0F0aHDyzSab .bar .XbSw2R5rWm8FCPx8AUjP { + color: white; +} + +.owPaXiJkt4EitYBDn5Yh .CP7zuaZH99lZJVmJwA3g .vvLsn8M1D1up5NfSbIYh { + color: black; +} + +.nnjcLLGI3W9kePCpF3rz { + color: red; + + & > span { + color: green; + } +} +", + "", + ], +] +`; + +exports[`"modules" option should work and support "pure" mode: warnings 1`] = `[]`; + +exports[`"modules" option should work js template with "namedExport" option when "exportLocalsConvention" option is function: errors 1`] = `[]`; + +exports[`"modules" option should work js template with "namedExport" option when "exportLocalsConvention" option is function: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from "../../../../../src/runtime/noSourceMaps.js"; +import ___CSS_LOADER_API_IMPORT___ from "../../../../../src/runtime/api.js"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \`.header-baz { + color: red; +} + +.body { + color: coral; +} + +.footer { + color: blue; +} +\`, ""]); +// Exports +export var header_baz_TEST = \`header-baz\`; +export var body_TEST = \`body\`; +export var footer_TEST = \`footer\`; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should work js template with "namedExport" option when "exportLocalsConvention" option is function: result 1`] = ` +{ + "css": [ + [ + "./modules/namedExport/template-2/index.css", + ".header-baz { + color: red; +} + +.body { + color: coral; +} + +.footer { + color: blue; +} +", + "", + ], + ], + "html": " +

+
+