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/.editorconfig b/.editorconfig index 9f89f364..5f795282 100644 --- a/.editorconfig +++ b/.editorconfig @@ -9,5 +9,4 @@ insert_final_newline = true trim_trailing_whitespace = true [*.md] -insert_final_newline = true trim_trailing_whitespace = false 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 new file mode 100644 index 00000000..8938f6fa --- /dev/null +++ b/.github/workflows/nodejs.yml @@ -0,0 +1,99 @@ +name: css-loader + +on: + push: + branches: + - master + - next + pull_request: + branches: + - master + - next + +permissions: + contents: read + +jobs: + lint: + name: Lint - ${{ matrix.os }} - Node v${{ matrix.node-version }} + + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + + strategy: + matrix: + os: [ubuntu-latest] + 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@v4 + with: + fetch-depth: 0 + + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v4 + with: + node-version: ${{ matrix.node-version }} + cache: "npm" + + - name: Install dependencies + run: npm ci + + - name: Lint + run: npm run lint + + - name: Security audit + run: npm run security + + - 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 }} + + strategy: + matrix: + os: [ubuntu-latest, windows-latest, macos-latest] + 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@v4 + + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v4 + with: + node-version: ${{ matrix.node-version }} + 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@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 1934550a..00000000 --- a/.prettierrc.js +++ /dev/null @@ -1,5 +0,0 @@ -module.exports = { - singleQuote: true, - trailingComma: 'es5', - arrowParens: 'always', -}; diff --git a/CHANGELOG.md b/CHANGELOG.md index 8b23e349..5540e26e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,633 @@ 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) + + +### Bug Fixes + +* add file from an error to file dependencies ([841423f](https://github.com/webpack-contrib/css-loader/commit/841423fca2932c18f8ac0cf0a1f0012fc0a62fb6)) +* avoid query string in source maps ([#1082](https://github.com/webpack-contrib/css-loader/issues/1082)) ([f64de13](https://github.com/webpack-contrib/css-loader/commit/f64de13f7377eff9501348cf26213212ca696913)) + +### [3.5.2](https://github.com/webpack-contrib/css-loader/compare/v3.5.1...v3.5.2) (2020-04-10) + + +### Bug Fixes + +* schema for the `modules.auto` option ([#1075](https://github.com/webpack-contrib/css-loader/issues/1075)) ([8c9ffe7](https://github.com/webpack-contrib/css-loader/commit/8c9ffe7c6df11232b63173c757baa71ed36f6145)) + +### [3.5.1](https://github.com/webpack-contrib/css-loader/compare/v3.5.0...v3.5.1) (2020-04-07) + + +### Bug Fixes + +* don't generate an invalid code for `locals` ([#1072](https://github.com/webpack-contrib/css-loader/issues/1072)) ([866b84a](https://github.com/webpack-contrib/css-loader/commit/866b84acd7fd47651f741ca1e6cf7081c2bbe357)) + +## [3.5.0](https://github.com/webpack-contrib/css-loader/compare/v3.4.2...v3.5.0) (2020-04-06) + + +### Features + +* accept semver compatible postcss AST ([#1049](https://github.com/webpack-contrib/css-loader/issues/1049)) ([14c4faa](https://github.com/webpack-contrib/css-loader/commit/14c4faae87305c9b965de4f468bb1e118f6b84cc)) +* allow to determinate css modules using the `modules.auto` option, please look at an [example](https://github.com/webpack-contrib/css-loader#pure-css-css-modules-and-postcss) of how you can simplify the configuration. ([#1067](https://github.com/webpack-contrib/css-loader/issues/1067)) ([c673cf4](https://github.com/webpack-contrib/css-loader/commit/c673cf418e901c5050bc697eb45401dc9a42c477)) +* the `modules.exportGlobals` option for export global classes and ids ([#1069](https://github.com/webpack-contrib/css-loader/issues/1069)) ([519e5f4](https://github.com/webpack-contrib/css-loader/commit/519e5f41539f4c87ec96db0a908aaadecc284a6c)) +* the `modules.mode` option may be a function ([#1065](https://github.com/webpack-contrib/css-loader/issues/1065)) ([0d8ac3b](https://github.com/webpack-contrib/css-loader/commit/0d8ac3bcb831bc747657c914aba106b93840737e)) + +### [3.4.2](https://github.com/webpack-contrib/css-loader/compare/v3.4.1...v3.4.2) (2020-01-10) + + +### Bug Fixes + +* do not duplicate css on `composes` ([#1040](https://github.com/webpack-contrib/css-loader/issues/1040)) ([df79602](https://github.com/webpack-contrib/css-loader/commit/df7960277be20ec80e9be1a41ac53baf69847fa0)) + +### [3.4.1](https://github.com/webpack-contrib/css-loader/compare/v3.4.0...v3.4.1) (2020-01-03) + + +### Bug Fixes + +* do not output `undefined` when sourceRoot is unavailable ([#1036](https://github.com/webpack-contrib/css-loader/issues/1036)) ([ded2a79](https://github.com/webpack-contrib/css-loader/commit/ded2a797271f2adf864bf92300621c024974bc79)) +* don't output invalid es5 code when locals do not exists ([#1035](https://github.com/webpack-contrib/css-loader/issues/1035)) ([b60e62a](https://github.com/webpack-contrib/css-loader/commit/b60e62a655719cc1779fae7d577af6ad6cf42135)) + +## [3.4.0](https://github.com/webpack-contrib/css-loader/compare/v3.3.1...v3.4.0) (2019-12-17) + + +### Features + +* `esModule` option ([#1026](https://github.com/webpack-contrib/css-loader/issues/1026)) ([d358cdb](https://github.com/webpack-contrib/css-loader/commit/d358cdbe2c026afafa0279003cb6c8a3eff4c419)) + + +### Bug Fixes + +* logic for order and media queries for imports ([#1018](https://github.com/webpack-contrib/css-loader/issues/1018)) ([65450d9](https://github.com/webpack-contrib/css-loader/commit/65450d9c04790ccc9fb06eac81ea6d8f3cdbfaac)) + +### [3.3.2](https://github.com/webpack-contrib/css-loader/compare/v3.3.1...v3.3.2) (2019-12-12) + + +### Bug Fixes + +* logic for order and media queries for imports ([1fb5134](https://github.com/webpack-contrib/css-loader/commit/1fb51340a7719b6f5b517cb71ea85ec5d45c1199)) + +### [3.3.1](https://github.com/webpack-contrib/css-loader/compare/v3.3.0...v3.3.1) (2019-12-12) + + +### Bug Fixes + +* better handling url functions and an url in `@import` at-rules +* reduce count of `require` ([#1014](https://github.com/webpack-contrib/css-loader/issues/1014)) ([e091d27](https://github.com/webpack-contrib/css-loader/commit/e091d2709c29ac57ed0106af8ec3b581cbda7a9c)) + +## [3.3.0](https://github.com/webpack-contrib/css-loader/compare/v3.2.1...v3.3.0) (2019-12-09) + + +### Features + +* support `pure` css modules ([#1008](https://github.com/webpack-contrib/css-loader/issues/1008)) ([6177af5](https://github.com/webpack-contrib/css-loader/commit/6177af5596566fead13a8f66d5abcb4dc2b744db)) + + +### Bug Fixes + +* do not crash when an assert return `null` or `undefined` ([#1006](https://github.com/webpack-contrib/css-loader/issues/1006)) ([6769783](https://github.com/webpack-contrib/css-loader/commit/67697833725e1cff12a14663390bbe4c65ea36d2)) +* reduce count of `require` ([#1004](https://github.com/webpack-contrib/css-loader/issues/1004)) ([80e9662](https://github.com/webpack-contrib/css-loader/commit/80e966280f2477c5c0e4553d3be3a04511fea381)) + +### [3.2.1](https://github.com/webpack-contrib/css-loader/compare/v3.2.0...v3.2.1) (2019-12-02) + + +### Bug Fixes + +* add an additional space after the escape sequence ([#998](https://github.com/webpack-contrib/css-loader/issues/998)) ([0961304](https://github.com/webpack-contrib/css-loader/commit/0961304020832fc9ca70cc708f4366e1f868e765)) +* compatibility with ES modules syntax and hash in `url` function ([#1001](https://github.com/webpack-contrib/css-loader/issues/1001)) ([8f4d6f5](https://github.com/webpack-contrib/css-loader/commit/8f4d6f508187513347106a436eda993f874065f1)) + ## [3.2.0](https://github.com/webpack-contrib/css-loader/compare/v3.1.0...v3.2.0) (2019-08-06) diff --git a/README.md b/README.md index 466a8729..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,70 +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 | +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') @@ -138,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. @@ -158,7 +131,7 @@ module.exports = { rules: [ { test: /\.css$/i, - loader: 'css-loader', + loader: "css-loader", options: { url: true, }, @@ -168,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** @@ -180,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; + }, }, }, }, @@ -201,11 +183,31 @@ module.exports = { ### `import` -Type: `Boolean` +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: @@ -219,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') @@ -227,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. @@ -239,7 +241,7 @@ module.exports = { rules: [ { test: /\.css$/i, - loader: 'css-loader', + loader: "css-loader", options: { import: true, }, @@ -249,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** @@ -261,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; + }, }, }, }, @@ -284,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` + +Allows you to enable or disable CSS Modules or ICSS and configure them: -Enables/Disables CSS Modules and their configuration. +- `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). -The `modules` option enables/disables the **[CSS Modules](https://github.com/css-modules/css-modules)** specification and setup basic behaviour. +The `modules` option enables/disables the **[CSS Modules](https://github.com/css-modules/css-modules)** specification and configures its behavior. -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. +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** @@ -301,7 +372,7 @@ module.exports = { rules: [ { test: /\.css$/i, - loader: 'css-loader', + loader: "css-loader", options: { modules: true, }, @@ -315,20 +386,21 @@ module.exports = { ##### `Scope` -Using `local` value requires you to specify `:global` classes. -Using `global` value requires you to specify `:local` classes. +- 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) { @@ -345,6 +417,8 @@ The loader replaces local selectors with unique identifiers. The chosen unique i } ``` +Output (example): + ```css ._23_aKvs-b8bW2Vg3fwHozO { background: red; @@ -360,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) { @@ -389,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", }; ``` @@ -411,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; } ``` @@ -431,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; } @@ -442,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; @@ -465,7 +561,7 @@ We recommend use prefix `v-` for values, `s-` for selectors and `m-` for media a } ``` -#### `Boolean` +#### `boolean` Enable **CSS Modules** features. @@ -477,7 +573,7 @@ module.exports = { rules: [ { test: /\.css$/i, - loader: 'css-loader', + loader: "css-loader", options: { modules: true, }, @@ -487,7 +583,7 @@ module.exports = { }; ``` -#### `String` +#### `string` Enable **CSS Modules** features and setup `mode`. @@ -499,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", }, }, ], @@ -510,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** @@ -522,13 +618,19 @@ module.exports = { rules: [ { test: /\.css$/i, - loader: 'css-loader', + loader: "css-loader", options: { modules: { - mode: 'local', - localIdentName: '[path][name]__[local]--[hash:base64:5]', - context: path.resolve(__dirname, 'src'), - hashPrefix: 'my-custom-hash', + mode: "local", + auto: true, + exportGlobals: true, + 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 }) => {}, }, }, }, @@ -537,12 +639,39 @@ module.exports = { }; ``` -##### `mode` +##### `auto` -Type: `String` -Default: `local` +Type: -Setup `mode` option. You can omit the value when you want `local` mode. +```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: + +- `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` + +Possible values: + +- `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** @@ -552,10 +681,10 @@ module.exports = { rules: [ { test: /\.css$/i, - loader: 'css-loader', + loader: "css-loader", options: { modules: { - mode: 'global', + auto: true, }, }, }, @@ -564,22 +693,33 @@ module.exports = { }; ``` -##### `localIdentName` - -Type: `String` -Default: `[hash:base64]` +###### `RegExp` -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. +Enables CSS modules for files based on the filename satisfying your regex check. -Recommendations: +**webpack.config.js** -- use `[path][name]__[local]` for development -- use `[hash:base64]` for production +```js +module.exports = { + module: { + rules: [ + { + test: /\.css$/i, + loader: "css-loader", + options: { + modules: { + auto: /\.custom-module\.\w+$/i, + }, + }, + }, + ], + }, +}; +``` -The `[local]` placeholder contains original class. +###### `function` -**Note:** all reserved (`<>:"/\|?*`) and control filesystem characters (excluding characters in the `[local]` placeholder) will be converted to `-`. +Enables CSS Modules for files based on the filename, query or fragment satisfying your filter function check. **webpack.config.js** @@ -589,10 +729,12 @@ module.exports = { rules: [ { test: /\.css$/i, - loader: 'css-loader', + loader: "css-loader", options: { modules: { - localIdentName: '[path][name]__[local]--[hash:base64:5]', + auto: (resourcePath, resourceQuery, resourceFragment) => { + return resourcePath.endsWith(".custom-module.css"); + }, }, }, }, @@ -601,13 +743,37 @@ module.exports = { }; ``` -##### `context` +##### `mode` -Type: `String` -Default: `undefined` +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. -Allow to redefine basic loader context for local ident name. -By default we use `rootContext` of loader. +- 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. + +###### `string` + +Possible values - `local`, `global`, `pure`, and `icss`. **webpack.config.js** @@ -617,10 +783,10 @@ module.exports = { rules: [ { test: /\.css$/i, - loader: 'css-loader', + loader: "css-loader", options: { modules: { - context: path.resolve(__dirname, 'context'), + mode: "global", }, }, }, @@ -629,12 +795,10 @@ module.exports = { }; ``` -##### `hashPrefix` - -Type: `String` -Default: `undefined` +###### `function` -Allow to add custom hash to generate more unique classes. +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** @@ -644,10 +808,21 @@ module.exports = { rules: [ { test: /\.css$/i, - loader: 'css-loader', + loader: "css-loader", options: { modules: { - hashPrefix: 'hash', + // 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"; + }, }, }, }, @@ -656,13 +831,45 @@ module.exports = { }; ``` -##### `getLocalIdent` +##### `localIdentName` -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 localIdentName = string; +``` + +Default: `'[hash:base64]'` + +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 + +The `[local]` placeholder contains original class. + +**Note:** all reserved characters (`<>:"/\|?*`) and control filesystem characters (excluding characters in the `[local]` placeholder) will be converted to `-`. **webpack.config.js** @@ -672,12 +879,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'; - }, + localIdentName: "[path][name]__[local]--[hash:base64:5]", }, }, }, @@ -686,10 +891,17 @@ module.exports = { }; ``` -##### `localIdentRegExp` +##### `localIdentContext` -Type: `String|RegExp` -Default: `undefined` +Type: + +```ts +type localIdentContex = string; +``` + +Default: `compiler.context` + +Allows redefining the basic loader context for local ident name. **webpack.config.js** @@ -699,10 +911,10 @@ module.exports = { rules: [ { test: /\.css$/i, - loader: 'css-loader', + loader: "css-loader", options: { modules: { - localIdentRegExp: /page-(.*)\.css/i, + localIdentContext: path.resolve(__dirname, "src"), }, }, }, @@ -711,16 +923,19 @@ module.exports = { }; ``` -### `sourceMap` +##### `localIdentHashSalt` -Type: `Boolean` -Default: `false` +Type: -Enables/Disables generation of source maps. +```ts +type localIdentHashSalt = string; +``` + +Default: `undefined` -To include source maps set the `sourceMap` option. +Allows to add custom hash to generate more unique 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.hashSalt](https://webpack.js.org/configuration/output/#outputhashsalt). **webpack.config.js** @@ -730,9 +945,11 @@ module.exports = { rules: [ { test: /\.css$/i, - loader: 'css-loader', + loader: "css-loader", options: { - sourceMap: true, + modules: { + localIdentHashSalt: "hash", + }, }, }, ], @@ -740,14 +957,19 @@ module.exports = { }; ``` -### `importLoaders` +##### `localIdentHashFunction` -Type: `Number` -Default: `0` +Type: -Enables/Disables or setups number of loaders applied before CSS loader. +```ts +type localIdentHashFunction = string; +``` + +Default: `md4` -The option `importLoaders` allows you to configure how many loaders before `css-loader` should be applied to `@import`ed resources. +Allows to specify hash function to generate classes . + +For more information see [output.hashFunction](https://webpack.js.org/configuration/output/#outputhashfunction). **webpack.config.js** @@ -757,58 +979,66 @@ 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: { + localIdentHashFunction: "md4", }, - 'postcss-loader', - 'sass-loader', - ], + }, }, ], }, }; ``` -This may change in the future when the module system (i. e. webpack) supports loader matching by origin. +##### `localIdentHashDigest` -### `localsConvention` +Type: -Type: `String` -Default: `undefined` +```ts +type localIdentHashDigest = string; +``` -Style of exported classnames. +Default: `hex` -By default, the exported JSON keys mirror the class names (i.e `asIs` value). +Allows to specify hash digest to generate classes. -| 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 | +For more information see [output.hashDigest](https://webpack.js.org/configuration/output/#outputhashdigest). -**file.css** +**webpack.config.js** -```css -.class-name { -} +```js +module.exports = { + module: { + rules: [ + { + test: /\.css$/i, + loader: "css-loader", + options: { + modules: { + localIdentHashDigest: "base64", + }, + }, + }, + ], + }, +}; ``` -**file.js** +##### `localIdentHashDigestLength` -```js -import { className } from 'file.css'; +Type: + +```ts +type localIdentHashDigestLength = number; ``` +Default: `20` + +Allows to specify hash digest length to generate classes. + +For more information, see [output.hashDigestLength](https://webpack.js.org/configuration/output/#outputhashdigestlength). + **webpack.config.js** ```js @@ -817,9 +1047,11 @@ module.exports = { rules: [ { test: /\.css$/i, - loader: 'css-loader', + loader: "css-loader", options: { - localsConvention: 'camelCase', + modules: { + localIdentHashDigestLength: 5, + }, }, }, ], @@ -827,16 +1059,15 @@ module.exports = { }; ``` -### `onlyLocals` +##### `hashStrategy` -Type: `Boolean` -Default: `false` +Type: `'resource-path-and-local-name' | 'minimal-subset'` +Default: `'resource-path-and-local-name'` -Export only locals. +Should local name be used when computing the hash. -**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. +- `'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** @@ -846,9 +1077,11 @@ module.exports = { rules: [ { test: /\.css$/i, - loader: 'css-loader', + loader: "css-loader", options: { - onlyLocals: true, + modules: { + hashStrategy: "minimal-subset", + }, }, }, ], @@ -856,11 +1089,15 @@ module.exports = { }; ``` -## Examples +##### `localIdentRegExp` -### Assets +Type: -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. +```ts +type localIdentRegExp = string | RegExp; +``` + +Default: `undefined` **webpack.config.js** @@ -870,13 +1107,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: { + localIdentRegExp: /page-(.*)\.css/i, + }, }, }, ], @@ -884,17 +1119,25 @@ module.exports = { }; ``` -### Extract +##### `getLocalIdent` -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. +Type: -- 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. +```ts +type getLocalIdent = ( + context: LoaderContext, + localIdentName: string, + localName: string, +) => string; +``` -- 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 +Default: `undefined` + +Allows to specify a function to generate the classname. -### CSS modules and pure CSS +By default we use built-in function to generate a classname. -When you have pure CSS (without CSS modules) and CSS modules in project you can use this setup: +If your custom function returns `null` or `undefined`, the built-in generator is used as a `fallback`. **webpack.config.js** @@ -903,29 +1146,14 @@ module.exports = { module: { rules: [ { - // For pure CSS (without CSS modules) test: /\.css$/i, - exclude: /\.module\.css$/i, - use: ['style-loader', 'css-loader'], - }, - { - // For CSS modules - test: /\.module\.css$/i, - use: [ - 'style-loader', - { - loader: 'css-loader', - options: { - modules: true, + loader: "css-loader", + options: { + modules: { + getLocalIdent: (context, localIdentName, localName, options) => { + return "whatever_random_class_name"; }, }, - ], - }, - { - test: /\.(png|jpe?g|gif|svg|eot|ttf|woff|woff2)$/i, - loader: 'url-loader', - options: { - limit: 8192, }, }, ], @@ -933,9 +1161,1188 @@ module.exports = { }; ``` -## Contributing +##### `namedExport` + +Type: + +```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** + +```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** + +```js +module.exports = { + module: { + rules: [ + { + test: /\.css$/i, + loader: "css-loader", + options: { + esModule: true, + modules: { + namedExport: true, + }, + }, + }, + ], + }, +}; +``` + +To set a custom name for namedExport, can use [`exportLocalsConvention`](#exportLocalsConvention) option as a function. + +See below in the [`examples`](#examples) section. + +##### `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** + +```js +module.exports = { + module: { + rules: [ + { + test: /\.css$/i, + loader: "css-loader", + options: { + modules: { + exportGlobals: true, + }, + }, + }, + ], + }, +}; +``` + +##### `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 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. + +### 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: + +**webpack.config.js** + +```js +module.exports = { + module: { + rules: [ + { + // 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", + { + loader: "css-loader", + options: { + // 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, + }, + }, + { + loader: "postcss-loader", + options: { plugins: () => [postcssPresetEnv({ stage: 0 })] }, + }, + // Can be `less-loader` + { + loader: "sass-loader", + }, + ], + }, + // For webpack v5 + { + test: /\.(png|jpe?g|gif|svg|eot|ttf|woff|woff2)$/i, + // 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: { + modules: { + namedExport: true, + exportLocalsConvention: function (name) { + return name.replace(/-/g, "_"); + }, + }, + }, + }, + ], + }, +}; +``` + +### 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 + +We welcome all contributions! -Please take a moment to read our contributing guidelines if you haven't yet done so. +If you are new here, please take a moment to review our contributing guidelines before submitting issues or pull requests. [CONTRIBUTING](./.github/CONTRIBUTING.md) @@ -947,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://dev.azure.com/webpack-contrib/css-loader/_apis/build/status/webpack-contrib.css-loader?branchName=master -[tests-url]: https://dev.azure.com/webpack-contrib/css-loader/_build/latest?definitionId=2&branchName=master +[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/azure-pipelines.yml b/azure-pipelines.yml deleted file mode 100644 index 6aa59122..00000000 --- a/azure-pipelines.yml +++ /dev/null @@ -1,192 +0,0 @@ -trigger: - - master - - next - -jobs: - - job: Lint - pool: - vmImage: ubuntu-16.04 - steps: - - task: NodeTool@0 - inputs: - versionSpec: ^10.13.0 - displayName: 'Install Node.js' - - task: Npm@1 - inputs: - command: custom - customCommand: i -g npm@latest - displayName: 'Install latest NPM' - - script: | - node -v - npm -v - displayName: 'Print versions' - - task: Npm@1 - inputs: - command: custom - customCommand: ci - displayName: 'Install dependencies' - - script: npm run lint - displayName: 'Run lint' - - script: npm run security - displayName: 'Run NPM audit' - - script: ./node_modules/.bin/commitlint-azure-pipelines - displayName: 'Run lint commit message' - - - job: Linux - pool: - vmImage: ubuntu-16.04 - strategy: - maxParallel: 4 - matrix: - node-12: - node_version: ^12.0.0 - webpack_version: latest - node-10: - node_version: ^10.13.0 - webpack_version: latest - node-8: - node_version: ^8.9.0 - webpack_version: latest - node-8-canary: - node_version: ^8.9.0 - webpack_version: next - continue_on_error: true - steps: - - task: NodeTool@0 - inputs: - versionSpec: $(node_version) - displayName: 'Install Node.js $(node_version)' - - task: Npm@1 - inputs: - command: custom - customCommand: i -g npm@latest - displayName: 'Install latest NPM' - - script: | - node -v - npm -v - displayName: 'Print versions' - - task: Npm@1 - inputs: - command: custom - customCommand: ci - displayName: 'Install dependencies' - - script: npm i webpack@$(webpack_version) - displayName: 'Install "webpack@$(webpack_version)"' - - script: npm run test:coverage -- --ci --reporters="default" --reporters="jest-junit" || $(continue_on_error) - displayName: 'Run tests with coverage' - - task: PublishTestResults@2 - inputs: - testRunTitle: 'Linux with Node.js $(node_version)' - testResultsFiles: '**/junit.xml' - condition: succeededOrFailed() - displayName: 'Publish test results' - - script: curl -s https://codecov.io/bash | bash -s -- -t $(CODECOV_TOKEN) - condition: succeededOrFailed() - displayName: 'Submit coverage data to codecov' - - - job: macOS - pool: - vmImage: macOS-10.14 - strategy: - maxParallel: 4 - matrix: - node-12: - node_version: ^12.0.0 - webpack_version: latest - node-10: - node_version: ^10.13.0 - webpack_version: latest - node-8: - node_version: ^8.9.0 - webpack_version: latest - node-8-canary: - node_version: ^8.9.0 - webpack_version: next - continue_on_error: true - steps: - - task: NodeTool@0 - inputs: - versionSpec: $(node_version) - displayName: 'Install Node.js $(node_version)' - - task: Npm@1 - inputs: - command: custom - customCommand: i -g npm@latest - displayName: 'Install latest NPM' - - script: | - node -v - npm -v - displayName: 'Print versions' - - task: Npm@1 - inputs: - command: custom - customCommand: ci - displayName: 'Install dependencies' - - script: npm i webpack@$(webpack_version) - displayName: 'Install "webpack@$(webpack_version)"' - - script: npm run test:coverage -- --ci --reporters="default" --reporters="jest-junit" || $(continue_on_error) - displayName: 'Run tests with coverage' - - task: PublishTestResults@2 - inputs: - testRunTitle: 'Linux with Node.js $(node_version)' - testResultsFiles: '**/junit.xml' - condition: succeededOrFailed() - displayName: 'Publish test results' - - script: curl -s https://codecov.io/bash | bash -s -- -t $(CODECOV_TOKEN) - condition: succeededOrFailed() - displayName: 'Submit coverage data to codecov' - - - job: Windows - pool: - vmImage: windows-2019 - strategy: - maxParallel: 4 - matrix: - node-12: - node_version: ^12.0.0 - webpack_version: latest - node-10: - node_version: ^10.13.0 - webpack_version: latest - node-8: - node_version: ^8.9.0 - webpack_version: latest - node-8-canary: - node_version: ^8.9.0 - webpack_version: next - continue_on_error: true - steps: - - script: 'git config --global core.autocrlf input' - displayName: 'Config git core.autocrlf' - - checkout: self - - task: NodeTool@0 - inputs: - versionSpec: $(node_version) - displayName: 'Install Node.js $(node_version)' - - task: Npm@1 - inputs: - command: custom - customCommand: i -g npm@latest - displayName: 'Install latest NPM' - - script: | - node -v - npm -v - displayName: 'Print versions' - - task: Npm@1 - inputs: - command: custom - customCommand: ci - displayName: 'Install dependencies' - - script: npm i webpack@$(webpack_version) - displayName: 'Install "webpack@$(webpack_version)"' - - script: npm run test:coverage -- --ci --reporters="default" --reporters="jest-junit" || $(continue_on_error) - displayName: 'Run tests with coverage' - - task: PublishTestResults@2 - inputs: - testRunTitle: 'Linux with Node.js $(node_version)' - testResultsFiles: '**/junit.xml' - condition: succeededOrFailed() - displayName: 'Publish test results' - - script: curl -s https://codecov.io/bash | bash -s -- -t $(CODECOV_TOKEN) - condition: succeededOrFailed() - displayName: 'Submit coverage data to codecov' 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 77a86a71..30108433 100644 --- a/lint-staged.config.js +++ b/lint-staged.config.js @@ -1,4 +1,7 @@ module.exports = { - '*.js': ['prettier --write', 'eslint --fix', 'git add'], - '*.{json,md,yml,css}': ['prettier --write', 'git add'], + "*": [ + "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 5df23e9e..1e6d0364 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12720 +1,21378 @@ { "name": "css-loader", - "version": "3.2.0", - "lockfileVersion": 1, + "version": "7.1.2", + "lockfileVersion": 3, "requires": true, - "dependencies": { - "@babel/cli": { - "version": "7.5.5", - "resolved": "https://registry.npmjs.org/@babel/cli/-/cli-7.5.5.tgz", - "integrity": "sha512-UHI+7pHv/tk9g6WXQKYz+kmXTI77YtuY3vqC59KIqcoWEjsJJSG6rAxKaLsgj3LDyadsPrCB929gVOKM6Hui0w==", - "dev": true, - "requires": { - "chokidar": "^2.0.4", - "commander": "^2.8.1", - "convert-source-map": "^1.1.0", - "fs-readdir-recursive": "^1.1.0", - "glob": "^7.0.0", - "lodash": "^4.17.13", - "mkdirp": "^0.5.1", - "output-file-sync": "^2.0.0", - "slash": "^2.0.0", - "source-map": "^0.5.0" - }, - "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 + "packages": { + "": { + "name": "css-loader", + "version": "7.1.2", + "license": "MIT", + "dependencies": { + "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.5.5", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.5.5.tgz", - "integrity": "sha512-27d4lZoomVyo51VegxI20xZPuSHusqbQag/ztrBC7wegWoQ1nLREPVSKSW8byhTlzTKyNE4ifaTA6lCp7JjpFw==", + "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.0.0" - } + "license": "MIT" }, - "@babel/core": { - "version": "7.5.5", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.5.5.tgz", - "integrity": "sha512-i4qoSr2KTtce0DmkuuQBV4AuQgGPUcPXMr9L5MyYAtk06z068lQ10a4O009fe5OB/DfNV+h+qqT7ddNV8UnRjg==", + "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": { - "@babel/code-frame": "^7.5.5", - "@babel/generator": "^7.5.5", - "@babel/helpers": "^7.5.5", - "@babel/parser": "^7.5.5", - "@babel/template": "^7.4.4", - "@babel/traverse": "^7.5.5", - "@babel/types": "^7.5.5", - "convert-source-map": "^1.1.0", - "debug": "^4.1.0", - "json5": "^2.1.0", - "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" - } - }, - "json5": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.1.0.tgz", - "integrity": "sha512-8Mh9h6xViijj36g7Dxi+Y4S6hNGV96vcJZr/SrlHh1LR/pEn/8j/+qIBbs44YKl69Lrfctp4QD+AdWLTMqEZAQ==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "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 - }, - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true - } + "license": "Apache-2.0", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" } }, - "@babel/generator": { - "version": "7.5.5", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.5.5.tgz", - "integrity": "sha512-ETI/4vyTSxTzGnU2c49XHv2zhExkv9JHLTwDAFz85kmcwuShvYG2H08FwgIguQf4JC75CBnXAUM5PqeF4fj0nQ==", + "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, - "requires": { - "@babel/types": "^7.5.5", - "jsesc": "^2.5.1", - "lodash": "^4.17.13", - "source-map": "^0.5.0", - "trim-right": "^1.0.1" - }, + "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 - } + "@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" } }, - "@babel/helper-annotate-as-pure": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.0.0.tgz", - "integrity": "sha512-3UYcJUj9kvSLbLbUIfQTqzcy5VX7GRZ/CCDrnOaZorFFM01aXp1+GJwuFGV4NDDoAS+mOUyHcO6UD/RfqOks3Q==", + "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, - "requires": { - "@babel/types": "^7.0.0" + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "engines": { + "node": ">=18" } }, - "@babel/helper-builder-binary-assignment-operator-visitor": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.1.0.tgz", - "integrity": "sha512-qNSR4jrmJ8M1VMM9tibvyRAHXQs2PmaksQF7c1CGJNipfe3D8p+wgNwgso/P2A2r2mdgBWAXljNWR0QRZAMW8w==", + "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, - "requires": { - "@babel/helper-explode-assignable-expression": "^7.1.0", - "@babel/types": "^7.0.0" + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "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" } }, - "@babel/helper-call-delegate": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/helper-call-delegate/-/helper-call-delegate-7.4.4.tgz", - "integrity": "sha512-l79boDFJ8S1c5hvQvG+rc+wHw6IuH7YldmRKsYtpbawsxURu/paVy57FZMomGK22/JckepaikOkY0MoAmdyOlQ==", + "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, - "requires": { - "@babel/helper-hoist-variables": "^7.4.4", - "@babel/traverse": "^7.4.4", - "@babel/types": "^7.4.4" + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "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" } }, - "@babel/helper-define-map": { - "version": "7.5.5", - "resolved": "https://registry.npmjs.org/@babel/helper-define-map/-/helper-define-map-7.5.5.tgz", - "integrity": "sha512-fTfxx7i0B5NJqvUOBBGREnrqbTxRh7zinBANpZXAVDlsZxYdclDp467G1sQ8VZYMnAURY3RpBUAgOYT9GfzHBg==", + "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, - "requires": { - "@babel/helper-function-name": "^7.1.0", - "@babel/types": "^7.5.5", - "lodash": "^4.17.13" + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT", + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "@csstools/css-tokenizer": "^3.0.4" } }, - "@babel/helper-explode-assignable-expression": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.1.0.tgz", - "integrity": "sha512-NRQpfHrJ1msCHtKjbzs9YcMmJZOg6mQMmGRB+hbamEdG5PNpaSm95275VD92DvJKuyl0s2sFiDmMZ+EnnvufqA==", + "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, - "requires": { - "@babel/traverse": "^7.1.0", - "@babel/types": "^7.0.0" + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT", + "engines": { + "node": ">=18" } }, - "@babel/helper-function-name": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.1.0.tgz", - "integrity": "sha512-A95XEoCpb3TO+KZzJ4S/5uW5fNe26DjBGqf1o9ucyLyCmi1dXq/B3c8iaWTfBk3VvetUxl16e8tIrd5teOCfGw==", + "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/helper-get-function-arity": "^7.0.0", - "@babel/template": "^7.1.0", - "@babel/types": "^7.0.0" - } + "license": "ISC" }, - "@babel/helper-get-function-arity": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0.tgz", - "integrity": "sha512-r2DbJeg4svYvt3HOS74U4eWKsUAMRH01Z1ds1zx8KNTPtpTL5JAsdFv8BNyOpVqdFhHkkRDIg5B4AsxmkjAlmQ==", + "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, - "requires": { - "@babel/types": "^7.0.0" + "license": "MIT", + "dependencies": { + "@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-hoist-variables": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.4.4.tgz", - "integrity": "sha512-VYk2/H/BnYbZDDg39hr3t2kKyifAm1W6zHRfhx8jGjIHpQEBv9dry7oQ2f3+J703TLu69nYdxsovl0XYfcnK4w==", + "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.4.4" + "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-member-expression-to-functions": { - "version": "7.5.5", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.5.5.tgz", - "integrity": "sha512-5qZ3D1uMclSNqYcXqiHoA0meVdv+xUEex9em2fqMnrk/scphGlGgg66zjMrPJESPwrFJ6sbfFQYUSa0Mz7FabA==", + "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/types": "^7.5.5" + "license": "MIT", + "engines": { + "node": ">=6.9.0" } }, - "@babel/helper-module-imports": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.0.0.tgz", - "integrity": "sha512-aP/hlLq01DWNEiDg4Jn23i+CXxW/owM4WpDLFUbpjxe4NS3BhLVZQ5i7E0ZrxuQ/vwekIeciyamgB1UIYxxM6A==", + "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/types": "^7.0.0" + "license": "MIT", + "dependencies": { + "@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-module-transforms": { - "version": "7.5.5", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.5.5.tgz", - "integrity": "sha512-jBeCvETKuJqeiaCdyaheF40aXnnU1+wkSiUs/IQg3tB85up1LyL8x77ClY8qJpuRJUcXQo+ZtdNESmZl4j56Pw==", + "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-module-imports": "^7.0.0", - "@babel/helper-simple-access": "^7.1.0", - "@babel/helper-split-export-declaration": "^7.4.4", - "@babel/template": "^7.4.4", - "@babel/types": "^7.5.5", - "lodash": "^4.17.13" + "license": "ISC", + "bin": { + "semver": "bin/semver.js" } }, - "@babel/helper-optimise-call-expression": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.0.0.tgz", - "integrity": "sha512-u8nd9NQePYNQV8iPWu/pLLYBqZBa4ZaY1YWRFMuxrid94wKI1QNt67NEZ7GAe5Kc/0LLScbim05xZFWkAdrj9g==", + "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/types": "^7.0.0" + "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-plugin-utils": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.0.0.tgz", - "integrity": "sha512-CYAOUCARwExnEixLdB6sDm2dIJ/YgEAKDM1MOeMeZu9Ld/bDgVo8aiWrXwcY7OBh+1Ea2uUcVRcxKk0GJvW7QA==", - "dev": true - }, - "@babel/helper-regex": { - "version": "7.5.5", - "resolved": "https://registry.npmjs.org/@babel/helper-regex/-/helper-regex-7.5.5.tgz", - "integrity": "sha512-CkCYQLkfkiugbRDO8eZn6lRuR8kzZoGXCg3149iTk5se7g6qykSpy3+hELSwquhu+TgHn8nkLiBwHvNX8Hofcw==", + "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": { - "lodash": "^4.17.13" + "license": "MIT", + "dependencies": { + "@babel/types": "^7.27.3" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/helper-remap-async-to-generator": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.1.0.tgz", - "integrity": "sha512-3fOK0L+Fdlg8S5al8u/hWE6vhufGSn0bN09xm2LXMy//REAF8kDCrYoOBKYmA8m5Nom+sV9LyLCwrFynA8/slg==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.0.0", - "@babel/helper-wrap-function": "^7.1.0", - "@babel/template": "^7.1.0", - "@babel/traverse": "^7.1.0", - "@babel/types": "^7.0.0" + "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, + "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-replace-supers": { - "version": "7.5.5", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.5.5.tgz", - "integrity": "sha512-XvRFWrNnlsow2u7jXDuH4jDDctkxbS7gXssrP4q2nUD606ukXHRvydj346wmNg+zAgpFx4MWf4+usfC93bElJg==", + "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/helper-member-expression-to-functions": "^7.5.5", - "@babel/helper-optimise-call-expression": "^7.0.0", - "@babel/traverse": "^7.5.5", - "@babel/types": "^7.5.5" + "license": "ISC", + "bin": { + "semver": "bin/semver.js" } }, - "@babel/helper-simple-access": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.1.0.tgz", - "integrity": "sha512-Vk+78hNjRbsiu49zAPALxTb+JUQCz1aolpd8osOF16BGnLtseD21nbHgLPGUwrXEurZgiCOUmvs3ExTu4F5x6w==", + "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/template": "^7.1.0", - "@babel/types": "^7.0.0" + "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-split-export-declaration": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.4.4.tgz", - "integrity": "sha512-Ro/XkzLf3JFITkW6b+hNxzZ1n5OQ80NvIUdmHspih1XAhtN3vPTuUFT4eQnela+2MaZ5ulH+iyP513KJrxbN7Q==", + "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.4.4" + "license": "ISC", + "bin": { + "semver": "bin/semver.js" } }, - "@babel/helper-wrap-function": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.2.0.tgz", - "integrity": "sha512-o9fP1BZLLSrYlxYEYyl2aS+Flun5gtjTIG8iln+XuEzQTs0PLagAGSXUcqruJwD5fM48jzIEggCKpIfWTcR7pQ==", + "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/helper-function-name": "^7.1.0", - "@babel/template": "^7.1.0", - "@babel/traverse": "^7.1.0", - "@babel/types": "^7.2.0" + "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/helpers": { - "version": "7.5.5", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.5.5.tgz", - "integrity": "sha512-nRq2BUhxZFnfEn/ciJuhklHvFOqjJUD5wpx+1bxUF2axL9C+v4DE/dmp5sT2dKnpOs4orZWzpAZqlCy8QqE/7g==", + "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/template": "^7.4.4", - "@babel/traverse": "^7.5.5", - "@babel/types": "^7.5.5" + "license": "ISC", + "bin": { + "semver": "bin/semver.js" } }, - "@babel/highlight": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.5.0.tgz", - "integrity": "sha512-7dV4eu9gBxoM0dAnj/BCFDW9LFU0zvTrkq0ugM7pnHEgguOEeOz1so2ZghEdzviYzQEED0r4EAgpsBChKy1TRQ==", + "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": { - "chalk": "^2.0.0", - "esutils": "^2.0.2", - "js-tokens": "^4.0.0" + "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/parser": { - "version": "7.5.5", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.5.5.tgz", - "integrity": "sha512-E5BN68cqR7dhKan1SfqgPGhQ178bkVKpXTPEXnFJBrEt8/DKRZlybmy+IgYLTeN7tp1R5Ccmbm2rBk17sHYU3g==", - "dev": true - }, - "@babel/plugin-proposal-async-generator-functions": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.2.0.tgz", - "integrity": "sha512-+Dfo/SCQqrwx48ptLVGLdE39YtWRuKc/Y9I5Fy0P1DDBB9lsAHpjcEJQt+4IifuSOSTLBKJObJqMvaO1pIE8LQ==", + "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, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-remap-async-to-generator": "^7.1.0", - "@babel/plugin-syntax-async-generators": "^7.2.0" + "license": "MIT", + "dependencies": { + "@babel/traverse": "^7.27.1", + "@babel/types": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/plugin-proposal-dynamic-import": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.5.0.tgz", - "integrity": "sha512-x/iMjggsKTFHYC6g11PL7Qy58IK8H5zqfm9e6hu4z1iH2IRyAp9u9dL80zA6R76yFovETFLKz2VJIC2iIPBuFw==", + "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": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-syntax-dynamic-import": "^7.2.0" + "license": "MIT", + "dependencies": { + "@babel/traverse": "^7.27.1", + "@babel/types": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/plugin-proposal-json-strings": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.2.0.tgz", - "integrity": "sha512-MAFV1CA/YVmYwZG0fBQyXhmj0BHCB5egZHCKWIFVv/XCxAeVGIHfos3SwDck4LvCllENIAg7xMKOG5kH0dzyUg==", + "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-plugin-utils": "^7.0.0", - "@babel/plugin-syntax-json-strings": "^7.2.0" + "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/plugin-proposal-object-rest-spread": { - "version": "7.5.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.5.5.tgz", - "integrity": "sha512-F2DxJJSQ7f64FyTVl5cw/9MWn6naXGdk3Q3UhDbFEEHv+EilCPoeRD3Zh/Utx1CJz4uyKlQ4uH+bJPbEhMV7Zw==", + "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-plugin-utils": "^7.0.0", - "@babel/plugin-syntax-object-rest-spread": "^7.2.0" + "license": "MIT", + "dependencies": { + "@babel/types": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/plugin-proposal-optional-catch-binding": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.2.0.tgz", - "integrity": "sha512-mgYj3jCcxug6KUcX4OBoOJz3CMrwRfQELPQ5560F70YQUBZB7uac9fqaWamKR1iWUzGiK2t0ygzjTScZnVz75g==", + "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/helper-plugin-utils": "^7.0.0", - "@babel/plugin-syntax-optional-catch-binding": "^7.2.0" + "license": "MIT", + "engines": { + "node": ">=6.9.0" } }, - "@babel/plugin-proposal-unicode-property-regex": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.4.4.tgz", - "integrity": "sha512-j1NwnOqMG9mFUOH58JTFsA/+ZYzQLUZ/drqWUqxCYLGeu2JFZL8YrNC9hBxKmWtAuOCHPcRpgv7fhap09Fb4kA==", + "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/helper-plugin-utils": "^7.0.0", - "@babel/helper-regex": "^7.4.4", - "regexpu-core": "^4.5.4" + "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/plugin-syntax-async-generators": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.2.0.tgz", - "integrity": "sha512-1ZrIRBv2t0GSlcwVoQ6VgSLpLgiN/FVQUzt9znxo7v2Ov4jJrs8RY8tv0wvDmFN3qIdMKWrmMMW6yZ0G19MfGg==", + "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, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0" + "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/plugin-syntax-dynamic-import": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.2.0.tgz", - "integrity": "sha512-mVxuJ0YroI/h/tbFTPGZR8cv6ai+STMKNBq0f8hFxsxWjl94qqhsb+wXbpNMDPU3cfR1TIsVFzU3nXyZMqyK4w==", + "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-plugin-utils": "^7.0.0" + "license": "MIT", + "dependencies": { + "@babel/traverse": "^7.27.1", + "@babel/types": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/plugin-syntax-json-strings": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.2.0.tgz", - "integrity": "sha512-5UGYnMSLRE1dqqZwug+1LISpA403HzlSfsg6P9VXU6TBjcSHeNlw4DxDx7LgpF+iKZoOG/+uzqoRHTdcUpiZNg==", + "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/helper-plugin-utils": "^7.0.0" + "license": "MIT", + "engines": { + "node": ">=6.9.0" } }, - "@babel/plugin-syntax-object-rest-spread": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.2.0.tgz", - "integrity": "sha512-t0JKGgqk2We+9may3t0xDdmneaXmyxq0xieYcKHxIsrJO64n1OiMWNUtc5gQK1PA0NpdCRrtZp4z+IUaKugrSA==", + "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-plugin-utils": "^7.0.0" + "license": "MIT", + "engines": { + "node": ">=6.9.0" } }, - "@babel/plugin-syntax-optional-catch-binding": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.2.0.tgz", - "integrity": "sha512-bDe4xKNhb0LI7IvZHiA13kff0KEfaGX/Hv4lMA9+7TEc63hMNvfKo6ZFpXhKuEp+II/q35Gc4NoMeDZyaUbj9w==", + "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, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0" + "license": "MIT", + "engines": { + "node": ">=6.9.0" } }, - "@babel/plugin-transform-arrow-functions": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.2.0.tgz", - "integrity": "sha512-ER77Cax1+8/8jCB9fo4Ud161OZzWN5qawi4GusDuRLcDbDG+bIGYY20zb2dfAFdTRGzrfq2xZPvF0R64EHnimg==", + "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.0.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-transform-async-to-generator": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.5.0.tgz", - "integrity": "sha512-mqvkzwIGkq0bEF1zLRRiTdjfomZJDV33AH3oQzHVGkI2VzEmXLpKKOBvEVaFZBJdN0XTyH38s9j/Kiqr68dggg==", + "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-module-imports": "^7.0.0", - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-remap-async-to-generator": "^7.1.0" + "license": "MIT", + "dependencies": { + "@babel/template": "^7.27.2", + "@babel/types": "^7.27.6" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/plugin-transform-block-scoped-functions": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.2.0.tgz", - "integrity": "sha512-ntQPR6q1/NKuphly49+QiQiTN0O63uOwjdD6dhIjSWBI5xlrbUFh720TIpzBhpnrLfv2tNH/BXvLIab1+BAI0w==", + "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.0.0" + "license": "MIT", + "dependencies": { + "@babel/types": "^7.27.3" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" } }, - "@babel/plugin-transform-block-scoping": { - "version": "7.5.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.5.5.tgz", - "integrity": "sha512-82A3CLRRdYubkG85lKwhZB0WZoHxLGsJdux/cOVaJCJpvYFl1LVzAIFyRsa7CvXqW8rBM4Zf3Bfn8PHt5DP0Sg==", + "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.0.0", - "lodash": "^4.17.13" + "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-transform-classes": { - "version": "7.5.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.5.5.tgz", - "integrity": "sha512-U2htCNK/6e9K7jGyJ++1p5XRU+LJjrwtoiVn9SzRlDT2KubcZ11OOwy3s24TjHxPgxNwonCYP7U2K51uVYCMDg==", + "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-annotate-as-pure": "^7.0.0", - "@babel/helper-define-map": "^7.5.5", - "@babel/helper-function-name": "^7.1.0", - "@babel/helper-optimise-call-expression": "^7.0.0", - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-replace-supers": "^7.5.5", - "@babel/helper-split-export-declaration": "^7.4.4", - "globals": "^11.1.0" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "@babel/plugin-transform-computed-properties": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.2.0.tgz", - "integrity": "sha512-kP/drqTxY6Xt3NNpKiMomfgkNn4o7+vKxK2DDKcBG9sHj51vHqMBGy8wbDS/J4lMxnqs153/T3+DmCEAkC5cpA==", + "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.0.0" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "@babel/plugin-transform-destructuring": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.5.0.tgz", - "integrity": "sha512-YbYgbd3TryYYLGyC7ZR+Tq8H/+bCmwoaxHfJHupom5ECstzbRLTch6gOQbhEY9Z4hiCNHEURgq06ykFv9JZ/QQ==", + "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.0.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-transform-dotall-regex": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.4.4.tgz", - "integrity": "sha512-P05YEhRc2h53lZDjRPk/OektxCVevFzZs2Gfjd545Wde3k+yFDbXORgl2e0xpbq8mLcKJ7Idss4fAg0zORN/zg==", + "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.0.0", - "@babel/helper-regex": "^7.4.4", - "regexpu-core": "^4.5.4" + "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-transform-duplicate-keys": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.5.0.tgz", - "integrity": "sha512-igcziksHizyQPlX9gfSjHkE2wmoCH3evvD2qR5w29/Dk0SMKE/eOI7f1HhBdNhR/zxJDqrgpoDTq5YSLH/XMsQ==", + "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-plugin-utils": "^7.0.0" + "license": "MIT", + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-exponentiation-operator": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.2.0.tgz", - "integrity": "sha512-umh4hR6N7mu4Elq9GG8TOu9M0bakvlsREEC+ialrQN6ABS4oDQ69qJv1VtR3uxlKMCQMCvzk7vr17RHKcjx68A==", + "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": { - "@babel/helper-builder-binary-assignment-operator-visitor": "^7.1.0", - "@babel/helper-plugin-utils": "^7.0.0" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-for-of": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.4.4.tgz", - "integrity": "sha512-9T/5Dlr14Z9TIEXLXkt8T1DU7F24cbhwhMNUziN3hB1AXoZcdzPcTiKGRn/6iOymDqtTKWnr/BtRKN9JwbKtdQ==", + "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": { - "@babel/helper-plugin-utils": "^7.0.0" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-function-name": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.4.4.tgz", - "integrity": "sha512-iU9pv7U+2jC9ANQkKeNF6DrPy4GBa4NWQtl6dHB4Pb3izX2JOEvDTFarlNsBj/63ZEzNNIAMs3Qw4fNCcSOXJA==", + "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-function-name": "^7.1.0", - "@babel/helper-plugin-utils": "^7.0.0" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-literals": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.2.0.tgz", - "integrity": "sha512-2ThDhm4lI4oV7fVQ6pNNK+sx+c/GM5/SaML0w/r4ZB7sAneD/piDJtwdKlNckXeyGK7wlwg2E2w33C/Hh+VFCg==", + "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.0.0" + "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-member-expression-literals": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.2.0.tgz", - "integrity": "sha512-HiU3zKkSU6scTidmnFJ0bMX8hz5ixC93b4MHMiYebmk2lUVNGOboPsqQvx5LzooihijUoLR/v7Nc1rbBtnc7FA==", + "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, - "requires": { - "@babel/helper-plugin-utils": "^7.0.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-amd": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.5.0.tgz", - "integrity": "sha512-n20UsQMKnWrltocZZm24cRURxQnWIvsABPJlw/fvoy9c6AgHZzoelAIzajDHAQrDpuKFFPPcFGd7ChsYuIUMpg==", + "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, - "requires": { - "@babel/helper-module-transforms": "^7.1.0", - "@babel/helper-plugin-utils": "^7.0.0", - "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.5.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.5.0.tgz", - "integrity": "sha512-xmHq0B+ytyrWJvQTc5OWAC4ii6Dhr0s22STOoydokG51JjWhyYo5mRPXoi+ZmtHQhZZwuXNN+GG5jy5UZZJxIQ==", + "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, - "requires": { - "@babel/helper-module-transforms": "^7.4.4", - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-simple-access": "^7.1.0", - "babel-plugin-dynamic-import-node": "^2.3.0" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-modules-systemjs": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.5.0.tgz", - "integrity": "sha512-Q2m56tyoQWmuNGxEtUyeEkm6qJYFqs4c+XyXH5RAuYxObRNz9Zgj/1g2GMnjYp2EUyEy7YTrxliGCXzecl/vJg==", + "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": { - "@babel/helper-hoist-variables": "^7.4.4", - "@babel/helper-plugin-utils": "^7.0.0", - "babel-plugin-dynamic-import-node": "^2.3.0" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-modules-umd": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.2.0.tgz", - "integrity": "sha512-BV3bw6MyUH1iIsGhXlOK6sXhmSarZjtJ/vMiD9dNmpY8QXFFQTj+6v92pcfy1iqa8DeAfJFwoxcrS/TUZda6sw==", + "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, - "requires": { - "@babel/helper-module-transforms": "^7.1.0", - "@babel/helper-plugin-utils": "^7.0.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-named-capturing-groups-regex": { - "version": "7.4.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.4.5.tgz", - "integrity": "sha512-z7+2IsWafTBbjNsOxU/Iv5CvTJlr5w4+HGu1HovKYTtgJ362f7kBcQglkfmlspKKZ3bgrbSGvLfNx++ZJgCWsg==", + "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": { - "regexp-tree": "^0.1.6" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-new-target": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.4.4.tgz", - "integrity": "sha512-r1z3T2DNGQwwe2vPGZMBNjioT2scgWzK9BCnDEh+46z8EEwXBq24uRzd65I7pjtugzPSj921aM15RpESgzsSuA==", + "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": { - "@babel/helper-plugin-utils": "^7.0.0" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-object-super": { - "version": "7.5.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.5.5.tgz", - "integrity": "sha512-un1zJQAhSosGFBduPgN/YFNvWVpRuHKU7IHBglLoLZsGmruJPOo6pbInneflUdmq7YvSVqhpPs5zdBvLnteltQ==", + "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.0.0", - "@babel/helper-replace-supers": "^7.5.5" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-parameters": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.4.4.tgz", - "integrity": "sha512-oMh5DUO1V63nZcu/ZVLQFqiihBGo4OpxJxR1otF50GMeCLiRx5nUdtokd+u9SuVJrvvuIh9OosRFPP4pIPnwmw==", + "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": { - "@babel/helper-call-delegate": "^7.4.4", - "@babel/helper-get-function-arity": "^7.0.0", - "@babel/helper-plugin-utils": "^7.0.0" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-property-literals": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.2.0.tgz", - "integrity": "sha512-9q7Dbk4RhgcLp8ebduOpCbtjh7C0itoLYHXd9ueASKAG/is5PQtMR5VJGka9NKqGhYEGn5ITahd4h9QeBMylWQ==", + "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": { - "@babel/helper-plugin-utils": "^7.0.0" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-regenerator": { - "version": "7.4.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.4.5.tgz", - "integrity": "sha512-gBKRh5qAaCWntnd09S8QC7r3auLCqq5DI6O0DlfoyDjslSBVqBibrMdsqO+Uhmx3+BlOmE/Kw1HFxmGbv0N9dA==", + "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": { - "regenerator-transform": "^0.14.0" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-reserved-words": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.2.0.tgz", - "integrity": "sha512-fz43fqW8E1tAB3DKF19/vxbpib1fuyCwSPE418ge5ZxILnBhWyhtPgz8eh1RCGGJlwvksHkyxMxh0eenFi+kFw==", + "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.0.0" + "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-shorthand-properties": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.2.0.tgz", - "integrity": "sha512-QP4eUM83ha9zmYtpbnyjTLAGKQritA5XW/iG9cjtuOI8s1RuL/3V6a3DeSHfKutJQ+ayUfeZJPcnCYEQzaPQqg==", + "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.0.0" + "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-spread": { - "version": "7.2.2", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.2.2.tgz", - "integrity": "sha512-KWfky/58vubwtS0hLqEnrWJjsMGaOeSBn90Ezn5Jeg9Z8KKHmELbP1yGylMlm5N6TPKeY9A2+UaSYLdxahg01w==", + "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-plugin-utils": "^7.0.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-sticky-regex": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.2.0.tgz", - "integrity": "sha512-KKYCoGaRAf+ckH8gEL3JHUaFVyNHKe3ASNsZ+AlktgHevvxGigoIttrEJb8iKN03Q7Eazlv1s6cx2B2cQ3Jabw==", + "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.0.0", - "@babel/helper-regex": "^7.0.0" + "license": "MIT", + "dependencies": { + "@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-template-literals": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.4.4.tgz", - "integrity": "sha512-mQrEC4TWkhLN0z8ygIvEL9ZEToPhG5K7KDW3pzGqOfIGZ28Jb0POUkeWcoz8HnHvhFy6dwAT1j8OzqN8s804+g==", + "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-annotate-as-pure": "^7.0.0", - "@babel/helper-plugin-utils": "^7.0.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-typeof-symbol": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.2.0.tgz", - "integrity": "sha512-2LNhETWYxiYysBtrBTqL8+La0jIoQQnIScUJc74OYvUGRmkskNY4EzLCnjHBzdmb38wqtTaixpo1NctEcvMDZw==", + "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.0.0" + "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-unicode-regex": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.4.4.tgz", - "integrity": "sha512-il+/XdNw01i93+M9J9u4T7/e/Ue/vWfNZE4IRUQjplu2Mqb/AFTDimkw2tdEdSH50wuQXZAbXSql0UphQke+vA==", + "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-plugin-utils": "^7.0.0", - "@babel/helper-regex": "^7.4.4", - "regexpu-core": "^4.5.4" + "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/preset-env": { - "version": "7.5.5", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.5.5.tgz", - "integrity": "sha512-GMZQka/+INwsMz1A5UEql8tG015h5j/qjptpKY2gJ7giy8ohzU710YciJB5rcKsWGWHiW3RUnHib0E5/m3Tp3A==", - "dev": true, - "requires": { - "@babel/helper-module-imports": "^7.0.0", - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-proposal-async-generator-functions": "^7.2.0", - "@babel/plugin-proposal-dynamic-import": "^7.5.0", - "@babel/plugin-proposal-json-strings": "^7.2.0", - "@babel/plugin-proposal-object-rest-spread": "^7.5.5", - "@babel/plugin-proposal-optional-catch-binding": "^7.2.0", - "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", - "@babel/plugin-syntax-async-generators": "^7.2.0", - "@babel/plugin-syntax-dynamic-import": "^7.2.0", - "@babel/plugin-syntax-json-strings": "^7.2.0", - "@babel/plugin-syntax-object-rest-spread": "^7.2.0", - "@babel/plugin-syntax-optional-catch-binding": "^7.2.0", - "@babel/plugin-transform-arrow-functions": "^7.2.0", - "@babel/plugin-transform-async-to-generator": "^7.5.0", - "@babel/plugin-transform-block-scoped-functions": "^7.2.0", - "@babel/plugin-transform-block-scoping": "^7.5.5", - "@babel/plugin-transform-classes": "^7.5.5", - "@babel/plugin-transform-computed-properties": "^7.2.0", - "@babel/plugin-transform-destructuring": "^7.5.0", - "@babel/plugin-transform-dotall-regex": "^7.4.4", - "@babel/plugin-transform-duplicate-keys": "^7.5.0", - "@babel/plugin-transform-exponentiation-operator": "^7.2.0", - "@babel/plugin-transform-for-of": "^7.4.4", - "@babel/plugin-transform-function-name": "^7.4.4", - "@babel/plugin-transform-literals": "^7.2.0", - "@babel/plugin-transform-member-expression-literals": "^7.2.0", - "@babel/plugin-transform-modules-amd": "^7.5.0", - "@babel/plugin-transform-modules-commonjs": "^7.5.0", - "@babel/plugin-transform-modules-systemjs": "^7.5.0", - "@babel/plugin-transform-modules-umd": "^7.2.0", - "@babel/plugin-transform-named-capturing-groups-regex": "^7.4.5", - "@babel/plugin-transform-new-target": "^7.4.4", - "@babel/plugin-transform-object-super": "^7.5.5", - "@babel/plugin-transform-parameters": "^7.4.4", - "@babel/plugin-transform-property-literals": "^7.2.0", - "@babel/plugin-transform-regenerator": "^7.4.5", - "@babel/plugin-transform-reserved-words": "^7.2.0", - "@babel/plugin-transform-shorthand-properties": "^7.2.0", - "@babel/plugin-transform-spread": "^7.2.0", - "@babel/plugin-transform-sticky-regex": "^7.2.0", - "@babel/plugin-transform-template-literals": "^7.4.4", - "@babel/plugin-transform-typeof-symbol": "^7.2.0", - "@babel/plugin-transform-unicode-regex": "^7.4.4", - "@babel/types": "^7.5.5", - "browserslist": "^4.6.0", - "core-js-compat": "^3.1.1", - "invariant": "^2.2.2", - "js-levenshtein": "^1.1.3", - "semver": "^5.5.0" - } - }, - "@babel/template": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.4.4.tgz", - "integrity": "sha512-CiGzLN9KgAvgZsnivND7rkA+AeJ9JB0ciPOD4U59GKbQP2iQl+olF1l76kJOupqidozfZ32ghwBEJDhnk9MEcw==", + "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/code-frame": "^7.0.0", - "@babel/parser": "^7.4.4", - "@babel/types": "^7.4.4" - } - }, - "@babel/traverse": { - "version": "7.5.5", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.5.5.tgz", - "integrity": "sha512-MqB0782whsfffYfSjH4TM+LMjrJnhCNEDMDIjeTpl+ASaUvxcjoiVCo/sM1GhS1pHOXYfWVCYneLjMckuUxDaQ==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.5.5", - "@babel/generator": "^7.5.5", - "@babel/helper-function-name": "^7.1.0", - "@babel/helper-split-export-declaration": "^7.4.4", - "@babel/parser": "^7.5.5", - "@babel/types": "^7.5.5", - "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.5.5", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.5.5.tgz", - "integrity": "sha512-s63F9nJioLqOlW3UkyMd+BYhXt44YuaFm/VV0VwuteqjYwRrObkU7ra9pY4wAJR3oXi8hJrMcrcJdO/HH33vtw==", + "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": { - "esutils": "^2.0.2", - "lodash": "^4.17.13", - "to-fast-properties": "^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" } }, - "@cnakazawa/watch": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@cnakazawa/watch/-/watch-1.0.3.tgz", - "integrity": "sha512-r5160ogAvGyHsal38Kux7YYtodEKOj89RGb28ht1jh3SJb08VwRwAKKJL0bGb04Zd/3r9FL3BFIc3bBidYffCA==", + "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": { - "exec-sh": "^0.3.2", - "minimist": "^1.2.0" + "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/cli": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/@commitlint/cli/-/cli-8.1.0.tgz", - "integrity": "sha512-83K5C2nIAgoZlzMegf0/MEBjX+ampUyc/u79RxgX9ZYjzos+RQtNyO7I43dztVxPXSwAnX9XRgoOfkGWA4nbig==", - "dev": true, - "requires": { - "@commitlint/format": "^8.1.0", - "@commitlint/lint": "^8.1.0", - "@commitlint/load": "^8.1.0", - "@commitlint/read": "^8.1.0", - "babel-polyfill": "6.26.0", - "chalk": "2.3.1", - "get-stdin": "7.0.0", - "lodash": "4.17.14", - "meow": "5.0.0", - "resolve-from": "5.0.0", - "resolve-global": "1.0.0" - }, - "dependencies": { - "chalk": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.3.1.tgz", - "integrity": "sha512-QUU4ofkDoMIVO7hcx1iPTISs88wsO8jA92RQIm4JAwZvFGGAV2hSAA1NX7oVj2Ej2Q6NDTcRDjPTFrMCRZoJ6g==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.0", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.2.0" - } - }, - "lodash": { - "version": "4.17.14", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.14.tgz", - "integrity": "sha512-mmKYbW3GLuJeX+iGP+Y7Gp1AiGHGbXHCOh/jZmrawMmsE7MS4znI3RL2FsjbqOyMayHInjOeykW7PEajUk1/xw==", - "dev": true - }, - "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": { - "has-flag": "^3.0.0" - } - } + "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, + "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" } }, - "@commitlint/config-conventional": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/@commitlint/config-conventional/-/config-conventional-8.1.0.tgz", - "integrity": "sha512-/JY+FNBnrT91qzDVIoV1Buiigvj7Le7ezFw+oRqu0nYREX03k7xnaG/7t7rUSvm7hM6dnLSOlaUsevjgMI9AEw==", - "dev": true - }, - "@commitlint/ensure": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/@commitlint/ensure/-/ensure-8.1.0.tgz", - "integrity": "sha512-dBU4CcjN0vJSDNOeSpaHNgQ1ra444u4USvI6PTaHVAS4aeDpZ5Cds1rxkZNsocu48WNycUu0jP84+zjcw2pPLQ==", + "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": { - "lodash": "4.17.14" - }, + "license": "MIT", "dependencies": { - "lodash": { - "version": "4.17.14", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.14.tgz", - "integrity": "sha512-mmKYbW3GLuJeX+iGP+Y7Gp1AiGHGbXHCOh/jZmrawMmsE7MS4znI3RL2FsjbqOyMayHInjOeykW7PEajUk1/xw==", - "dev": true - } + "@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" } }, - "@commitlint/execute-rule": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/@commitlint/execute-rule/-/execute-rule-8.1.0.tgz", - "integrity": "sha512-+vpH3RFuO6ypuCqhP2rSqTjFTQ7ClzXtUvXphpROv9v9+7zH4L+Ex+wZLVkL8Xj2cxefSLn/5Kcqa9XyJTn3kg==", - "dev": true + "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, + "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" + } }, - "@commitlint/format": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/@commitlint/format/-/format-8.1.0.tgz", - "integrity": "sha512-D0cmabUTQIKdABgt08d9JAvO9+lMRAmkcsZx8TMScY502R67HCw77JhzRDcw1RmqX5rN8JO6ZjDHO92Pbwlt+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": { - "chalk": "^2.0.1" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@commitlint/is-ignored": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/@commitlint/is-ignored/-/is-ignored-8.1.0.tgz", - "integrity": "sha512-HUSxx6kuLbqrQ8jb5QRzo+yR+CIXgA9HNcIcZ1qWrb+O9GOixt3mlW8li1IcfIgfODlaWoxIz0jYCxR08IoQLg==", + "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": { - "@types/semver": "^6.0.1", - "semver": "6.1.1" + "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" + } + }, + "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, + "license": "MIT", "dependencies": { - "semver": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.1.1.tgz", - "integrity": "sha512-rWYq2e5iYW+fFe/oPPtYJxYgjBm8sC4rmoGdUOgBB7VnwKt6HrL793l2voH1UlsyYZpJ4g0wfjnTEO1s1NP2eQ==", - "dev": true - } + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@commitlint/lint": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/@commitlint/lint/-/lint-8.1.0.tgz", - "integrity": "sha512-WYjbUgtqvnlVH3S3XPZMAa+N7KO0yQ+GuUG20Qra+EtER6SRYawykmEs4wAyrmY8VcFXUnKgSlIQUsqmGKwNZQ==", - "dev": true, - "requires": { - "@commitlint/is-ignored": "^8.1.0", - "@commitlint/parse": "^8.1.0", - "@commitlint/rules": "^8.1.0", - "babel-runtime": "^6.23.0", - "lodash": "4.17.14" - }, - "dependencies": { - "lodash": { - "version": "4.17.14", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.14.tgz", - "integrity": "sha512-mmKYbW3GLuJeX+iGP+Y7Gp1AiGHGbXHCOh/jZmrawMmsE7MS4znI3RL2FsjbqOyMayHInjOeykW7PEajUk1/xw==", - "dev": true - } + "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, + "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/load": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/@commitlint/load/-/load-8.1.0.tgz", - "integrity": "sha512-ra02Dvmd7Gp1+uFLzTY3yGOpHjPzl5T9wYg/xrtPJNiOWXvQ0Mw7THw+ucd1M5iLUWjvdavv2N87YDRc428wHg==", - "dev": true, - "requires": { - "@commitlint/execute-rule": "^8.1.0", - "@commitlint/resolve-extends": "^8.1.0", - "babel-runtime": "^6.23.0", - "chalk": "2.4.2", - "cosmiconfig": "^5.2.0", - "lodash": "4.17.14", - "resolve-from": "^5.0.0" + "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, + "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-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, + "license": "MIT", "dependencies": { - "lodash": { - "version": "4.17.14", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.14.tgz", - "integrity": "sha512-mmKYbW3GLuJeX+iGP+Y7Gp1AiGHGbXHCOh/jZmrawMmsE7MS4znI3RL2FsjbqOyMayHInjOeykW7PEajUk1/xw==", - "dev": true - } + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@commitlint/message": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/@commitlint/message/-/message-8.1.0.tgz", - "integrity": "sha512-AjHq022G8jQQ/3YrBOjwVBD4xF75hvC3vcvFoBIb7cC8vad1QWq+1w+aks0KlEK5IW+/+7ORZXIH+oyW7h3+8A==", - "dev": true + "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, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } }, - "@commitlint/parse": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/@commitlint/parse/-/parse-8.1.0.tgz", - "integrity": "sha512-n4fEbZ5kdK5HChvne7Mj8rGGkKMfA4H11IuWiWmmMzgmZTNb/B04LPrzdUm4lm3f10XzM2JMM7PLXqofQJOGvA==", + "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": { - "conventional-changelog-angular": "^1.3.3", - "conventional-commits-parser": "^2.1.0", - "lodash": "^4.17.11" + "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/read": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/@commitlint/read/-/read-8.1.0.tgz", - "integrity": "sha512-PKsGMQFEr2sX/+orI71b82iyi8xFqb7F4cTvsLxzB5x6/QutxPVM3rg+tEVdi6rBKIDuqRIp2puDZQuREZs3vg==", + "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": { - "@commitlint/top-level": "^8.1.0", - "@marionebl/sander": "^0.6.0", - "babel-runtime": "^6.23.0", - "git-raw-commits": "^1.3.0" + "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" } }, - "@commitlint/resolve-extends": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/@commitlint/resolve-extends/-/resolve-extends-8.1.0.tgz", - "integrity": "sha512-r/y+CeKW72Oa9BUctS1+I/MFCDiI3lfhwfQ65Tpfn6eZ4CuBYKzrCRi++GTHeAFKE3y8q1epJq5Rl/1GBejtBw==", + "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": { - "@types/node": "^12.0.2", - "import-fresh": "^3.0.0", - "lodash": "4.17.14", - "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" + } + }, + "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, + "license": "MIT", "dependencies": { - "lodash": { - "version": "4.17.14", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.14.tgz", - "integrity": "sha512-mmKYbW3GLuJeX+iGP+Y7Gp1AiGHGbXHCOh/jZmrawMmsE7MS4znI3RL2FsjbqOyMayHInjOeykW7PEajUk1/xw==", - "dev": true - } + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@commitlint/rules": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/@commitlint/rules/-/rules-8.1.0.tgz", - "integrity": "sha512-hlM8VfNjsOkbvMteFyqn0c3akiUjqG09Iid28MBLrXl/d+8BR3eTzwJ4wMta4oz/iqGyrIywvg1FpHrV977MPA==", + "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": { - "@commitlint/ensure": "^8.1.0", - "@commitlint/message": "^8.1.0", - "@commitlint/to-lines": "^8.1.0", - "babel-runtime": "^6.23.0" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@commitlint/to-lines": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/@commitlint/to-lines/-/to-lines-8.1.0.tgz", - "integrity": "sha512-Lh4OH1bInI8GME/7FggS0/XkIMEJdTObMbXRyPRGaPcWH5S7zpB6y+b4qjzBHXAbEv2O46QAAMjZ+ywPQCpmYQ==", - "dev": true + "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, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } }, - "@commitlint/top-level": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/@commitlint/top-level/-/top-level-8.1.0.tgz", - "integrity": "sha512-EvQuofuA/+0l1w9pkG/PRyIwACmZdIh9qxyax7w7mR8qqmSHscqf2jARIylh1TOx0uI9egO8MuPLiwC1RwyREA==", + "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": { - "find-up": "^4.0.0" + "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" + } + }, + "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, + "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.2.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.0.tgz", - "integrity": "sha512-pZbTJpoUsCzV48Mc9Nh51VbwO0X9cuPFE8gYwx9BTCt9SF8/b7Zljd2fVgOxhIF/HDTKgpVzs+GPhyKfjLLFRQ==", - "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-module-transforms": "^7.27.1", + "@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 - }, - "@jest/console": { - "version": "24.7.1", - "resolved": "https://registry.npmjs.org/@jest/console/-/console-24.7.1.tgz", - "integrity": "sha512-iNhtIy2M8bXlAOULWVTUxmnelTLFneTNEkHCgPmgd+zNwy9zVddJ6oS5rZ9iwoscNdT5mMwUd0C51v/fSlzItg==", - "dev": true, - "requires": { - "@jest/source-map": "^24.3.0", - "chalk": "^2.0.1", - "slash": "^2.0.0" + "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, + "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" } }, - "@jest/core": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/@jest/core/-/core-24.8.0.tgz", - "integrity": "sha512-R9rhAJwCBQzaRnrRgAdVfnglUuATXdwTRsYqs6NMdVcAl5euG8LtWDe+fVkN27YfKVBW61IojVsXKaOmSnqd/A==", - "dev": true, - "requires": { - "@jest/console": "^24.7.1", - "@jest/reporters": "^24.8.0", - "@jest/test-result": "^24.8.0", - "@jest/transform": "^24.8.0", - "@jest/types": "^24.8.0", - "ansi-escapes": "^3.0.0", - "chalk": "^2.0.1", - "exit": "^0.1.2", - "graceful-fs": "^4.1.15", - "jest-changed-files": "^24.8.0", - "jest-config": "^24.8.0", - "jest-haste-map": "^24.8.0", - "jest-message-util": "^24.8.0", - "jest-regex-util": "^24.3.0", - "jest-resolve-dependencies": "^24.8.0", - "jest-runner": "^24.8.0", - "jest-runtime": "^24.8.0", - "jest-snapshot": "^24.8.0", - "jest-util": "^24.8.0", - "jest-validate": "^24.8.0", - "jest-watcher": "^24.8.0", - "micromatch": "^3.1.10", - "p-each-series": "^1.0.0", - "pirates": "^4.0.1", - "realpath-native": "^1.1.0", - "rimraf": "^2.5.4", - "strip-ansi": "^5.0.0" - }, - "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 - } + "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" } }, - "@jest/environment": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-24.8.0.tgz", - "integrity": "sha512-vlGt2HLg7qM+vtBrSkjDxk9K0YtRBi7HfRFaDxoRtyi+DyVChzhF20duvpdAnKVBV6W5tym8jm0U9EfXbDk1tw==", - "dev": true, - "requires": { - "@jest/fake-timers": "^24.8.0", - "@jest/transform": "^24.8.0", - "@jest/types": "^24.8.0", - "jest-mock": "^24.8.0" - } - }, - "@jest/fake-timers": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-24.8.0.tgz", - "integrity": "sha512-2M4d5MufVXwi6VzZhJ9f5S/wU4ud2ck0kxPof1Iz3zWx6Y+V2eJrES9jEktB6O3o/oEyk+il/uNu9PvASjWXQw==", - "dev": true, - "requires": { - "@jest/types": "^24.8.0", - "jest-message-util": "^24.8.0", - "jest-mock": "^24.8.0" - } - }, - "@jest/reporters": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-24.8.0.tgz", - "integrity": "sha512-eZ9TyUYpyIIXfYCrw0UHUWUvE35vx5I92HGMgS93Pv7du+GHIzl+/vh8Qj9MCWFK/4TqyttVBPakWMOfZRIfxw==", - "dev": true, - "requires": { - "@jest/environment": "^24.8.0", - "@jest/test-result": "^24.8.0", - "@jest/transform": "^24.8.0", - "@jest/types": "^24.8.0", - "chalk": "^2.0.1", - "exit": "^0.1.2", - "glob": "^7.1.2", - "istanbul-lib-coverage": "^2.0.2", - "istanbul-lib-instrument": "^3.0.1", - "istanbul-lib-report": "^2.0.4", - "istanbul-lib-source-maps": "^3.0.1", - "istanbul-reports": "^2.1.1", - "jest-haste-map": "^24.8.0", - "jest-resolve": "^24.8.0", - "jest-runtime": "^24.8.0", - "jest-util": "^24.8.0", - "jest-worker": "^24.6.0", - "node-notifier": "^5.2.1", - "slash": "^2.0.0", - "source-map": "^0.6.0", - "string-length": "^2.0.0" - } - }, - "@jest/source-map": { - "version": "24.3.0", - "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-24.3.0.tgz", - "integrity": "sha512-zALZt1t2ou8le/crCeeiRYzvdnTzaIlpOWaet45lNSqNJUnXbppUUFR4ZUAlzgDmKee4Q5P/tKXypI1RiHwgag==", - "dev": true, - "requires": { - "callsites": "^3.0.0", - "graceful-fs": "^4.1.15", - "source-map": "^0.6.0" + "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, + "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/test-result": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-24.8.0.tgz", - "integrity": "sha512-+YdLlxwizlfqkFDh7Mc7ONPQAhA4YylU1s529vVM1rsf67vGZH/2GGm5uO8QzPeVyaVMobCQ7FTxl38QrKRlng==", + "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": { - "@jest/console": "^24.7.1", - "@jest/types": "^24.8.0", - "@types/istanbul-lib-coverage": "^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" } }, - "@jest/test-sequencer": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-24.8.0.tgz", - "integrity": "sha512-OzL/2yHyPdCHXEzhoBuq37CE99nkme15eHkAzXRVqthreWZamEMA0WoetwstsQBCXABhczpK03JNbc4L01vvLg==", + "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": { - "@jest/test-result": "^24.8.0", - "jest-haste-map": "^24.8.0", - "jest-runner": "^24.8.0", - "jest-runtime": "^24.8.0" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@jest/transform": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-24.8.0.tgz", - "integrity": "sha512-xBMfFUP7TortCs0O+Xtez2W7Zu1PLH9bvJgtraN1CDST6LBM/eTOZ9SfwS/lvV8yOfcDpFmwf9bq5cYbXvqsvA==", + "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/core": "^7.1.0", - "@jest/types": "^24.8.0", - "babel-plugin-istanbul": "^5.1.0", - "chalk": "^2.0.1", - "convert-source-map": "^1.4.0", - "fast-json-stable-stringify": "^2.0.0", - "graceful-fs": "^4.1.15", - "jest-haste-map": "^24.8.0", - "jest-regex-util": "^24.3.0", - "jest-util": "^24.8.0", - "micromatch": "^3.1.10", - "realpath-native": "^1.1.0", - "slash": "^2.0.0", - "source-map": "^0.6.1", - "write-file-atomic": "2.4.1" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@jest/types": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-24.8.0.tgz", - "integrity": "sha512-g17UxVr2YfBtaMUxn9u/4+siG1ptg9IGYAYwvpwn61nBg779RXnjE/m7CxYcIzEt0AbHZZAHSEZNhkE2WxURVg==", + "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": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^1.1.1", - "@types/yargs": "^12.0.9" + "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" } }, - "@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/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": { - "graceful-fs": "^4.1.3", - "mkdirp": "^0.5.1", - "rimraf": "^2.5.2" + "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" } }, - "@nodelib/fs.scandir": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.1.tgz", - "integrity": "sha512-NT/skIZjgotDSiXs0WqYhgcuBKhUMgfekCmCGtkUAiLqZdOnrdjmZr9wRl3ll64J9NF79uZ4fk16Dx0yMc/Xbg==", + "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": { - "@nodelib/fs.stat": "2.0.1", - "run-parallel": "^1.1.9" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@nodelib/fs.stat": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.1.tgz", - "integrity": "sha512-+RqhBlLn6YRBGOIoVYthsG0J9dfpO79eJyN7BYBkZJtfqrBwf2KK+rD/M/yjZR6WBmIhAgOV7S60eCgaSWtbFw==", - "dev": true + "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, + "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" + } }, - "@nodelib/fs.walk": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.2.tgz", - "integrity": "sha512-J/DR3+W12uCzAJkw7niXDcqcKBg6+5G5Q/ZpThpGNzAUz70eOR6RV4XnnSN01qHZiVl0eavoxJsBypQoKsV2QQ==", + "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": { - "@nodelib/fs.scandir": "2.1.1", - "fastq": "^1.6.0" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@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/@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": { - "any-observable": "^0.3.0" + "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" } }, - "@types/babel__core": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.2.tgz", - "integrity": "sha512-cfCCrFmiGY/yq0NuKNxIQvZFy9kY/1immpSpTngOnyIbD4+eJOG5mxphhHDv3CHL9GltO4GcKr54kGBg3RNdbg==", + "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": { - "@babel/parser": "^7.1.0", - "@babel/types": "^7.0.0", - "@types/babel__generator": "*", - "@types/babel__template": "*", - "@types/babel__traverse": "*" + "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" } }, - "@types/babel__generator": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.0.2.tgz", - "integrity": "sha512-NHcOfab3Zw4q5sEE2COkpfXjoE7o+PmqD9DQW4koUT3roNxwziUdXGnRndMat/LJNUtePwn1TlP4do3uoe3KZQ==", + "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": { - "@babel/types": "^7.0.0" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@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/@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": { - "@babel/parser": "^7.1.0", - "@babel/types": "^7.0.0" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@types/babel__traverse": { - "version": "7.0.7", - "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.0.7.tgz", - "integrity": "sha512-CeBpmX1J8kWLcDEnI3Cl2Eo6RfbGvzUctA+CjZUhOKDFbLfcr7fc4usEqLNWetrlJd7RhAkyYe2czXop4fICpw==", + "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": { - "@babel/types": "^7.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" } }, - "@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 + "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, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } }, - "@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/@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": { - "@types/events": "*", - "@types/minimatch": "*", - "@types/node": "*" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@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 + "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, + "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" + } }, - "@types/istanbul-lib-report": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-1.1.1.tgz", - "integrity": "sha512-3BUTyMzbZa2DtDI2BkERNC6jJw2Mr2Y0oGI7mRxYNBPxppbtEK1F66u3bKwU2g+wxwWI7PAoRpJnOY1grJqzHg==", + "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": { - "@types/istanbul-lib-coverage": "*" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@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/@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": { - "@types/istanbul-lib-coverage": "*", - "@types/istanbul-lib-report": "*" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@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 + "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": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } }, - "@types/node": { - "version": "12.6.9", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.6.9.tgz", - "integrity": "sha512-+YB9FtyxXGyD54p8rXwWaN1EWEyar5L58GlGWgtH2I9rGmLGBQcw63+0jw+ujqVavNuO47S1ByAjm9zdHMnskw==", - "dev": true + "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": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } }, - "@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 + "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, + "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" + } }, - "@types/semver": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/@types/semver/-/semver-6.0.1.tgz", - "integrity": "sha512-ffCdcrEE5h8DqVxinQjo+2d1q+FV5z7iNtPofw3JsrltSoSVlOGaW0rY8XxtO9XukdTn8TaCGWmk2VFGhI70mg==", - "dev": true + "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, + "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" + } }, - "@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": "12.0.12", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-12.0.12.tgz", - "integrity": "sha512-SOhuU4wNBxhhTHxYaiG5NY4HBhDIDnJF60GU+2LqHAdKKer86//e4yg69aENCtQ04n0ovz+tq2YPME5t5yp4pw==", - "dev": true - }, - "@webassemblyjs/ast": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.8.5.tgz", - "integrity": "sha512-aJMfngIZ65+t71C3y2nBBg5FFG0Okt9m0XEgWZ7Ywgn1oMAT8cNwx00Uv1cQyHtidq0Xn94R4TAywO+LCQ+ZAQ==", - "dev": true, - "requires": { - "@webassemblyjs/helper-module-context": "1.8.5", - "@webassemblyjs/helper-wasm-bytecode": "1.8.5", - "@webassemblyjs/wast-parser": "1.8.5" - } - }, - "@webassemblyjs/floating-point-hex-parser": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.8.5.tgz", - "integrity": "sha512-9p+79WHru1oqBh9ewP9zW95E3XAo+90oth7S5Re3eQnECGq59ly1Ri5tsIipKGpiStHsUYmY3zMLqtk3gTcOtQ==", - "dev": true - }, - "@webassemblyjs/helper-api-error": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.8.5.tgz", - "integrity": "sha512-Za/tnzsvnqdaSPOUXHyKJ2XI7PDX64kWtURyGiJJZKVEdFOsdKUCPTNEVFZq3zJ2R0G5wc2PZ5gvdTRFgm81zA==", - "dev": true - }, - "@webassemblyjs/helper-buffer": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.8.5.tgz", - "integrity": "sha512-Ri2R8nOS0U6G49Q86goFIPNgjyl6+oE1abW1pS84BuhP1Qcr5JqMwRFT3Ah3ADDDYGEgGs1iyb1DGX+kAi/c/Q==", - "dev": true - }, - "@webassemblyjs/helper-code-frame": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.8.5.tgz", - "integrity": "sha512-VQAadSubZIhNpH46IR3yWO4kZZjMxN1opDrzePLdVKAZ+DFjkGD/rf4v1jap744uPVU6yjL/smZbRIIJTOUnKQ==", - "dev": true, - "requires": { - "@webassemblyjs/wast-printer": "1.8.5" - } - }, - "@webassemblyjs/helper-fsm": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.8.5.tgz", - "integrity": "sha512-kRuX/saORcg8se/ft6Q2UbRpZwP4y7YrWsLXPbbmtepKr22i8Z4O3V5QE9DbZK908dh5Xya4Un57SDIKwB9eow==", - "dev": true - }, - "@webassemblyjs/helper-module-context": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.8.5.tgz", - "integrity": "sha512-/O1B236mN7UNEU4t9X7Pj38i4VoU8CcMHyy3l2cV/kIF4U5KoHXDVqcDuOs1ltkac90IM4vZdHc52t1x8Yfs3g==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.8.5", - "mamacro": "^0.0.3" - } - }, - "@webassemblyjs/helper-wasm-bytecode": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.8.5.tgz", - "integrity": "sha512-Cu4YMYG3Ddl72CbmpjU/wbP6SACcOPVbHN1dI4VJNJVgFwaKf1ppeFJrwydOG3NDHxVGuCfPlLZNyEdIYlQ6QQ==", - "dev": true - }, - "@webassemblyjs/helper-wasm-section": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.8.5.tgz", - "integrity": "sha512-VV083zwR+VTrIWWtgIUpqfvVdK4ff38loRmrdDBgBT8ADXYsEZ5mPQ4Nde90N3UYatHdYoDIFb7oHzMncI02tA==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/helper-buffer": "1.8.5", - "@webassemblyjs/helper-wasm-bytecode": "1.8.5", - "@webassemblyjs/wasm-gen": "1.8.5" - } - }, - "@webassemblyjs/ieee754": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.8.5.tgz", - "integrity": "sha512-aaCvQYrvKbY/n6wKHb/ylAJr27GglahUO89CcGXMItrOBqRarUMxWLJgxm9PJNuKULwN5n1csT9bYoMeZOGF3g==", - "dev": true, - "requires": { - "@xtuc/ieee754": "^1.2.0" + "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, + "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" } }, - "@webassemblyjs/leb128": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.8.5.tgz", - "integrity": "sha512-plYUuUwleLIziknvlP8VpTgO4kqNaH57Y3JnNa6DLpu/sGcP6hbVdfdX5aHAV716pQBKrfuU26BJK29qY37J7A==", + "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": { - "@xtuc/long": "4.2.2" + "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" } }, - "@webassemblyjs/utf8": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.8.5.tgz", - "integrity": "sha512-U7zgftmQriw37tfD934UNInokz6yTmn29inT2cAetAsaU9YeVCveWEwhKL1Mg4yS7q//NGdzy79nlXh3bT8Kjw==", - "dev": true - }, - "@webassemblyjs/wasm-edit": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.8.5.tgz", - "integrity": "sha512-A41EMy8MWw5yvqj7MQzkDjU29K7UJq1VrX2vWLzfpRHt3ISftOXqrtojn7nlPsZ9Ijhp5NwuODuycSvfAO/26Q==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/helper-buffer": "1.8.5", - "@webassemblyjs/helper-wasm-bytecode": "1.8.5", - "@webassemblyjs/helper-wasm-section": "1.8.5", - "@webassemblyjs/wasm-gen": "1.8.5", - "@webassemblyjs/wasm-opt": "1.8.5", - "@webassemblyjs/wasm-parser": "1.8.5", - "@webassemblyjs/wast-printer": "1.8.5" - } - }, - "@webassemblyjs/wasm-gen": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.8.5.tgz", - "integrity": "sha512-BCZBT0LURC0CXDzj5FXSc2FPTsxwp3nWcqXQdOZE4U7h7i8FqtFK5Egia6f9raQLpEKT1VL7zr4r3+QX6zArWg==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/helper-wasm-bytecode": "1.8.5", - "@webassemblyjs/ieee754": "1.8.5", - "@webassemblyjs/leb128": "1.8.5", - "@webassemblyjs/utf8": "1.8.5" - } - }, - "@webassemblyjs/wasm-opt": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.8.5.tgz", - "integrity": "sha512-HKo2mO/Uh9A6ojzu7cjslGaHaUU14LdLbGEKqTR7PBKwT6LdPtLLh9fPY33rmr5wcOMrsWDbbdCHq4hQUdd37Q==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/helper-buffer": "1.8.5", - "@webassemblyjs/wasm-gen": "1.8.5", - "@webassemblyjs/wasm-parser": "1.8.5" - } - }, - "@webassemblyjs/wasm-parser": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.8.5.tgz", - "integrity": "sha512-pi0SYE9T6tfcMkthwcgCpL0cM9nRYr6/6fjgDtL6q/ZqKHdMWvxitRi5JcZ7RI4SNJJYnYNaWy5UUrHQy998lw==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/helper-api-error": "1.8.5", - "@webassemblyjs/helper-wasm-bytecode": "1.8.5", - "@webassemblyjs/ieee754": "1.8.5", - "@webassemblyjs/leb128": "1.8.5", - "@webassemblyjs/utf8": "1.8.5" - } - }, - "@webassemblyjs/wast-parser": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.8.5.tgz", - "integrity": "sha512-daXC1FyKWHF1i11obK086QRlsMsY4+tIOKgBqI1lxAnkp9xe9YMcgOxm9kLe+ttjs5aWV2KKE1TWJCN57/Btsg==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/floating-point-hex-parser": "1.8.5", - "@webassemblyjs/helper-api-error": "1.8.5", - "@webassemblyjs/helper-code-frame": "1.8.5", - "@webassemblyjs/helper-fsm": "1.8.5", - "@xtuc/long": "4.2.2" + "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, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" } }, - "@webassemblyjs/wast-printer": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.8.5.tgz", - "integrity": "sha512-w0U0pD4EhlnvRyeJzBqaVSJAo9w/ce7/WPogeXLzGkO6hzhr4GnQIZ4W4uUt5b9ooAaXPtnXlj0gzsXEOUNYMg==", + "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": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/wast-parser": "1.8.5", - "@xtuc/long": "4.2.2" + "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" } }, - "@webpack-contrib/defaults": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/@webpack-contrib/defaults/-/defaults-5.0.2.tgz", - "integrity": "sha512-S1eSkPza/9e/8OuENfjOfDYWn+ZxYr8dsMlz4gMzI82eKMOyxuHi+SBW8zUsC8I/qWjIqx9CDhsahirxL+ZSaA==", - "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/@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, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.27.1", + "@babel/parser": "^7.27.2", + "@babel/types": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" } }, - "@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 - }, - "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/@babel/traverse": { + "version": "7.27.4", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.27.4.tgz", + "integrity": "sha512-oNcu2QbHqts9BtOWJosOVJapWjBDSxGCpFvikNR5TGDYDQf3JwpIoMzIKrvfoti93cLfPJEG4tH9SPVeyCGgdA==", "dev": true, - "requires": { - "jsonparse": "^1.2.0", - "through": ">=2.2.7 <3" + "license": "MIT", + "dependencies": { + "@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" } }, - "abab": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.0.tgz", - "integrity": "sha512-sY5AXXVZv4Y1VACTtR11UJCPHHudgY5i26Qj5TypE6DKlIApbwb5uqhXcJ5UUGbvZNRh7EeIoW+LrJumBsKp7w==", - "dev": true - }, - "acorn": { - "version": "6.0.4", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.0.4.tgz", - "integrity": "sha512-VY4i5EKSKkofY2I+6QLTbTTN/UvEQPCo6eiwzzSaSWfpaDhOmStMCMod6wmuPciNq+XS0faCglFu2lHZpdHUtg==", - "dev": true - }, - "acorn-globals": { - "version": "4.3.3", - "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-4.3.3.tgz", - "integrity": "sha512-vkR40VwS2SYO98AIeFvzWWh+xyc2qi9s7OoXSFEGIP/rOJKzjnhykaZJNnHdoq4BL2gGxI5EZOU16z896EYnOQ==", + "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": { - "acorn": "^6.0.1", - "acorn-walk": "^6.0.1" + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.27.1", + "@babel/helper-validator-identifier": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" } }, - "acorn-jsx": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.0.1.tgz", - "integrity": "sha512-HJ7CfNHrfJLlNTzIEUTj43LNWGkqpRLxm3YjAlcD0ACydk9XynzYsCBHxut+iqt+1aBXkx9UP/w/ZqMr13XIzg==", - "dev": true + "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, + "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 - }, - "ajv": { - "version": "6.10.2", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.10.2.tgz", - "integrity": "sha512-TXtUUEYHuaTEbLZWIKUr5pmBuhDLy+8KYtPYdcV8qC+pOZL+NKqYwvWSRrVXHn+ZmRRAu8vJTAznH7Oag6RVRw==", - "requires": { - "fast-deep-equal": "^2.0.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" + "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, + "license": "MIT", + "engines": { + "node": ">=0.1.90" } }, - "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 - }, - "ajv-keywords": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.4.1.tgz", - "integrity": "sha512-RO1ibKvd27e6FEShVFfPALuHI3WjSVNeK5FIsmme/LYRNxjKuNj+Dt7bucLa6NdSv3JcVTyMlm9kGR84z1XpaQ==" - }, - "ansi": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/ansi/-/ansi-0.3.1.tgz", - "integrity": "sha1-DELU+xcWDVqa8eSEus4cZpIsGyE=", - "dev": true - }, - "ansi-escapes": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-1.4.0.tgz", - "integrity": "sha1-06ioOzGapneTZisT52HHkRQiMG4=", - "dev": true - }, - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true - }, - "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/@commitlint/cli": { + "version": "19.8.1", + "resolved": "https://registry.npmjs.org/@commitlint/cli/-/cli-19.8.1.tgz", + "integrity": "sha512-LXUdNIkspyxrlV6VDHWBmCZRtkEVRpBKxi2Gtw3J54cGWhLCTouVD/Q6ZSaSvd2YaDObWK8mDjrz3TIKtaQMAA==", + "dev": true, + "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" } }, - "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 - }, - "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/@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, + "license": "MIT", + "dependencies": { + "@commitlint/types": "^19.8.1", + "conventional-changelog-conventionalcommits": "^7.0.2" + }, + "engines": { + "node": ">=v18" } }, - "aproba": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", - "dev": true - }, - "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/@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": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" + "license": "MIT", + "dependencies": { + "@commitlint/types": "^19.8.1", + "ajv": "^8.11.0" + }, + "engines": { + "node": ">=v18" } }, - "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "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": { - "sprintf-js": "~1.0.2" + "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" } }, - "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 - }, - "arr-flatten": { - "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 - }, - "array-equal": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/array-equal/-/array-equal-1.0.0.tgz", - "integrity": "sha1-jCpe8kcv2ep0KwTHenUJO6J1fJM=", - "dev": true - }, - "array-filter": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/array-filter/-/array-filter-0.0.1.tgz", - "integrity": "sha1-fajPLiZijtcygDWB/SH2fKzS7uw=", - "dev": true - }, - "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 - }, - "array-ify": { + "node_modules/@commitlint/config-validator/node_modules/json-schema-traverse": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/array-ify/-/array-ify-1.0.0.tgz", - "integrity": "sha1-nlKHYrSpBmrRY6aWKjZEGOlibs4=", - "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" }, - "array-includes": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.0.3.tgz", - "integrity": "sha1-GEtI9i2S10UrsxsyMWXH+L0CJm0=", + "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": { - "define-properties": "^1.1.2", - "es-abstract": "^1.7.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" } }, - "array-map": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/array-map/-/array-map-0.0.0.tgz", - "integrity": "sha1-iKK6tz0c97zVwbEYoAP2b2ZfpmI=", - "dev": true - }, - "array-reduce": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/array-reduce/-/array-reduce-0.0.0.tgz", - "integrity": "sha1-FziZ0//Rx9k4PkR5Ul2+J4yrXys=", - "dev": true - }, - "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 - }, - "array-uniq": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", - "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=", - "dev": true - }, - "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 - }, - "arrify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", - "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", - "dev": true - }, - "asn1": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", - "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==", + "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": { - "safer-buffer": "~2.1.0" + "license": "MIT", + "engines": { + "node": ">=v18" } }, - "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/@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": { - "bn.js": "^4.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0" + "license": "MIT", + "dependencies": { + "@commitlint/types": "^19.8.1", + "chalk": "^5.3.0" + }, + "engines": { + "node": ">=v18" } }, - "assert": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/assert/-/assert-1.5.0.tgz", - "integrity": "sha512-EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA==", + "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": { - "object-assign": "^4.1.1", - "util": "0.10.3" - }, + "license": "MIT", "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" - } - } + "@commitlint/types": "^19.8.1", + "semver": "^7.6.0" + }, + "engines": { + "node": ">=v18" } }, - "assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", - "dev": true - }, - "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 - }, - "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 - }, - "async": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/async/-/async-1.0.0.tgz", - "integrity": "sha1-+PwEyjoTeErenhZBr5hXjPvWR6k=", - "dev": true - }, - "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 - }, - "async-limiter": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.1.tgz", - "integrity": "sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==", - "dev": true + "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, + "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" + } }, - "asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", - "dev": true + "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, + "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" + } }, - "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 + "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, + "license": "MIT", + "engines": { + "node": ">=v18" + } }, - "autoprefixer": { - "version": "9.6.1", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-9.6.1.tgz", - "integrity": "sha512-aVo5WxR3VyvyJxcJC3h4FKfwCQvQWb1tSI5VHNibddCVWrcD1NvlxEweg3TSgiPztMnWfjpy2FURKA2kvDE+Tw==", + "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": { - "browserslist": "^4.6.3", - "caniuse-lite": "^1.0.30000980", - "chalk": "^2.4.2", - "normalize-range": "^0.1.2", - "num2fraction": "^1.2.2", - "postcss": "^7.0.17", - "postcss-value-parser": "^4.0.0" - } - }, - "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.8.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.8.0.tgz", - "integrity": "sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ==", - "dev": true - }, - "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=", - "dev": true, - "requires": { - "chalk": "^1.1.3", - "esutils": "^2.0.2", - "js-tokens": "^3.0.2" - }, + "license": "MIT", "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 - } + "@commitlint/types": "^19.8.1", + "conventional-changelog-angular": "^7.0.0", + "conventional-commits-parser": "^5.0.0" + }, + "engines": { + "node": ">=v18" } }, - "babel-jest": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-24.8.0.tgz", - "integrity": "sha512-+5/kaZt4I9efoXzPlZASyK/lN9qdRKmmUav9smVc0ruPQD7IsfucQ87gpOE8mn2jbDuS6M/YOW6n3v9ZoIfgnw==", + "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": { - "@jest/transform": "^24.8.0", - "@jest/types": "^24.8.0", - "@types/babel__core": "^7.1.0", - "babel-plugin-istanbul": "^5.1.0", - "babel-preset-jest": "^24.6.0", - "chalk": "^2.4.2", - "slash": "^2.0.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" } }, - "babel-plugin-dynamic-import-node": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.0.tgz", - "integrity": "sha512-o6qFkpeQEBxcqt0XYlWzAVxNCSCZdUgcR8IRlhD/8DylxjjO4foPcvTW0GGKa/cVt3rvxZ7o5ippJ+/0nvLhlQ==", + "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": { - "object.assign": "^4.1.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" } }, - "babel-plugin-istanbul": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-5.2.0.tgz", - "integrity": "sha512-5LphC0USA8t4i1zCtjbbNb6jJj/9+X6P37Qfirc/70EQ34xKlMW+a1RHGwxGI+SwWpNwZ27HqvzAobeqaXwiZw==", + "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": { - "@babel/helper-plugin-utils": "^7.0.0", - "find-up": "^3.0.0", - "istanbul-lib-instrument": "^3.3.0", - "test-exclude": "^5.2.3" - }, - "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.2.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.0.tgz", - "integrity": "sha512-pZbTJpoUsCzV48Mc9Nh51VbwO0X9cuPFE8gYwx9BTCt9SF8/b7Zljd2fVgOxhIF/HDTKgpVzs+GPhyKfjLLFRQ==", - "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 - } + "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" } }, - "babel-plugin-jest-hoist": { - "version": "24.6.0", - "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-24.6.0.tgz", - "integrity": "sha512-3pKNH6hMt9SbOv0F3WVmy5CWQ4uogS3k0GY5XLyQHJ9EGpAT9XWkFd2ZiXXtkwFHdAHa5j7w7kfxSP5lAIwu7w==", + "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": { - "@types/babel__traverse": "^7.0.6" + "license": "MIT", + "engines": { + "node": ">=v18" } }, - "babel-polyfill": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-polyfill/-/babel-polyfill-6.26.0.tgz", - "integrity": "sha1-N5k3q8Z9eJWXCtxiHyhM2WbPIVM=", + "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": { - "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 - } + "find-up": "^7.0.0" + }, + "engines": { + "node": ">=v18" } }, - "babel-preset-jest": { - "version": "24.6.0", - "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-24.6.0.tgz", - "integrity": "sha512-pdZqLEdmy1ZK5kyRUfvBb2IfTPb2BUvIJczlPspS8fWmBQslNNDBqVfh7BW5leOVJMDZKzjD8XEyABTk6gQ5yw==", + "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": { - "@babel/plugin-syntax-object-rest-spread": "^7.0.0", - "babel-plugin-jest-hoist": "^24.6.0" + "license": "MIT", + "dependencies": { + "@types/conventional-commits-parser": "^5.0.0", + "chalk": "^5.3.0" + }, + "engines": { + "node": ">=v18" } }, - "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/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": { - "core-js": "^2.4.0", - "regenerator-runtime": "^0.11.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" } }, - "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" - } - } + "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" } }, - "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 + "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, + "license": "MIT", + "engines": { + "node": ">=18" + } }, - "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/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, - "requires": { - "tweetnacl": "^0.14.3" + "license": "MIT", + "dependencies": { + "global-directory": "^4.0.1" + }, + "engines": { + "node": ">=18" } }, - "big.js": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", - "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==" - }, - "binary-extensions": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", - "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", - "dev": true - }, - "bluebird": { - "version": "3.5.5", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.5.tgz", - "integrity": "sha512-5am6HnnfN+urzt4yfg7IgTbotDjIT/u8AJpEt0sIU9FtXfVeezXAPKswrG+xKUCOYAINpSdgZVDU6QFh+cuH3w==", - "dev": true - }, - "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 - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" + "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" } }, - "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/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, + "license": "MIT", + "engines": { + "node": ">=18" } }, - "brorand": { + "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" + }, + "node_modules/@cspell/dict-al": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", - "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=", - "dev": true + "resolved": "https://registry.npmjs.org/@cspell/dict-al/-/dict-al-1.1.0.tgz", + "integrity": "sha512-PtNI1KLmYkELYltbzuoztBxfi11jcE9HXBHCpID2lou/J4VMYKJPNqe4ZjVzSI9NYbMnMnyG3gkbhIdx66VSXg==", + "dev": true, + "license": "MIT" }, - "browser-process-hrtime": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-0.1.3.tgz", - "integrity": "sha512-bRFnI4NnjO6cnyLmOV/7PVoDEMJChlcfN0z4s1YMBY989/SvlfMI1lgCnkFUs53e9gQF+w7qu7XdllSTiSl8Aw==", - "dev": true + "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, + "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/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, - "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/dict-shell": "1.1.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/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, - "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" }, - "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/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, - "requires": { - "browserify-aes": "^1.0.4", - "browserify-des": "^1.0.0", - "evp_bytestokey": "^1.0.0" - } + "license": "MIT" }, - "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/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, - "requires": { - "cipher-base": "^1.0.1", - "des.js": "^1.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" - } + "license": "MIT" }, - "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/@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": { - "bn.js": "^4.1.0", - "randombytes": "^2.0.1" - } + "license": "MIT" }, - "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/@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, - "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" - } + "license": "MIT" }, - "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/@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, - "requires": { - "pako": "~1.0.5" - } + "license": "MIT" }, - "browserslist": { - "version": "4.6.6", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.6.6.tgz", - "integrity": "sha512-D2Nk3W9JL9Fp/gIcWei8LrERCS+eXu9AM5cfXA8WEZ84lFks+ARnZ0q/R69m2SV3Wjma83QDDPxsNKXUwdIsyA==", + "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, - "requires": { - "caniuse-lite": "^1.0.30000984", - "electron-to-chromium": "^1.3.191", - "node-releases": "^1.1.25" - } + "license": "MIT" }, - "bser": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.0.tgz", - "integrity": "sha512-8zsjWrQkkBoLK6uxASk1nJ2SKv97ltiGDo6A3wA0/yRPz+CwmEyDo0hUrhIuukG2JHpAl3bvFIixw2/3Hi0DOg==", + "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, - "requires": { - "node-int64": "^0.4.0" - } + "license": "MIT" }, - "buffer": { - "version": "4.9.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz", - "integrity": "sha1-bRu2AbB6TvztlwlBMgkwJ8lbwpg=", + "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, - "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 + "license": "MIT" }, - "buffer-xor": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", - "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=", - "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" }, - "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.2", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-12.0.2.tgz", - "integrity": "sha512-ifKgxH2CKhJEg6tNdAwziu6Q33EvuG26tYcda6PT3WKisZcYDXsnEdnRv67Po3yCzFfaSoMjGZzJyD2c3DT1dg==", - "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" - } + "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" }, - "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/@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, - "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 - } - } + "license": "MIT" }, - "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/@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, - "requires": { - "caller-callsite": "^2.0.0" - } + "license": "CC BY-SA 4.0" }, - "callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "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" }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==" + "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, + "license": "MIT" }, - "camelcase-keys": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-4.2.0.tgz", - "integrity": "sha1-oqpfsa9oh1glnDLBQUJteJI7m3c=", + "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": { - "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 - } - } + "license": "MIT" }, - "caniuse-lite": { - "version": "1.0.30000989", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30000989.tgz", - "integrity": "sha512-vrMcvSuMz16YY6GSVZ0dWDTJP8jqk3iFQ/Aq5iqblPwxSVVZI+zxDyTX0VPqtQsDnfdrBDcsmhgTEOh5R8Lbpw==", - "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" }, - "caporal": { + "node_modules/@cspell/dict-fsharp": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/caporal/-/caporal-1.1.0.tgz", - "integrity": "sha512-R5qo2QGoqBM6RvzHonGhUuEJSeqEa4lD1r+cPUEY2+YsXhpQVTS2TvScfIbi6ydFdhzFCNeNUB1v0YrRBvsbdg==", + "resolved": "https://registry.npmjs.org/@cspell/dict-fsharp/-/dict-fsharp-1.1.0.tgz", + "integrity": "sha512-oguWmHhGzgbgbEIBKtgKPrFSVAFtvGHaQS0oj+vacZqMObwkapcTGu7iwf4V3Bc2T3caf0QE6f6rQfIJFIAVsw==", "dev": true, - "requires": { - "bluebird": "^3.4.7", - "cli-table3": "^0.5.0", - "colorette": "1.0.1", - "fast-levenshtein": "^2.0.6", - "lodash.camelcase": "^4.3.0", - "lodash.kebabcase": "^4.1.1", - "lodash.merge": "^4.6.0", - "micromist": "1.1.0", - "prettyjson": "^1.2.1", - "tabtab": "^2.2.2", - "winston": "^2.3.1" - } + "license": "MIT" }, - "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/@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, - "requires": { - "rsvp": "^4.8.4" - } + "license": "MIT" }, - "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" - } - } - } - }, - "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.6", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.6.tgz", - "integrity": "sha512-V2jUo67OKkc6ySiRpJrjlpJKl9kDuG+Xb8VgsGzb+aEouhgS1D0weyPU4lEzdAcsCAvrih2J2BqyXqHWvVLw5g==", + "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, - "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" - } + "license": "MIT" }, - "chownr": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.2.tgz", - "integrity": "sha512-GkfeAQh+QNy3wquu9oIZr6SS5x7wGdSgNQvD10X3r+AZr1Oys22HW8kAmDMvNg2+Dm0TeGaEuO8gFwdBXxwO8A==", - "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" }, - "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/@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": { - "tslib": "^1.9.0" - } + "license": "MIT" }, - "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 + "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" }, - "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/@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, - "requires": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } + "license": "MIT" }, - "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" - } - } - } + "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, + "license": "MIT" }, - "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/@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, - "requires": { - "restore-cursor": "^1.0.1" - } + "license": "MIT" }, - "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/@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": { - "colors": "^1.1.2", - "object-assign": "^4.1.0", - "string-width": "^2.1.1" - } + "license": "MIT" }, - "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" - } - }, - "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" - } - } - } + "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, + "license": "MIT" }, - "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 + "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, + "license": "MIT" }, - "cliui": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz", - "integrity": "sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ==", + "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, - "requires": { - "string-width": "^2.1.1", - "strip-ansi": "^4.0.0", - "wrap-ansi": "^2.0.0" - }, - "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" - } - } - } + "license": "MIT" }, - "clone-deep": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-2.0.2.tgz", - "integrity": "sha512-SZegPTKjCgpQH63E+eN6mVEEPdQBOUzjyJm5Pora4lrwWRFS8I0QAxV/KD6vV/i0WuijHZWQC1fMsPEdxfdVCQ==", + "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, - "requires": { - "for-own": "^1.0.0", - "is-plain-object": "^2.0.4", - "kind-of": "^6.0.0", - "shallow-clone": "^1.0.0" - } + "license": "MIT" }, - "co": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", - "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=", - "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" }, - "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 + "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" }, - "collection-visit": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", - "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", + "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, - "requires": { - "map-visit": "^1.0.0", - "object-visit": "^1.0.0" - } + "license": "MIT" }, - "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" + "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" } }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" + "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" }, - "colorette": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.0.1.tgz", - "integrity": "sha512-40MnlppkzHhFjRhtXunbpqKUT+eJn0gyVGi8aQlNSG8T2CCy31NdD7yktcS0aizH1VP2OhhQCyGMeTp0a/fvaw==", - "dev": true + "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, + "license": "MIT" }, - "colors": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/colors/-/colors-1.3.3.tgz", - "integrity": "sha512-mmGt/1pZqYRjMxB1axhTo16/snVZ5krrKkcmMeVKxzECMMXoCgnvTPp10QgHfcbQZw8Dq2jMNG6je4JlWU0gWg==", - "dev": true + "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, + "license": "MIT" }, - "combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "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": { - "delayed-stream": "~1.0.0" - } + "license": "MIT" }, - "commander": { - "version": "2.20.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.0.tgz", - "integrity": "sha512-7j2y+40w61zy6YC2iRNpUe/NwhNyoXrYpHMrSunaMG64nRnaf96zO/KMQR4OyN/UnE5KLyEBnKHd4aG3rskjpQ==", - "dev": true + "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, + "license": "MIT" }, - "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/@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": { - "json-parser": "^1.0.0" - } + "license": "MIT" }, - "commitlint-azure-pipelines-cli": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/commitlint-azure-pipelines-cli/-/commitlint-azure-pipelines-cli-1.0.2.tgz", - "integrity": "sha512-Uj5QatjR1HAifoJI7ZjNx3O8iuH0lUnTmja9jGIA4KjEPLfbyctob4i1JgOZ7tGQK918n1uoolyZBjbQ7h/WSw==", + "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": { - "execa": "^1.0.0" + "license": "MIT", + "dependencies": { + "@cspell/dict-data-science": "^2.0.8" } }, - "commondir": { - "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=", + "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": { - "array-ify": "^1.0.0", - "dot-prop": "^3.0.0" - } + "license": "MIT" }, - "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 + "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, + "license": "MIT" }, - "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 + "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, + "license": "MIT" }, - "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/@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": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^2.2.2", - "typedarray": "^0.0.6" - } + "license": "MIT" }, - "console-browserify": { + "node_modules/@cspell/dict-shell": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.1.0.tgz", - "integrity": "sha1-8CQcRXMKn8YyOyBtvzjtx0HQuxA=", + "resolved": "https://registry.npmjs.org/@cspell/dict-shell/-/dict-shell-1.1.0.tgz", + "integrity": "sha512-D/xHXX7T37BJxNRf5JJHsvziFDvh23IF/KvkZXNSh8VqcRdod3BAz9VGHZf6VDqcZXr1VRqIYR3mQ8DSvs3AVQ==", "dev": true, - "requires": { - "date-now": "^0.1.4" - } - }, - "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.9", - "resolved": "https://registry.npmjs.org/conventional-changelog/-/conventional-changelog-3.1.9.tgz", - "integrity": "sha512-JbNVm1iGZ3aXxcFZjqKNDNfdgchQjSltWc8rvSniMrkHLsub9Wn20/JLdJNTBM74dt1IA2M+v/mzServ6N37YA==", - "dev": true, - "requires": { - "conventional-changelog-angular": "^5.0.3", - "conventional-changelog-atom": "^2.0.1", - "conventional-changelog-codemirror": "^2.0.1", - "conventional-changelog-conventionalcommits": "^4.0.0", - "conventional-changelog-core": "^3.2.3", - "conventional-changelog-ember": "^2.0.2", - "conventional-changelog-eslint": "^3.0.2", - "conventional-changelog-express": "^2.0.1", - "conventional-changelog-jquery": "^3.0.4", - "conventional-changelog-jshint": "^2.0.1", - "conventional-changelog-preset-loader": "^2.1.1" - }, - "dependencies": { - "conventional-changelog-angular": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/conventional-changelog-angular/-/conventional-changelog-angular-5.0.3.tgz", - "integrity": "sha512-YD1xzH7r9yXQte/HF9JBuEDfvjxxwDGGwZU1+ndanbY0oFgA+Po1T9JDSpPLdP0pZT6MhCAsdvFKC4TJ4MTJTA==", - "dev": true, - "requires": { - "compare-func": "^1.3.1", - "q": "^1.5.1" - } - } - } + "license": "MIT" }, - "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/@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, - "requires": { - "compare-func": "^1.3.1", - "q": "^1.5.1" - } + "license": "MIT" }, - "conventional-changelog-atom": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/conventional-changelog-atom/-/conventional-changelog-atom-2.0.1.tgz", - "integrity": "sha512-9BniJa4gLwL20Sm7HWSNXd0gd9c5qo49gCi8nylLFpqAHhkFTj7NQfROq3f1VpffRtzfTQp4VKU5nxbe2v+eZQ==", + "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, - "requires": { - "q": "^1.5.1" - } + "license": "MIT" }, - "conventional-changelog-codemirror": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/conventional-changelog-codemirror/-/conventional-changelog-codemirror-2.0.1.tgz", - "integrity": "sha512-23kT5IZWa+oNoUaDUzVXMYn60MCdOygTA2I+UjnOMiYVhZgmVwNd6ri/yDlmQGXHqbKhNR5NoXdBzSOSGxsgIQ==", + "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, - "requires": { - "q": "^1.5.1" - } + "license": "MIT" }, - "conventional-changelog-config-spec": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/conventional-changelog-config-spec/-/conventional-changelog-config-spec-2.0.0.tgz", - "integrity": "sha512-zQmcBP/pR8tN5MSv+nXG9hOmy+Z6rgEquBerpoEbOKTFPLoxBy/adeUUpshrMpqdZ/ycqbT2AgdTtiIu/9IHGg==", - "dev": true + "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, + "license": "MIT" }, - "conventional-changelog-conventionalcommits": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/conventional-changelog-conventionalcommits/-/conventional-changelog-conventionalcommits-4.1.0.tgz", - "integrity": "sha512-J3xolGrH8PTxpCqueHOuZtv3Cp73SQOWiBQzlsaugZAZ+hZgcJBonmC+1bQbfGs2neC2S18p2L1Gx+nTEglJTQ==", + "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, - "requires": { - "compare-func": "^1.3.1", - "q": "^1.5.1" - } + "license": "MIT" }, - "conventional-changelog-core": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/conventional-changelog-core/-/conventional-changelog-core-3.2.3.tgz", - "integrity": "sha512-LMMX1JlxPIq/Ez5aYAYS5CpuwbOk6QFp8O4HLAcZxe3vxoCtABkhfjetk8IYdRB9CDQGwJFLR3Dr55Za6XKgUQ==", + "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, - "requires": { - "conventional-changelog-writer": "^4.0.6", - "conventional-commits-parser": "^3.0.3", - "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": "^2.0.3", - "lodash": "^4.2.1", - "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": { - "conventional-commits-parser": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-3.0.3.tgz", - "integrity": "sha512-KaA/2EeUkO4bKjinNfGUyqPTX/6w9JGshuQRik4r/wJz7rUw3+D3fDG6sZSEqJvKILzKXFQuFkpPLclcsAuZcg==", - "dev": true, - "requires": { - "JSONStream": "^1.0.4", - "is-text-path": "^2.0.0", - "lodash": "^4.2.1", - "meow": "^4.0.0", - "split2": "^2.0.0", - "through2": "^3.0.0", - "trim-off-newlines": "^1.0.0" - } - }, - "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" - } - } - } - }, - "git-semver-tags": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/git-semver-tags/-/git-semver-tags-2.0.3.tgz", - "integrity": "sha512-tj4FD4ww2RX2ae//jSrXZzrocla9db5h0V7ikPl1P/WwoZar9epdUhwR7XHXSgc+ZkNq72BEEerqQuicoEQfzA==", - "dev": true, - "requires": { - "meow": "^4.0.0", - "semver": "^6.0.0" - } - }, - "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, - "requires": { - "text-extensions": "^2.0.0" - } - }, - "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" - } - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - }, - "text-extensions": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/text-extensions/-/text-extensions-2.0.0.tgz", - "integrity": "sha512-F91ZqLgvi1E0PdvmxMgp+gcf6q8fMH7mhdwWfzXnl1k+GbpQDmi8l7DzLC5JTASKbwpY3TfxajAUzAXcv2NmsQ==", - "dev": true - }, - "through2": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/through2/-/through2-3.0.1.tgz", - "integrity": "sha512-M96dvTalPT3YbYLaKaCuwu+j06D/8Jfib0o/PxbVt6Amhv3dUAtW6rTV1jPgJSBG83I/e04Y6xkVdVhSRhi0ww==", - "dev": true, - "requires": { - "readable-stream": "2 || 3" - } - } - } + "license": "MIT" }, - "conventional-changelog-ember": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/conventional-changelog-ember/-/conventional-changelog-ember-2.0.2.tgz", - "integrity": "sha512-qtZbA3XefO/n6DDmkYywDYi6wDKNNc98MMl2F9PKSaheJ25Trpi3336W8fDlBhq0X+EJRuseceAdKLEMmuX2tg==", + "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, - "requires": { - "q": "^1.5.1" - } + "license": "MIT" }, - "conventional-changelog-eslint": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/conventional-changelog-eslint/-/conventional-changelog-eslint-3.0.2.tgz", - "integrity": "sha512-Yi7tOnxjZLXlCYBHArbIAm8vZ68QUSygFS7PgumPRiEk+9NPUeucy5Wg9AAyKoBprSV3o6P7Oghh4IZSLtKCvQ==", + "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": { - "q": "^1.5.1" + "license": "MIT", + "dependencies": { + "@cspell/url": "8.19.4", + "import-meta-resolve": "^4.1.0" + }, + "engines": { + "node": ">=18.0" } }, - "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/@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": { - "q": "^1.5.1" + "license": "MIT", + "engines": { + "node": ">=18" } }, - "conventional-changelog-jquery": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/conventional-changelog-jquery/-/conventional-changelog-jquery-3.0.4.tgz", - "integrity": "sha512-IVJGI3MseYoY6eybknnTf9WzeQIKZv7aNTm2KQsiFVJH21bfP2q7XVjfoMibdCg95GmgeFlaygMdeoDDa+ZbEQ==", + "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": { - "q": "^1.5.1" + "license": "MIT", + "engines": { + "node": ">=18" } }, - "conventional-changelog-jshint": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/conventional-changelog-jshint/-/conventional-changelog-jshint-2.0.1.tgz", - "integrity": "sha512-kRFJsCOZzPFm2tzRHULWP4tauGMvccOlXYf3zGeuSW4U0mZhk5NsjnRZ7xFWrTFPlCLV+PNmHMuXp5atdoZmEg==", + "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": { - "compare-func": "^1.3.1", - "q": "^1.5.1" + "license": "MIT", + "engines": { + "node": ">=18.0" } }, - "conventional-changelog-preset-loader": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/conventional-changelog-preset-loader/-/conventional-changelog-preset-loader-2.2.0.tgz", - "integrity": "sha512-zXB+5vF7D5Y3Cb/rJfSyCCvFphCVmF8mFqOdncX3BmjZwAtGAPfYrBcT225udilCKvBbHgyzgxqz2GWDB5xShQ==", - "dev": true - }, - "conventional-changelog-writer": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/conventional-changelog-writer/-/conventional-changelog-writer-4.0.7.tgz", - "integrity": "sha512-p/wzs9eYaxhFbrmX/mCJNwJuvvHR+j4Fd0SQa2xyAhYed6KBiZ780LvoqUUvsayP4R1DtC27czalGUhKV2oabw==", + "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": { - "compare-func": "^1.3.1", - "conventional-commits-filter": "^2.0.2", - "dateformat": "^3.0.0", - "handlebars": "^4.1.2", - "json-stringify-safe": "^5.0.1", - "lodash": "^4.2.1", - "meow": "^4.0.0", - "semver": "^6.0.0", - "split": "^1.0.0", - "through2": "^3.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" - } + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - }, - "through2": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/through2/-/through2-3.0.1.tgz", - "integrity": "sha512-M96dvTalPT3YbYLaKaCuwu+j06D/8Jfib0o/PxbVt6Amhv3dUAtW6rTV1jPgJSBG83I/e04Y6xkVdVhSRhi0ww==", - "dev": true, - "requires": { - "readable-stream": "2 || 3" - } + { + "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" } }, - "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/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": { - "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", + "engines": { + "node": "^14 || ^16 || >=18" } }, - "conventional-commits-parser": { - "version": "2.1.7", - "resolved": "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-2.1.7.tgz", - "integrity": "sha512-BoMaddIEJ6B4QVMSDu9IkVImlGOSGA1I2BQyOZHeLQ6qVOJLcLKn97+fL6dGbzWEiqDzfH4OkcveULmeq2MHFQ==", + "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": { - "JSONStream": "^1.0.4", - "is-text-path": "^1.0.0", - "lodash": "^4.2.1", - "meow": "^4.0.0", - "split2": "^2.0.0", - "through2": "^2.0.0", - "trim-off-newlines": "^1.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" - } + "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" } }, - "conventional-recommended-bump": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/conventional-recommended-bump/-/conventional-recommended-bump-6.0.0.tgz", - "integrity": "sha512-iIHkDOuWCC49J/E4WXvXBCCrO2NoGqwjfhm2iUOHPPEik8TVHxczt/hFaWY+4MXeZ/nC53BNfjmlr8+EXOrlvA==", + "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": { - "concat-stream": "^2.0.0", - "conventional-changelog-preset-loader": "^2.2.0", - "conventional-commits-filter": "^2.0.2", - "conventional-commits-parser": "^3.0.3", - "git-raw-commits": "2.0.0", - "git-semver-tags": "^3.0.0", - "meow": "^4.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" - } - }, - "conventional-commits-parser": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-3.0.3.tgz", - "integrity": "sha512-KaA/2EeUkO4bKjinNfGUyqPTX/6w9JGshuQRik4r/wJz7rUw3+D3fDG6sZSEqJvKILzKXFQuFkpPLclcsAuZcg==", - "dev": true, - "requires": { - "JSONStream": "^1.0.4", - "is-text-path": "^2.0.0", - "lodash": "^4.2.1", - "meow": "^4.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" }, - "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": { - "readable-stream": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", - "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", - "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" - } - }, - "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" - } - } - } - }, - "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, - "requires": { - "text-extensions": "^2.0.0" - } - }, - "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.4.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.4.0.tgz", - "integrity": "sha512-jItXPLmrSR8jmTRmRWJXCnGJsfy85mB3Wd/uINMXA65yrnFo0cPClFIUWzo2najVNSl+mx7/4W8ttlLWJe99pQ==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, - "text-extensions": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/text-extensions/-/text-extensions-2.0.0.tgz", - "integrity": "sha512-F91ZqLgvi1E0PdvmxMgp+gcf6q8fMH7mhdwWfzXnl1k+GbpQDmi8l7DzLC5JTASKbwpY3TfxajAUzAXcv2NmsQ==", - "dev": true - }, - "through2": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/through2/-/through2-3.0.1.tgz", - "integrity": "sha512-M96dvTalPT3YbYLaKaCuwu+j06D/8Jfib0o/PxbVt6Amhv3dUAtW6rTV1jPgJSBG83I/e04Y6xkVdVhSRhi0ww==", - "dev": true, - "requires": { - "readable-stream": "2 || 3" - } + { + "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" } }, - "convert-source-map": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.6.0.tgz", - "integrity": "sha512-eFu7XigvxdZ1ETfbgPBohgyQ/Z++C0eEhTor0qRwBw9unw+L0/6V8wkSuGgzdThkiS5lSpdptOQPD8Ak40a+7A==", + "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": { - "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.9", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.9.tgz", - "integrity": "sha512-HOpZf6eXmnl7la+cUdMnLvUxKNqLUzJvgIziQ0DiF3JwSImNphIqdGqzj6hIKyX04MmV0poclQ7+wjWvxQyR2A==", - "dev": true - }, - "core-js-compat": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.1.4.tgz", - "integrity": "sha512-Z5zbO9f1d0YrJdoaQhphVAnKPimX92D6z8lCGphH89MNRxlL1prI9ExJPqVwP0/kgkQCv8c4GJGT8X16yUncOg==", - "dev": true, - "requires": { - "browserslist": "^4.6.2", - "core-js-pure": "3.1.4", - "semver": "^6.1.1" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "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-tokenizer": "^2.4.1" } }, - "core-js-pure": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.1.4.tgz", - "integrity": "sha512-uJ4Z7iPNwiu1foygbcZYJsJs1jiXrTTCvxfLDXNhI/I+NHbSIEyr548y4fcsCEyWY0XgfAG/qqaunJ1SThHenA==", - "dev": true - }, - "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/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": { - "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", + "engines": { + "node": "^14 || ^16 || >=18" } }, - "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/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": { - "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", + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "@csstools/css-parser-algorithms": "^2.7.1", + "@csstools/css-tokenizer": "^2.4.1" } }, - "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/@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": { - "cipher-base": "^1.0.1", - "inherits": "^2.0.1", - "md5.js": "^1.3.4", - "ripemd160": "^2.0.1", - "sha.js": "^2.4.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" } }, - "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/@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": { - "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" + "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" } }, - "cross-env": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/cross-env/-/cross-env-5.2.0.tgz", - "integrity": "sha512-jtdNFfFW1hB7sMhr/H6rW1Z45LFqyI431m3qU6bFXcQ3Eh7LtBuG3h74o7ohHZ3crrRkkqHlo4jYHFPcjroANg==", + "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": { - "cross-spawn": "^6.0.5", - "is-windows": "^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" } }, - "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/@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": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" + "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" } }, - "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/@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": { - "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" + "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" } }, - "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/@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": { - "postcss": "^7.0.5" + "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" } }, - "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/@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": { - "postcss": "^7.0.6", - "postcss-selector-parser": "^5.0.0-rc.4" - }, - "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 + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" }, - "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" - } + { + "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" } }, - "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/@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": { - "postcss": "^7.0.5" + "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" } }, - "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.3.8", - "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz", - "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==", - "dev": true - }, - "cssstyle": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-1.4.0.tgz", - "integrity": "sha512-GBrLZYZ4X4x6/QEoBnIrqb8B/f5l4+8me2dkom/j1Gtbxy0kBv6OGzKuAsGM75bkGwGAFkt56Iwg28S3XTZgSA==", + "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": { - "cssom": "0.3.x" + "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" } }, - "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/@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, - "requires": { - "array-find-index": "^1.0.1" + "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" } }, - "cycle": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/cycle/-/cycle-1.0.3.tgz", - "integrity": "sha1-IegLK+hYD5i0aPN5QwZisEbDStI=", - "dev": true - }, - "cyclist": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-0.2.2.tgz", - "integrity": "sha1-GzN5LhHpFKL9bW7WRHRkRE5fpkA=", - "dev": true - }, - "dargs": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/dargs/-/dargs-4.1.0.tgz", - "integrity": "sha1-A6nbtLXC8Tm/FK5T8LiipqhvThc=", + "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": { - "number-is-nan": "^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" } }, - "dashdash": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", - "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", + "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": { - "assert-plus": "^1.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" } }, - "data-urls": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-1.1.0.tgz", - "integrity": "sha512-YTWYI9se1P55u58gL5GkQHW4P6VJBJ5iBT+B5a7i2Tjadhv52paJG0qHX4A0OR6/t52odI64KP2YvFpkDOi3eQ==", - "dev": true, - "requires": { - "abab": "^2.0.0", - "whatwg-mimetype": "^2.2.0", - "whatwg-url": "^7.0.0" - }, - "dependencies": { - "whatwg-url": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.0.0.tgz", - "integrity": "sha512-37GeVSIJ3kn1JgKyjiYNmSLP1yzbpb29jdmwBSgkD9h40/hyrR/OifpVUndji3tmwGgD8qpw7iQu3RSbCrBpsQ==", - "dev": true, - "requires": { - "lodash.sortby": "^4.7.0", - "tr46": "^1.0.1", - "webidl-conversions": "^4.0.2" - } + "node_modules/@csstools/postcss-light-dark-function": { + "version": "1.0.8", + "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, + "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" } }, - "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 - }, - "date-now": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/date-now/-/date-now-0.1.4.tgz", - "integrity": "sha1-6vQ5/U1ISK105cx9vvIAZyueNFs=", - "dev": true - }, - "dateformat": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-3.0.3.tgz", - "integrity": "sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q==", - "dev": true - }, - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "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": { - "ms": "2.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" } }, - "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/@csstools/postcss-logical-overflow": { + "version": "1.0.1", + "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": { - "decamelize": "^1.1.0", - "map-obj": "^1.0.0" - }, - "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 + "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" } }, - "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 - }, - "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 - }, - "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/@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": { - "object-keys": "^1.0.12" + "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" } }, - "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" - } + "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, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" }, - "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" - } + { + "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" } }, - "del": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/del/-/del-5.0.0.tgz", - "integrity": "sha512-TfU3nUY0WDIhN18eq+pgpbLY9AfL5RfiE9czKaTSolc6aK7qASXfDErvYgjV1UqCR4sNXDoxO0/idPmhDUt2Sg==", + "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": { - "globby": "^10.0.0", - "is-path-cwd": "^2.0.0", - "is-path-in-cwd": "^2.0.0", - "p-map": "^2.0.0", - "rimraf": "^2.6.3" + "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" } }, - "del-cli": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/del-cli/-/del-cli-2.0.0.tgz", - "integrity": "sha512-IREsO6mjSTxxvWLKMMUi1G0izhqEBx7qeDkOJ6H3+TJl8gQl6x5C5hK4Sm1GJ51KodUMR6O7HuIhnF24Edua3g==", - "dev": true, - "requires": { - "del": "^4.1.1", - "meow": "^5.0.0" - }, - "dependencies": { - "array-union": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", - "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", - "dev": true, - "requires": { - "array-uniq": "^1.0.1" - } - }, - "del": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/del/-/del-4.1.1.tgz", - "integrity": "sha512-QwGuEUouP2kVwQenAsOof5Fv8K9t3D8Ca8NxcXKrIpEHjTXK5J2nXLdP+ALI1cgv8wj7KuwBhTwBkOZSJKM5XQ==", - "dev": true, - "requires": { - "@types/glob": "^7.1.1", - "globby": "^6.1.0", - "is-path-cwd": "^2.0.0", - "is-path-in-cwd": "^2.0.0", - "p-map": "^2.0.0", - "pify": "^4.0.1", - "rimraf": "^2.6.3" - } - }, - "globby": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz", - "integrity": "sha1-9abXDoOV4hyFj7BInWTfAkJNUGw=", - "dev": true, - "requires": { - "array-union": "^1.0.1", - "glob": "^7.0.3", - "object-assign": "^4.0.1", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0" - }, - "dependencies": { - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true - } - } + "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, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" }, - "pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "dev": true + { + "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" } }, - "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 + "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, + "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" + } }, - "des.js": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.0.tgz", - "integrity": "sha1-wHTS4qpqipoH29YfmhXCzYPsjsw=", + "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": { - "inherits": "^2.0.1", - "minimalistic-assert": "^1.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" } }, - "detect-indent": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-5.0.0.tgz", - "integrity": "sha1-OHHMCmoALow+Wzz38zYmRnXwa50=", - "dev": true + "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, + "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" + } }, - "detect-newline": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-2.1.0.tgz", - "integrity": "sha1-9B8cEL5LAOh7XxPaaAdZ8sW/0+I=", - "dev": true + "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, + "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" + } }, - "diff-sequences": { - "version": "24.3.0", - "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-24.3.0.tgz", - "integrity": "sha512-xLqpez+Zj9GKSnPWS0WZw1igGocZ+uua8+y+5dDNTT934N3QuY1sp2LkHzwiaYQGz60hMq0pjAshdeXm5VUOEw==", - "dev": true + "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, + "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" + } }, - "diffie-hellman": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", - "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", + "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": { - "bn.js": "^4.1.0", - "miller-rabin": "^4.0.0", - "randombytes": "^2.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" } }, - "dir-glob": { + "node_modules/@csstools/postcss-scope-pseudo-class": { "version": "3.0.1", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", - "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "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": { - "path-type": "^4.0.0" - }, - "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 + "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" } }, - "doctrine": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "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": { - "esutils": "^2.0.2" + "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" } }, - "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/@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": { - "webidl-conversions": "^4.0.2" + "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" } }, - "dot-prop": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-3.0.0.tgz", - "integrity": "sha1-G3CK8JSknJoOfbyteQq6U52sEXc=", + "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": { - "is-obj": "^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" } }, - "dotgitignore": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/dotgitignore/-/dotgitignore-2.1.0.tgz", - "integrity": "sha512-sCm11ak2oY6DglEPpCB8TixLjWAxd3kJTs6UIcSasNYxXdFPV+YKlye92c8H4kKFqV5qYMIh7d+cYecEg0dIkA==", + "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": { - "find-up": "^3.0.0", - "minimatch": "^3.0.4" - }, - "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" - } + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" }, - "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.2.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.0.tgz", - "integrity": "sha512-pZbTJpoUsCzV48Mc9Nh51VbwO0X9cuPFE8gYwx9BTCt9SF8/b7Zljd2fVgOxhIF/HDTKgpVzs+GPhyKfjLLFRQ==", - "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 + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" } + ], + "license": "MIT-0", + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "duplexify": { - "version": "3.7.1", - "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz", - "integrity": "sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==", + "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": { - "end-of-stream": "^1.0.0", - "inherits": "^2.0.1", - "readable-stream": "^2.0.0", - "stream-shift": "^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-selector-parser": "^6.0.13" } }, - "ecc-jsbn": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", - "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", - "dev": true, - "requires": { - "jsbn": "~0.1.0", - "safer-buffer": "^2.1.0" - } - }, - "editorconfig": { - "version": "0.15.3", - "resolved": "https://registry.npmjs.org/editorconfig/-/editorconfig-0.15.3.tgz", - "integrity": "sha512-M9wIMFx96vq0R4F+gRpY3o2exzb8hEj/n9S8unZtHSvYjibBp/iMufSzvmOcV/laG0ZtuTVGtiJggPOSW2r93g==", - "dev": true, - "requires": { - "commander": "^2.19.0", - "lru-cache": "^4.1.5", - "semver": "^5.6.0", - "sigmund": "^1.0.1" - }, - "dependencies": { - "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==", - "dev": true, - "requires": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" - } + "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, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" }, - "yallist": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", - "dev": true + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" } + ], + "license": "MIT-0", + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss-selector-parser": "^6.0.13" } }, - "electron-to-chromium": { - "version": "1.3.215", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.215.tgz", - "integrity": "sha512-ZV3OnwF0FlIygwxAG2H92yt7WGjWBpawyFAFu8e9k7xJatY+BPowID0D0Bs3PMACYAJATEejw/I9cawO27ZvTg==", - "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.0", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.0.tgz", - "integrity": "sha512-eFOJTMyCYb7xtE/caJ6JJu+bhi67WCYNbkGSknu20pmM8Ke/bqOfdnZWxyoGN26JgfxTbXrsCkEw4KheCT/KGg==", - "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": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", - "dev": true - }, - "emojis-list": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-2.1.0.tgz", - "integrity": "sha1-TapNnbAPmBmIDHn6RXrlsJof04k=" + "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, + "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" + } }, - "end-of-stream": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.1.tgz", - "integrity": "sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q==", + "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": { - "once": "^1.4.0" + "license": "MIT", + "dependencies": { + "colorspace": "1.1.x", + "enabled": "2.0.x", + "kuler": "^2.0.0" } }, - "enhanced-resolve": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.1.0.tgz", - "integrity": "sha512-F/7vkyTtyc/llOIn8oWclcB25KdRaiPBpZYDgJHgh/UHtpgT2p2eldQgtQnLtUvfMKPKxbRaQM/hHkvLHt1Vng==", + "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": { - "graceful-fs": "^4.1.2", - "memory-fs": "^0.4.0", - "tapable": "^1.0.0" + "license": "MIT", + "optional": true, + "dependencies": { + "@emnapi/wasi-threads": "1.0.2", + "tslib": "^2.4.0" } }, - "errno": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.7.tgz", - "integrity": "sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg==", + "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": { - "prr": "~1.0.1" + "license": "MIT", + "optional": true, + "dependencies": { + "tslib": "^2.4.0" } }, - "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/@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": { - "is-arrayish": "^0.2.1" + "license": "MIT", + "optional": true, + "dependencies": { + "tslib": "^2.4.0" } }, - "es-abstract": { - "version": "1.13.0", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.13.0.tgz", - "integrity": "sha512-vDZfg/ykNxQVwup/8E1BZhVzFfBxs9NqMzGcvIJrqg5k2/5Za2bWo40dK2J1pgLngZ7c+Shh8lwYtLGyrwPutg==", + "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": { - "es-to-primitive": "^1.2.0", - "function-bind": "^1.1.1", - "has": "^1.0.3", - "is-callable": "^1.1.4", - "is-regex": "^1.0.4", - "object-keys": "^1.0.12" + "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" } }, - "es-check": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/es-check/-/es-check-5.0.0.tgz", - "integrity": "sha512-30n+EZt5KjazXEvyYr2DXJCOJJWfdT1unRp5+Szlcja6uGAB3Sh3QPjRsxd2xgN9SFj4S5P8pdBISwGcDdS45Q==", + "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": { - "acorn": "6.0.4", - "caporal": "1.1.0", - "glob": "^7.1.2" + "license": "MIT", + "engines": { + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" } }, - "es-to-primitive": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.0.tgz", - "integrity": "sha512-qZryBOJjV//LaxLTV6UC//WewneB3LcXOL9NP++ozKVXsIIIpm/2c13UDiD9Jp2eThsecw9m3jPqDwTyobcdbg==", + "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": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" + "license": "MIT", + "dependencies": { + "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" } }, - "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/@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, + "license": "Python-2.0" }, - "escodegen": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.11.1.tgz", - "integrity": "sha512-JwiqFD9KdGVVpeuRa68yU3zZnBEOcPs0nKW7wZzXky8Z7tffdYUHbe11bPCV5jYlK6DVdKLWLm0f5I/QlL0Kmw==", + "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": { - "esprima": "^3.1.3", - "estraverse": "^4.2.0", - "esutils": "^2.0.2", - "optionator": "^0.8.1", - "source-map": "~0.6.1" + "license": "MIT", + "dependencies": { + "type-fest": "^0.20.2" }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "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, + "license": "MIT", "dependencies": { - "esprima": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz", - "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=", - "dev": true - } + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" } }, - "eslint": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-6.1.0.tgz", - "integrity": "sha512-QhrbdRD7ofuV09IuE2ySWBz0FyXCq0rriLTZXZqaWSI79CVtHVRdkFuFTViiqzZhkCgfOh9USpriuGN2gIpZDQ==", + "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": { - "@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.3.1", - "eslint-visitor-keys": "^1.0.0", - "espree": "^6.0.0", - "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": "^11.7.0", - "ignore": "^4.0.6", - "import-fresh": "^3.0.0", - "imurmurhash": "^0.1.4", - "inquirer": "^6.4.1", - "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.2", - "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": "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 - }, - "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" - } - }, - "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": "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" - } - }, - "glob-parent": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.0.0.tgz", - "integrity": "sha512-Z2RwiujPRGluePM6j699ktJYxmPpJKCfpGA13jz2hmFZC7gKetzrWvg5KN3+OsIFmydGyZ1AVwERCq1w/ZZwRg==", - "dev": true, - "requires": { - "is-glob": "^4.0.1" - } - }, - "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": "6.5.0", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-6.5.0.tgz", - "integrity": "sha512-scfHejeG/lVZSpvCXpsB4j/wQNPM5JC8kiElOI0OUTwmc1RTpXr4H32/HOlQHcZiYl2z2VElwuCVDRG8vFmbnA==", - "dev": true, - "requires": { - "ansi-escapes": "^3.2.0", - "chalk": "^2.4.2", - "cli-cursor": "^2.1.0", - "cli-width": "^2.0.0", - "external-editor": "^3.0.3", - "figures": "^2.0.0", - "lodash": "^4.17.12", - "mute-stream": "0.0.7", - "run-async": "^2.2.0", - "rxjs": "^6.4.0", - "string-width": "^2.1.0", - "strip-ansi": "^5.1.0", - "through": "^2.3.6" - } - }, - "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.7", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz", - "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=", - "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" - } - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - }, - "strip-json-comments": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.0.1.tgz", - "integrity": "sha512-VTyMAUfdm047mwKl+u79WIdrZxtFtn+nBxHeb844XBQ9uMNTuTHdx2hc5RiAJYqwTj3wc/xe5HLSdJSkJ+WfZw==", - "dev": true - }, - "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 OR CC0-1.0)", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "eslint-config-prettier": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-6.0.0.tgz", - "integrity": "sha512-vDrcCFE3+2ixNT5H83g28bO/uYAwibJxerXPj+E7op4qzBCsAV36QfvdAyVOoNxKAH2Os/e01T/2x++V0LPukA==", + "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": { - "get-stdin": "^6.0.0" - }, - "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 - } + "license": "MIT", + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, - "eslint-import-resolver-node": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.2.tgz", - "integrity": "sha512-sfmTqJfPSizWu4aymbPr4Iidp5yKm8yDkHp+Ir3YiTHiiDfxh69mOUsmiqW6RZ9zRXFaF64GtYmN7e+8GHBv6Q==", + "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": { - "debug": "^2.6.9", - "resolve": "^1.5.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" } }, - "eslint-module-utils": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.4.1.tgz", - "integrity": "sha512-H6DOj+ejw7Tesdgbfs4jeS4YMFrT8uI8xwd1gtQqXssaR0EQ26L+2O/w6wkYFy2MymON0fTwHmXBvvfLNZVZEw==", - "dev": true, - "requires": { - "debug": "^2.6.8", - "pkg-dir": "^2.0.0" - } - }, - "eslint-plugin-import": { - "version": "2.18.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.18.2.tgz", - "integrity": "sha512-5ohpsHAiUBRNaBWAF08izwUGlbrJoJJ+W9/TBwsGoR1MnlgfwMIKrFeSjWbt6moabiXW9xNvtFz+97KHRfI4HQ==", - "dev": true, - "requires": { - "array-includes": "^3.0.3", - "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.0", - "has": "^1.0.3", - "minimatch": "^3.0.4", - "object.values": "^1.1.0", - "read-pkg-up": "^2.0.0", - "resolve": "^1.11.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" - } - } + "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" } }, - "eslint-scope": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.0.0.tgz", - "integrity": "sha512-oYrhJW7S0bxAFDvWqzvMPRm6pcgcnWc4QnofCAqRTRfQC0JcwenzGglTtsLyIuuWFfkqDG9vz67cnttSd53djw==", + "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, - "requires": { - "esrecurse": "^4.1.0", - "estraverse": "^4.1.1" - } + "license": "BSD-3-Clause" }, - "eslint-utils": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.4.0.tgz", - "integrity": "sha512-7ehnzPaP5IIEh1r1tkjuIrxqhNkzUJa9z3R92tLJdZIVdWaczEhr3EbhGtsMrVxi1KeR8qA7Off6SWc5WNQqyQ==", + "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": { - "eslint-visitor-keys": "^1.0.0" + "license": "Apache-2.0", + "engines": { + "node": ">=6.9.0" } }, - "eslint-visitor-keys": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz", - "integrity": "sha512-qzm/XxIbxm/FHyH341ZrbnMUpe+5Bocte9xkmFMzPMjRaZMcXww+MpBptFvtU+79L362nqiLhekCxCxDPaUMBQ==", - "dev": true - }, - "espree": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/espree/-/espree-6.0.0.tgz", - "integrity": "sha512-lJvCS6YbCn3ImT3yKkPe0+tJ+mH6ljhGNjHQH9mRtiO6gjhVAOhVXW1yjnwqGwTkK3bGbye+hb00nFNmu0l/1Q==", + "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": { - "acorn": "^6.0.7", - "acorn-jsx": "^5.0.0", - "eslint-visitor-keys": "^1.0.0" - }, + "license": "ISC", "dependencies": { - "acorn": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.2.1.tgz", - "integrity": "sha512-JD0xT5FCRDNyjDda3Lrg/IxFscp9q4tiYtxE1/nOzlKCk7hIRuYjhq1kCNkbPjMRMZuFq20HNQn1I9k8Oj0E+Q==", - "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" } }, - "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.0.1", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.0.1.tgz", - "integrity": "sha512-SmiyZ5zIWH9VM+SRUReLS5Q8a7GxtRdxEBVZpm98rJM7Sb+A9DVCndXfkeFUd3byderg+EbDkfnevfCwynWaNA==", + "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, - "requires": { - "estraverse": "^4.0.0" + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" } }, - "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/@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, - "requires": { - "estraverse": "^4.1.0" + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "estraverse": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.2.0.tgz", - "integrity": "sha1-De4/7TH81GlhjOc0IJn8GvoL2xM=", - "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.0.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.0.0.tgz", - "integrity": "sha512-Dc381HFWJzEOhQ+d8pkNon++bk9h6cdAoAj4iE6Q4y6xgTzySWXlKn05/TVNpjnfRqi/X0EpJEJohPjNI3zpVA==", - "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" }, - "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==", + "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": { - "md5.js": "^1.3.4", - "safe-buffer": "^5.1.1" + "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" } }, - "exec-sh": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/exec-sh/-/exec-sh-0.3.2.tgz", - "integrity": "sha512-9sLAvzhI5nc8TpuQUh4ahMdCrWT00wPWz7j47/emR5+2qEfoZP5zzUXvx+vdx+H6ohhnsYC31iX04QLYJK8zTg==", - "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/@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, - "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": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" } }, - "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 - }, - "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/@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": { + "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" } }, - "expect": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/expect/-/expect-24.8.0.tgz", - "integrity": "sha512-/zYvP8iMDrzaaxHVa724eJBCKqSHmO0FA7EDkBiRHxg6OipmMn1fN+C8T9L9K8yr7UONkOifu6+LLH+z76CnaA==", + "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": { - "@jest/types": "^24.8.0", - "ansi-styles": "^3.2.0", - "jest-get-type": "^24.8.0", - "jest-matcher-utils": "^24.8.0", - "jest-message-util": "^24.8.0", - "jest-regex-util": "^24.3.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" } }, - "extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", - "dev": true - }, - "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/@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, + "license": "MIT", + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "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/@istanbuljs/load-nyc-config/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": { - "extend": "^3.0.0", - "spawn-sync": "^1.0.15", - "tmp": "^0.0.29" + "license": "MIT", + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" } }, - "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/@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, + "license": "MIT", + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "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": "2.0.1", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", - "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=" - }, - "fast-glob": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.0.4.tgz", - "integrity": "sha512-wkIbV6qg37xTJwqSsdnIphL1e+LaGz4AIQqr00mIubMaEhv1/HEmJ0uuCGZRNRUkZZmOB5mJKO0ZUTVq+SxMQg==", - "dev": true, - "requires": { - "@nodelib/fs.stat": "^2.0.1", - "@nodelib/fs.walk": "^1.2.1", - "glob-parent": "^5.0.0", - "is-glob": "^4.0.1", - "merge2": "^1.2.3", - "micromatch": "^4.0.2" - }, - "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.0.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.0.0.tgz", - "integrity": "sha512-Z2RwiujPRGluePM6j699ktJYxmPpJKCfpGA13jz2hmFZC7gKetzrWvg5KN3+OsIFmydGyZ1AVwERCq1w/ZZwRg==", - "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" - } - } + "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, + "license": "MIT", + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" } }, - "fast-json-stable-stringify": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", - "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=" - }, - "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/@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, + "license": "MIT", + "engines": { + "node": ">=8" + } }, - "fastq": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.6.0.tgz", - "integrity": "sha512-jmxqQ3Z/nXoeyDmWAzF9kH1aGZSis6e/SbfPmJpUnyZ0ogr6iscHQaml4wsEepEWSdtmpy+eVXmCRIMpxaXqOA==", + "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": { - "reusify": "^1.0.0" + "license": "MIT", + "engines": { + "node": ">=8" } }, - "fb-watchman": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.0.tgz", - "integrity": "sha1-VOmr99+i8mzZsWNsWIwa/AXeXVg=", + "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": { - "bser": "^2.0.0" + "license": "MIT", + "dependencies": { + "@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" } }, - "figgy-pudding": { - "version": "3.5.1", - "resolved": "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.1.tgz", - "integrity": "sha512-vNKxJHTEKNThjfrdJwHc7brvM6eVevuO5nTj6ez8ZQ1qbXTvGthucRF7S4vf2cr71QVnT70V34v0S1DyQsti0w==", - "dev": true + "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, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } }, - "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/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": { - "escape-string-regexp": "^1.0.5", - "object-assign": "^4.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" } }, - "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/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": { - "flat-cache": "^2.0.1" + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" } }, - "file-loader": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-4.1.0.tgz", - "integrity": "sha512-ajDk1nlByoalZAGR4b0H6oD+EGlWnyW1qbSxzaUc7RFiqmn+RbXQQRbTc72jsiUIlVusJ4Et58ltds8ZwTfnAw==", + "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" + }, + "node_modules/@jest/console/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", "dev": true, - "requires": { - "loader-utils": "^1.2.3", - "schema-utils": "^2.0.0" + "license": "MIT", + "engines": { + "node": ">=8" } }, - "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/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, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "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.2.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.0.tgz", - "integrity": "sha512-pZbTJpoUsCzV48Mc9Nh51VbwO0X9cuPFE8gYwx9BTCt9SF8/b7Zljd2fVgOxhIF/HDTKgpVzs+GPhyKfjLLFRQ==", - "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/core": { + "version": "30.0.0", + "resolved": "https://registry.npmjs.org/@jest/core/-/core-30.0.0.tgz", + "integrity": "sha512-1zU39zFtWSl5ZuDK3Rd6P8S28MmS4F11x6Z4CURrgJ99iaAJg68hmdJ2SAHEEO6ociaNk43UhUYtHxWKEWoNYw==", + "dev": true, + "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 } } }, - "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/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": { - "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" } }, - "flat-cache": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz", - "integrity": "sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==", + "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": { - "flatted": "^2.0.0", - "rimraf": "2.6.3", - "write": "1.0.3" + "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" } }, - "flatted": { + "node_modules/@jest/core/node_modules/color-convert": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.1.tgz", - "integrity": "sha512-a1hQMktqW9Nmqr5aktAux3JMNqaucxGcjtjWnZLHX7yyPCmlSV3M54nGYbqT8K+0GhF3NBgmJCc3ma+WOgX8Jg==", - "dev": true - }, - "flatten": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/flatten/-/flatten-1.0.2.tgz", - "integrity": "sha1-2uRqnXj74lKSJYzB54CkHZXAN4I=", - "dev": true - }, - "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==", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, - "requires": { - "inherits": "^2.0.3", - "readable-stream": "^2.3.6" + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" } }, - "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/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, + "license": "MIT" }, - "for-own": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/for-own/-/for-own-1.0.0.tgz", - "integrity": "sha1-xjMy9BXO3EsE2/5wz4NklMU8tEs=", + "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, - "requires": { - "for-in": "^1.0.1" + "license": "MIT", + "engines": { + "node": ">=8" } }, - "forever-agent": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", - "dev": true - }, - "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/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": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "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/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": { - "map-cache": "^0.2.2" + "license": "MIT", + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.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/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": { - "inherits": "^2.0.1", - "readable-stream": "^2.0.0" + "license": "MIT", + "dependencies": { + "@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" } }, - "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/@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": { - "null-check": "^1.0.0" + "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 + } } }, - "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/@jest/expect": { + "version": "30.0.0", + "resolved": "https://registry.npmjs.org/@jest/expect/-/expect-30.0.0.tgz", + "integrity": "sha512-XZ3j6syhMeKiBknmmc8V3mNIb44kxLTbOQtaXA4IFdHy+vEN0cnXRzbRjdGBtrp4k1PWyMWNU3Fjz3iejrhpQg==", + "dev": true, + "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" + } }, - "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/@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": { - "graceful-fs": "^4.1.2", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" + "license": "MIT", + "dependencies": { + "@jest/get-type": "30.0.0" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" } }, - "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/@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, + "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" + } }, - "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/@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": { - "graceful-fs": "^4.1.2", - "iferr": "^0.1.5", - "imurmurhash": "^0.1.4", - "readable-stream": "1 || 2" + "license": "MIT", + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" } }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", - "dev": true + "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, + "license": "MIT", + "dependencies": { + "@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" + } }, - "fsevents": { - "version": "1.2.9", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.9.tgz", - "integrity": "sha512-oeyj2H3EjjonWcFjD5NvZNE9Rqe4UW+nQBU2HNeKw0koVLEFIhtyETyAakeAM3de7Z/SW5kcA+fZUait9EApnw==", + "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, - "optional": true, - "requires": { - "nan": "^2.12.1", - "node-pre-gyp": "^0.12.0" + "license": "MIT", + "dependencies": { + "@types/node": "*", + "jest-regex-util": "30.0.0" }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" + } + }, + "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, + "license": "MIT", "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.1", - "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": "4.1.1", - "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.5", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minipass": "^2.2.1" - } - }, - "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.3", - "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.1", - "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.3", - "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": "0.0.8", - "bundled": true, - "dev": true, - "optional": true - }, - "minipass": { - "version": "2.3.5", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "^5.1.2", - "yallist": "^3.0.0" - } - }, - "minizlib": { - "version": "1.2.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minipass": "^2.2.1" - } - }, - "mkdirp": { - "version": "0.5.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minimist": "0.0.8" - } - }, - "ms": { - "version": "2.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "needle": { - "version": "2.3.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "debug": "^4.1.0", - "iconv-lite": "^0.4.4", - "sax": "^1.2.4" - } - }, - "node-pre-gyp": { - "version": "0.12.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" - } - }, - "nopt": { - "version": "4.0.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "abbrev": "1", - "osenv": "^0.1.4" - } - }, - "npm-bundled": { - "version": "1.0.6", - "bundled": true, - "dev": true, - "optional": true - }, - "npm-packlist": { - "version": "1.4.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "ignore-walk": "^3.0.1", - "npm-bundled": "^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.0", - "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" - }, - "dependencies": { - "minimist": { - "version": "1.2.0", - "bundled": true, - "dev": true, - "optional": true - } - } - }, - "readable-stream": { - "version": "2.3.6", - "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.6.3", - "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.0", - "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.8", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "chownr": "^1.1.1", - "fs-minipass": "^1.2.5", - "minipass": "^2.3.4", - "minizlib": "^1.1.1", - "mkdirp": "^0.5.0", - "safe-buffer": "^5.1.2", - "yallist": "^3.0.2" - } - }, - "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.0.3", - "bundled": true, - "dev": true, + "@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 } } }, - "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 + "node_modules/@jest/reporters/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/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, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "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" + } + }, + "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" + } + }, + "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, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "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" + }, + "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" + } + }, + "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, + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "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" + } + }, + "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, + "license": "MIT", + "dependencies": { + "@sinclair/typebox": "^0.34.0" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" + } + }, + "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" + } + }, + "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" + } + }, + "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, + "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-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/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" + }, + "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, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "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, + "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" + } + }, + "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, + "license": "MIT", + "dependencies": { + "@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" + } + }, + "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, + "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" + } + }, + "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" + } + }, + "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" + } + }, + "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, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "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, + "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/transform/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/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" + }, + "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" + } + }, + "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, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "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" + } + }, + "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" + } + }, + "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, + "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/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, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "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, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "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, + "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" + } + }, + "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" + } + }, + "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, + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "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" + } + }, + "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" + }, + "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, + "license": "MIT", + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "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, + "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": { + "@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" + } + }, + "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, + "license": "Apache-2.0", + "engines": { + "node": ">=10.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/streamich" + }, + "peerDependencies": { + "tslib": "2" + } + }, + "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, + "license": "MIT", + "optional": true, + "dependencies": { + "@emnapi/core": "^1.4.3", + "@emnapi/runtime": "^1.4.3", + "@tybys/wasm-util": "^0.9.0" + } + }, + "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, + "license": "MIT", + "optional": true + }, + "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, + "license": "MIT", + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "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" + } + }, + "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, + "license": "MIT", + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "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, + "hasInstallScript": true, + "license": "MIT", + "optional": true, + "dependencies": { + "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" + } + }, + "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, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "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, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "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, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "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, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "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" + } + }, + "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, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "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, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "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, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "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, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "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, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "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, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "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, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "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, + "license": "MIT", + "optional": true, + "engines": { + "node": ">=14" + } + }, + "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" + } + }, + "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, + "license": "MIT" + }, + "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, + "license": "MIT" + }, + "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, + "license": "BSD-3-Clause", + "dependencies": { + "type-detect": "4.0.8" + } + }, + "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, + "license": "BSD-3-Clause", + "dependencies": { + "@sinonjs/commons": "^3.0.1" + } + }, + "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, + "license": "MIT", + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "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, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" + } + }, + "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" + } + }, + "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" + } + }, + "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, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.20.7" + } + }, + "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, + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, + "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, + "license": "MIT", + "dependencies": { + "@types/estree": "*", + "@types/json-schema": "*" + } + }, + "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, + "license": "MIT", + "dependencies": { + "@types/eslint": "*", + "@types/estree": "*" + } + }, + "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, + "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": { + "@types/istanbul-lib-coverage": "*" + } + }, + "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, + "license": "MIT", + "dependencies": { + "@types/istanbul-lib-report": "*" + } + }, + "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" + } + }, + "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" + }, + "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" + }, + "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" + }, + "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, + "license": "MIT", + "dependencies": { + "undici-types": "~7.8.0" + } + }, + "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" + }, + "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/@types/triple-beam/-/triple-beam-1.3.5.tgz", + "integrity": "sha512-6WaYesThRMCl19iryMYP7/x2OVgCtbIVflDGFpWnb9irXI3UjYE4AzmYuiUKY1AJstGijoY+MgUszMgRxIYTYw==", + "dev": true, + "license": "MIT" + }, + "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": "*" + } + }, + "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, + "license": "MIT" + }, + "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" + }, + "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" + ] + }, + "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, + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "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" + ] + }, + "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" + ] + }, + "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, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ] + }, + "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, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "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" + ] + }, + "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" + ] + }, + "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" + ] + }, + "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" + ] + }, + "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" + ] + }, + "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" + ] + }, + "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" + ] + }, + "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, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "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, + "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": { + "@napi-rs/wasm-runtime": "^0.2.11" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "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" + ] + }, + "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, + "license": "MIT", + "dependencies": { + "@webassemblyjs/helper-numbers": "1.13.2", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2" + } + }, + "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" + }, + "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" + }, + "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" + }, + "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, + "license": "MIT", + "dependencies": { + "@webassemblyjs/floating-point-hex-parser": "1.13.2", + "@webassemblyjs/helper-api-error": "1.13.2", + "@xtuc/long": "4.2.2" + } + }, + "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" + }, + "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, + "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" + } + }, + "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" + } + }, + "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" + } + }, + "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" + }, + "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, + "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" + } + }, + "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, + "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" + } + }, + "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" + } + }, + "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, + "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" + } + }, + "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" + } + }, + "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" + } + }, + "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" + }, + "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" + }, + "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" + } + }, + "node_modules/aggregate-error": { + "version": "4.0.1", + "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" + } + }, + "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, + "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": { + "ajv": "^8.0.0" + }, + "peerDependencies": { + "ajv": "^8.0.0" + }, + "peerDependenciesMeta": { + "ajv": { + "optional": true + } + } + }, + "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, + "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": { + "type-fest": "^0.21.3" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "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, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "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, + "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": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "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, + "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": { + "sprintf-js": "~1.0.2" + } + }, + "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" + } + }, + "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, + "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": { + "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" + } + }, + "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, + "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/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, + "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": { + "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" + } + }, + "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" + } + }, + "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, + "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/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/autoprefixer" + }, + { + "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" + } + }, + "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, + "license": "MIT", + "dependencies": { + "possible-typed-array-names": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "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, + "license": "MIT", + "dependencies": { + "@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" + } + }, + "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, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "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, + "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/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": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.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" + } + }, + "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" + } + }, + "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" + } + }, + "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, + "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": { + "@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" + } + }, + "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, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, + "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" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "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" + } + }, + "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, + "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": { + "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" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "CC-BY-4.0" + }, + "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" + } + }, + "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, + "license": "MIT", + "dependencies": { + "chalk": "^5.2.0" + }, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/chalk/chalk-template?sponsor=1" + } + }, + "node_modules/char-regex": { + "version": "1.0.2", + "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" + } + }, + "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, + "license": "MIT", + "optional": true, + "dependencies": { + "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" + } + }, + "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" + }, + "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" + } + }, + "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" + } + }, + "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" + } + }, + "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" + } }, - "gauge": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-1.2.7.tgz", - "integrity": "sha1-6c7FSD09TuDvRLYKfZnkk14TbZM=", + "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, - "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": "MIT", + "dependencies": { + "get-east-asian-width": "^1.0.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "get-caller-file": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", - "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==", - "dev": true + "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" + } }, - "get-own-enumerable-property-symbols": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.0.tgz", - "integrity": "sha512-CIJYJC4GGF06TakLg8z4GQKvDsx9EMspVxOYih7LerEL/WosUnFIww45CGfxfeKHqlg3twgUrYRT1O3WQqjGCg==", - "dev": true + "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" + } }, - "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/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, - "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", + "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": { - "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" - } - }, - "trim-newlines": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz", - "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=", - "dev": true - } + "yallist": "^3.0.2" } }, - "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 + "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" + } }, - "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/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, - "requires": { - "pump": "^3.0.0" + "license": "ISC", + "bin": { + "semver": "bin/semver" } }, - "get-value": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", - "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=", - "dev": true + "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" + } }, - "getpass": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", - "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", + "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, - "requires": { - "assert-plus": "^1.0.0" + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "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/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" } }, - "git-raw-commits": { - "version": "1.3.6", - "resolved": "https://registry.npmjs.org/git-raw-commits/-/git-raw-commits-1.3.6.tgz", - "integrity": "sha512-svsK26tQ8vEKnMshTDatSIQSMDdz8CxIIqKsvPqbtV23Etmw6VNaFAitu8zwZ0VrOne7FztwPyRLxK7/DIUTQg==", - "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" - } - } + "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" } }, - "git-remote-origin-url": { + "node_modules/merge-stream": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/git-remote-origin-url/-/git-remote-origin-url-2.0.0.tgz", - "integrity": "sha1-UoJlna4hBxRaERJhEq0yFuxfpl8=", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", "dev": true, - "requires": { - "gitconfiglocal": "^1.0.0", - "pify": "^2.3.0" + "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": { - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true - } + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" } }, - "git-semver-tags": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/git-semver-tags/-/git-semver-tags-3.0.0.tgz", - "integrity": "sha512-T4C/gJ9k2Bnxz+PubtcyiMtUUKrC+Nh9Q4zaECcnmVMwJgPhrNyP/Rf+YpdRqsJbCV/+kYrCH24Xg+IeAmbOPg==", + "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, - "requires": { - "meow": "^4.0.0", - "semver": "^6.0.0" + "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": { - "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" - } - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } + "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" } }, - "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/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, - "requires": { - "parse-github-url": "^1.0.2", - "remote-origin-url": "^1.0.0" + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.3" + }, + "peerDependencies": { + "ajv": "^8.8.2" } }, - "gitconfiglocal": { + "node_modules/mini-css-extract-plugin/node_modules/json-schema-traverse": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/gitconfiglocal/-/gitconfiglocal-1.0.0.tgz", - "integrity": "sha1-QdBF84UaXqiPA/JMocYXgRRGS5s=", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", "dev": true, - "requires": { - "ini": "^1.3.2" + "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" } }, - "glob": { - "version": "7.1.4", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.4.tgz", - "integrity": "sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A==", + "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, - "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": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" } }, - "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/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" } }, - "global-dirs": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-0.1.1.tgz", - "integrity": "sha1-sxnA3UYH81PzvpzKTHL8FIxJ9EU=", + "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, - "requires": { - "ini": "^1.3.4" + "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" } }, - "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 + "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" }, - "globby": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/globby/-/globby-10.0.1.tgz", - "integrity": "sha512-sSs4inE1FB2YQiymcmTv6NWENryABjUNPeWhOvmn4SjtKybglsyPZxFB3U1/+L1bYi0rNZDqCLlHyLYDl1Pq5A==", + "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, - "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, + "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": { - "slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true - } + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" } }, - "graceful-fs": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.1.tgz", - "integrity": "sha512-b9usnbDGnD928gJB3LrCmxoibr3VE4U2SMo5PBuBnokWyDADTqDPXg4YpwKF1trpH+UbGp7QLicO3+aWEy0+mw==", - "dev": true + "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" + } }, - "growly": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/growly/-/growly-1.3.0.tgz", - "integrity": "sha1-8QdIy+dq+WS3yWyTxrzCivEgwIE=", - "dev": true + "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" + } }, - "handlebars": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.1.2.tgz", - "integrity": "sha512-nvfrjqvt9xQ8Z/w0ijewdD/vvWDTOweBUm96NTr66Wfvo1mJenBLwcYmPs3TIBP5ruzYGD7Hx/DaM9RmhroGPw==", + "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, - "requires": { - "neo-async": "^2.6.0", - "optimist": "^0.6.1", - "source-map": "^0.6.1", - "uglify-js": "^3.1.4" + "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" } }, - "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/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, - "requires": { - "ajv": "^6.5.5", - "har-schema": "^2.0.0" + "license": "MIT", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" } }, - "has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "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, - "requires": { - "function-bind": "^1.1.1" + "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" } }, - "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/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, - "requires": { - "ansi-regex": "^2.0.0" + "license": "MIT", + "engines": { + "node": ">=0.8.0" } }, - "has-flag": { + "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": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" - }, - "has-symbols": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.0.tgz", - "integrity": "sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q=", - "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=", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", "dev": true, - "requires": { - "get-value": "^2.0.6", - "has-values": "^1.0.0", - "isobject": "^3.0.0" + "license": "MIT", + "engines": { + "node": ">=4" } }, - "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/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" } }, - "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/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, - "requires": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" + "license": "MIT", + "bin": { + "pidtree": "bin/pidtree.js" + }, + "engines": { + "node": ">=0.10" } }, - "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/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, - "requires": { - "inherits": "^2.0.3", - "minimalistic-assert": "^1.0.1" + "license": "ISC", + "bin": { + "semver": "bin/semver" } }, - "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/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, - "requires": { - "hash.js": "^1.0.3", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.1" + "license": "MIT", + "dependencies": { + "shebang-regex": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, - "homedir-polyfill": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz", - "integrity": "sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA==", + "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, - "requires": { - "parse-passwd": "^1.0.0" + "license": "MIT", + "engines": { + "node": ">=0.10.0" } }, - "hosted-git-info": { - "version": "2.8.2", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.2.tgz", - "integrity": "sha512-CyjlXII6LMsPMyUzxpTt8fzh5QwzGqPmQXgY/Jyf4Zfp27t/FvfhwoE/8laaMUcMy816CkWF20I7NeQhwwY88w==", + "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, - "requires": { - "lru-cache": "^5.1.1" + "license": "MIT", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" } }, - "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/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, - "requires": { - "whatwg-encoding": "^1.0.1" + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" } }, - "http-signature": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", - "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", + "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, - "requires": { - "assert-plus": "^1.0.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" + "license": "MIT", + "dependencies": { + "path-key": "^3.0.0" + }, + "engines": { + "node": ">=8" } }, - "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/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" }, - "husky": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/husky/-/husky-3.0.2.tgz", - "integrity": "sha512-WXCtaME2x0o4PJlKY4ap8BzLA+D0zlvefqAvLCPriOOu+x0dpO5uc5tlB7CY6/0SE2EESmoZsj4jW5D09KrJoA==", + "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, - "requires": { - "chalk": "^2.4.2", - "cosmiconfig": "^5.2.1", - "execa": "^1.0.0", - "get-stdin": "^7.0.0", - "is-ci": "^2.0.0", - "opencollective-postinstall": "^2.0.2", - "pkg-dir": "^4.2.0", - "please-upgrade-node": "^3.1.1", - "read-pkg": "^5.1.1", - "run-node": "^1.0.0", - "slash": "^3.0.0" + "license": "MIT", + "engines": { + "node": ">= 0.4" }, - "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.2.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.0.tgz", - "integrity": "sha512-pZbTJpoUsCzV48Mc9Nh51VbwO0X9cuPFE8gYwx9BTCt9SF8/b7Zljd2fVgOxhIF/HDTKgpVzs+GPhyKfjLLFRQ==", - "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 - }, - "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" - } - }, - "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" - } - }, - "slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true - } + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "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/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, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "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" + "license": "MIT", + "engines": { + "node": ">= 0.4" } }, - "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.2", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.2.tgz", - "integrity": "sha512-vdqWBp7MyzdmHkkRWV5nY+PfGRbYbahfuvsBCh277tq+w9zyNi7h5CYJCK0kmzti9kU+O/cB7sE8HvKv6aXAKQ==", - "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/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, - "requires": { - "import-from": "^2.1.0" + "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" } }, - "import-fresh": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.1.0.tgz", - "integrity": "sha512-PpuksHKGt8rXfWEr9m9EHIpgyyaltBy8+eF6GJM0QCAxMgxCfucMF3mjecK2QsJr0amJW7gTqh5/wht0z2UhEQ==", + "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, - "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 - } + "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" } }, - "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/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, - "requires": { - "resolve-from": "^3.0.0" - }, + "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 - } + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2" + }, + "engines": { + "node": ">= 0.4" } }, - "import-local": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/import-local/-/import-local-2.0.0.tgz", - "integrity": "sha512-b6s04m3O+s3CGSbqDIyP4R6aAwAeYlVq9+WUWep6iHa8ETRf9yei1U48C5MmfJmV9AiLYYBKPMq/W+/WRpQmCQ==", - "dev": true, - "requires": { - "pkg-dir": "^3.0.0", - "resolve-cwd": "^2.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.2.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.0.tgz", - "integrity": "sha512-pZbTJpoUsCzV48Mc9Nh51VbwO0X9cuPFE8gYwx9BTCt9SF8/b7Zljd2fVgOxhIF/HDTKgpVzs+GPhyKfjLLFRQ==", - "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/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" } }, - "imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", - "dev": true - }, - "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 - }, - "indexes-of": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/indexes-of/-/indexes-of-1.0.1.tgz", - "integrity": "sha1-8w9xbI4r00bHtn0985FVZqfAVgc=" - }, - "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 - }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "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, - "requires": { - "once": "^1.3.0", + "license": "ISC", + "dependencies": { "wrappy": "1" } }, - "inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true - }, - "ini": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", - "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==", - "dev": true - }, - "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/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" } }, - "invariant": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", - "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", + "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, - "requires": { - "loose-envify": "^1.0.0" + "license": "MIT", + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "invert-kv": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-2.0.0.tgz", - "integrity": "sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA==", - "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/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" } }, - "is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", - "dev": true - }, - "is-binary-path": { + "node_modules/own-keys": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", - "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", + "resolved": "https://registry.npmjs.org/own-keys/-/own-keys-1.0.1.tgz", + "integrity": "sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg==", "dev": true, - "requires": { - "binary-extensions": "^1.0.0" + "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" } }, - "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 - }, - "is-callable": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.4.tgz", - "integrity": "sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA==", - "dev": true - }, - "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/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, - "requires": { - "ci-info": "^2.0.0" + "license": "MIT", + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "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/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, - "requires": { - "kind-of": "^3.0.2" - }, + "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" - } - } - } - }, - "is-date-object": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.1.tgz", - "integrity": "sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY=", - "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 - } + "p-limit": "^4.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "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 - }, - "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 - }, - "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 - }, - "is-finite": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz", - "integrity": "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=", + "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, - "requires": { - "number-is-nan": "^1.0.0" + "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" } }, - "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 - }, - "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 - }, - "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/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, - "requires": { - "is-extglob": "^2.1.1" + "license": "MIT", + "engines": { + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "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, - "requires": { - "kind-of": "^3.0.2" - }, + "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" - } - } + "aggregate-error": "^4.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "is-obj": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", - "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=", - "dev": true - }, - "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/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, - "requires": { - "symbol-observable": "^1.1.0" + "license": "MIT", + "engines": { + "node": ">=6" } }, - "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/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" }, - "is-path-in-cwd": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-2.1.0.tgz", - "integrity": "sha512-rNocXHgipO+rvnP6dk3zI20RpOtrAM/kzbB258Uw5BWr3TpXi861yzjo16Dn4hUox07iw5AyeMLHWsujkjzvRQ==", + "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, - "requires": { - "is-path-inside": "^2.1.0" + "license": "MIT", + "dependencies": { + "callsites": "^3.1.0" + }, + "engines": { + "node": ">=8" } }, - "is-path-inside": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-2.1.0.tgz", - "integrity": "sha512-wiyhTzfDWsvwAW53OBWF5zuvaOGlZ6PwYxAbPVDhpm+gM09xKQGjBq/8uYN12aDvMxnAnq3dxTyoSoRNmg5YFg==", + "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, - "requires": { - "path-is-inside": "^1.0.2" + "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" } }, - "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 - }, - "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/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, - "requires": { - "isobject": "^3.0.1" + "license": "MIT", + "engines": { + "node": ">= 0.10" } }, - "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 - }, - "is-regex": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.4.tgz", - "integrity": "sha1-VRdIm1RwkbCTDglWVM7SXul+lJE=", + "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, - "requires": { - "has": "^1.0.1" + "license": "MIT", + "dependencies": { + "entities": "^6.0.0" + }, + "funding": { + "url": "https://github.com/inikulin/parse5?sponsor=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 - }, - "is-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", - "dev": true - }, - "is-symbol": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.2.tgz", - "integrity": "sha512-HS8bZ9ox60yCJLH9snBpIwv9pYUAkcuLhSA1oero1UB5y9aiQpRA8y2ex945AOtCZL1lJDeIk3G5LthswI46Lw==", + "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, - "requires": { - "has-symbols": "^1.0.0" + "license": "MIT", + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" } }, - "is-text-path": { + "node_modules/path-is-absolute": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-text-path/-/is-text-path-1.0.1.tgz", - "integrity": "sha1-Thqg+1G/vLPpJogAE5cgLBd1tm4=", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", "dev": true, - "requires": { - "text-extensions": "^1.0.0" + "license": "MIT", + "engines": { + "node": ">=0.10.0" } }, - "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 - }, - "is-wsl": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", - "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", - "dev": true + "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" + } }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true + "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" }, - "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/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" + } }, - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", - "dev": true + "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" }, - "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/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" + } }, - "istanbul-lib-coverage": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.5.tgz", - "integrity": "sha512-8aXznuEPCJvGnMSRft4udDRDtb1V3pkQkMMI5LI+6HuQz5oQ4J2UFn1H82raA3qJtyOLkkwVqICBQkjnGtn5mA==", - "dev": true + "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" }, - "istanbul-lib-instrument": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-3.3.0.tgz", - "integrity": "sha512-5nnIN4vo5xQZHdXno/YDXJ0G+I3dAm4XgzfSVTPLQpj/zAV2dV6Juy0yaf10/zrJOJeHoN3fraFe+XRq2bFVZA==", - "dev": true, - "requires": { - "@babel/generator": "^7.4.0", - "@babel/parser": "^7.4.3", - "@babel/template": "^7.4.0", - "@babel/traverse": "^7.4.3", - "@babel/types": "^7.4.0", - "istanbul-lib-coverage": "^2.0.5", - "semver": "^6.0.0" + "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" }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" } }, - "istanbul-lib-report": { - "version": "2.0.8", - "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-2.0.8.tgz", - "integrity": "sha512-fHBeG573EIihhAblwgxrSenp0Dby6tJMFR/HvlerBsrCTD5bkUuoNtn3gVh29ZCS824cGGBPn7Sg7cNk+2xUsQ==", + "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": { - "istanbul-lib-coverage": "^2.0.5", - "make-dir": "^2.1.0", - "supports-color": "^6.1.0" + "license": "MIT", + "bin": { + "pidtree": "bin/pidtree.js" + }, + "engines": { + "node": ">=0.10" } }, - "istanbul-lib-source-maps": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-3.0.6.tgz", - "integrity": "sha512-R47KzMtDJH6X4/YW9XTx+jrLnZnscW4VpNN+1PViSYTejLVPWv7oov+Duf8YQSPyVRUvueQqz1TcsC6mooZTXw==", + "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": { - "debug": "^4.1.1", - "istanbul-lib-coverage": "^2.0.5", - "make-dir": "^2.1.0", - "rimraf": "^2.6.3", - "source-map": "^0.6.1" - }, - "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", + "engines": { + "node": ">=6" } }, - "istanbul-reports": { - "version": "2.2.6", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-2.2.6.tgz", - "integrity": "sha512-SKi4rnMyLBKe0Jy2uUdx28h8oG7ph2PPuQPvIAh31d+Ci+lSiEu4C+h3oBPuJ9+mPKhOyW0M8gY4U5NM1WLeXA==", - "dev": true, - "requires": { - "handlebars": "^4.1.2" - } - }, - "jest": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/jest/-/jest-24.8.0.tgz", - "integrity": "sha512-o0HM90RKFRNWmAWvlyV8i5jGZ97pFwkeVoGvPW1EtLTgJc2+jcuqcbbqcSZLE/3f2S5pt0y2ZBETuhpWNl1Reg==", - "dev": true, - "requires": { - "import-local": "^2.0.0", - "jest-cli": "^24.8.0" - }, - "dependencies": { - "jest-cli": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-24.8.0.tgz", - "integrity": "sha512-+p6J00jSMPQ116ZLlHJJvdf8wbjNbZdeSX9ptfHX06/MSNaXmKihQzx5vQcw0q2G6JsdVkUIdWbOWtSnaYs3yA==", - "dev": true, - "requires": { - "@jest/core": "^24.8.0", - "@jest/test-result": "^24.8.0", - "@jest/types": "^24.8.0", - "chalk": "^2.0.1", - "exit": "^0.1.2", - "import-local": "^2.0.0", - "is-ci": "^2.0.0", - "jest-config": "^24.8.0", - "jest-util": "^24.8.0", - "jest-validate": "^24.8.0", - "prompts": "^2.0.1", - "realpath-native": "^1.1.0", - "yargs": "^12.0.2" - } - } + "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" } }, - "jest-changed-files": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-24.8.0.tgz", - "integrity": "sha512-qgANC1Yrivsq+UrLXsvJefBKVoCsKB0Hv+mBb6NMjjZ90wwxCDmU3hsCXBya30cH+LnPYjwgcU65i6yJ5Nfuug==", - "dev": true, - "requires": { - "@jest/types": "^24.8.0", - "execa": "^1.0.0", - "throat": "^4.0.0" - } - }, - "jest-config": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-24.8.0.tgz", - "integrity": "sha512-Czl3Nn2uEzVGsOeaewGWoDPD8GStxCpAe0zOYs2x2l0fZAgPbCr3uwUkgNKV3LwE13VXythM946cd5rdGkkBZw==", - "dev": true, - "requires": { - "@babel/core": "^7.1.0", - "@jest/test-sequencer": "^24.8.0", - "@jest/types": "^24.8.0", - "babel-jest": "^24.8.0", - "chalk": "^2.0.1", - "glob": "^7.1.1", - "jest-environment-jsdom": "^24.8.0", - "jest-environment-node": "^24.8.0", - "jest-get-type": "^24.8.0", - "jest-jasmine2": "^24.8.0", - "jest-regex-util": "^24.3.0", - "jest-resolve": "^24.8.0", - "jest-util": "^24.8.0", - "jest-validate": "^24.8.0", - "micromatch": "^3.1.10", - "pretty-format": "^24.8.0", - "realpath-native": "^1.1.0" - } - }, - "jest-diff": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-24.8.0.tgz", - "integrity": "sha512-wxetCEl49zUpJ/bvUmIFjd/o52J+yWcoc5ZyPq4/W1LUKGEhRYDIbP1KcF6t+PvqNrGAFk4/JhtxDq/Nnzs66g==", - "dev": true, - "requires": { - "chalk": "^2.0.1", - "diff-sequences": "^24.3.0", - "jest-get-type": "^24.8.0", - "pretty-format": "^24.8.0" - } - }, - "jest-docblock": { - "version": "24.3.0", - "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-24.3.0.tgz", - "integrity": "sha512-nlANmF9Yq1dufhFlKG9rasfQlrY7wINJbo3q01tu56Jv5eBU5jirylhF2O5ZBnLxzOVBGRDz/9NAwNyBtG4Nyg==", - "dev": true, - "requires": { - "detect-newline": "^2.1.0" - } - }, - "jest-each": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-24.8.0.tgz", - "integrity": "sha512-NrwK9gaL5+XgrgoCsd9svsoWdVkK4gnvyhcpzd6m487tXHqIdYeykgq3MKI1u4I+5Zf0tofr70at9dWJDeb+BA==", - "dev": true, - "requires": { - "@jest/types": "^24.8.0", - "chalk": "^2.0.1", - "jest-get-type": "^24.8.0", - "jest-util": "^24.8.0", - "pretty-format": "^24.8.0" - } - }, - "jest-environment-jsdom": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-24.8.0.tgz", - "integrity": "sha512-qbvgLmR7PpwjoFjM/sbuqHJt/NCkviuq9vus9NBn/76hhSidO+Z6Bn9tU8friecegbJL8gzZQEMZBQlFWDCwAQ==", - "dev": true, - "requires": { - "@jest/environment": "^24.8.0", - "@jest/fake-timers": "^24.8.0", - "@jest/types": "^24.8.0", - "jest-mock": "^24.8.0", - "jest-util": "^24.8.0", - "jsdom": "^11.5.1" - } - }, - "jest-environment-node": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-24.8.0.tgz", - "integrity": "sha512-vIGUEScd1cdDgR6sqn2M08sJTRLQp6Dk/eIkCeO4PFHxZMOgy+uYLPMC4ix3PEfM5Au/x3uQ/5Tl0DpXXZsJ/Q==", - "dev": true, - "requires": { - "@jest/environment": "^24.8.0", - "@jest/fake-timers": "^24.8.0", - "@jest/types": "^24.8.0", - "jest-mock": "^24.8.0", - "jest-util": "^24.8.0" - } - }, - "jest-get-type": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-24.8.0.tgz", - "integrity": "sha512-RR4fo8jEmMD9zSz2nLbs2j0zvPpk/KCEz3a62jJWbd2ayNo0cb+KFRxPHVhE4ZmgGJEQp0fosmNz84IfqM8cMQ==", - "dev": true - }, - "jest-haste-map": { - "version": "24.8.1", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-24.8.1.tgz", - "integrity": "sha512-SwaxMGVdAZk3ernAx2Uv2sorA7jm3Kx+lR0grp6rMmnY06Kn/urtKx1LPN2mGTea4fCT38impYT28FfcLUhX0g==", - "dev": true, - "requires": { - "@jest/types": "^24.8.0", - "anymatch": "^2.0.0", - "fb-watchman": "^2.0.0", - "fsevents": "^1.2.7", - "graceful-fs": "^4.1.15", - "invariant": "^2.2.4", - "jest-serializer": "^24.4.0", - "jest-util": "^24.8.0", - "jest-worker": "^24.6.0", - "micromatch": "^3.1.10", - "sane": "^4.0.3", - "walker": "^1.0.7" - } - }, - "jest-jasmine2": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-24.8.0.tgz", - "integrity": "sha512-cEky88npEE5LKd5jPpTdDCLvKkdyklnaRycBXL6GNmpxe41F0WN44+i7lpQKa/hcbXaQ+rc9RMaM4dsebrYong==", - "dev": true, - "requires": { - "@babel/traverse": "^7.1.0", - "@jest/environment": "^24.8.0", - "@jest/test-result": "^24.8.0", - "@jest/types": "^24.8.0", - "chalk": "^2.0.1", - "co": "^4.6.0", - "expect": "^24.8.0", - "is-generator-fn": "^2.0.0", - "jest-each": "^24.8.0", - "jest-matcher-utils": "^24.8.0", - "jest-message-util": "^24.8.0", - "jest-runtime": "^24.8.0", - "jest-snapshot": "^24.8.0", - "jest-util": "^24.8.0", - "pretty-format": "^24.8.0", - "throat": "^4.0.0" - } - }, - "jest-junit": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/jest-junit/-/jest-junit-7.0.0.tgz", - "integrity": "sha512-ljUdO0hLyu0A92xk7R2Wet3kj99fmazTo+ZFYQP6b7AGOBxJUj8ZkJWzJ632ajpXko2Y5oNoGR2kvOwiDdu6hg==", + "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, - "requires": { - "jest-validate": "^24.0.0", - "mkdirp": "^0.5.1", - "strip-ansi": "^4.0.0", - "xml": "^1.0.1" - }, + "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" - } - } + "find-up": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "jest-leak-detector": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-24.8.0.tgz", - "integrity": "sha512-cG0yRSK8A831LN8lIHxI3AblB40uhv0z+SsQdW3GoMMVcK+sJwrIIyax5tu3eHHNJ8Fu6IMDpnLda2jhn2pD/g==", + "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": { - "pretty-format": "^24.8.0" + "license": "MIT", + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "jest-matcher-utils": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-24.8.0.tgz", - "integrity": "sha512-lex1yASY51FvUuHgm0GOVj7DCYEouWSlIYmCW7APSqB9v8mXmKSn5+sWVF0MhuASG0bnYY106/49JU1FZNl5hw==", + "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": { - "chalk": "^2.0.1", - "jest-diff": "^24.8.0", - "jest-get-type": "^24.8.0", - "pretty-format": "^24.8.0" + "license": "MIT", + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" } }, - "jest-message-util": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-24.8.0.tgz", - "integrity": "sha512-p2k71rf/b6ns8btdB0uVdljWo9h0ovpnEe05ZKWceQGfXYr4KkzgKo3PBi8wdnd9OtNh46VpNIJynUn/3MKm1g==", + "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, - "requires": { - "@babel/code-frame": "^7.0.0", - "@jest/test-result": "^24.8.0", - "@jest/types": "^24.8.0", - "@types/stack-utils": "^1.0.1", - "chalk": "^2.0.1", - "micromatch": "^3.1.10", - "slash": "^2.0.0", - "stack-utils": "^1.0.1" + "license": "MIT", + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "jest-mock": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-24.8.0.tgz", - "integrity": "sha512-6kWugwjGjJw+ZkK4mDa0Df3sDlUTsV47MSrT0nGQ0RBWJbpODDQ8MHDVtGtUYBne3IwZUhtB7elxHspU79WH3A==", + "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": { - "@jest/types": "^24.8.0" + "license": "MIT", + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" } }, - "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": "24.3.0", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-24.3.0.tgz", - "integrity": "sha512-tXQR1NEOyGlfylyEjg1ImtScwMq8Oh3iJbGTjN7p0J23EuVX1MA8rwU69K4sLbCmwzgCUbVkm0FkSF9TdzOhtg==", - "dev": true - }, - "jest-resolve": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-24.8.0.tgz", - "integrity": "sha512-+hjSzi1PoRvnuOICoYd5V/KpIQmkAsfjFO71458hQ2Whi/yf1GDeBOFj8Gxw4LrApHsVJvn5fmjcPdmoUHaVKw==", - "dev": true, - "requires": { - "@jest/types": "^24.8.0", - "browser-resolve": "^1.11.3", - "chalk": "^2.0.1", - "jest-pnp-resolver": "^1.2.1", - "realpath-native": "^1.1.0" - } - }, - "jest-resolve-dependencies": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-24.8.0.tgz", - "integrity": "sha512-hyK1qfIf/krV+fSNyhyJeq3elVMhK9Eijlwy+j5jqmZ9QsxwKBiP6qukQxaHtK8k6zql/KYWwCTQ+fDGTIJauw==", - "dev": true, - "requires": { - "@jest/types": "^24.8.0", - "jest-regex-util": "^24.3.0", - "jest-snapshot": "^24.8.0" - } - }, - "jest-runner": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-24.8.0.tgz", - "integrity": "sha512-utFqC5BaA3JmznbissSs95X1ZF+d+4WuOWwpM9+Ak356YtMhHE/GXUondZdcyAAOTBEsRGAgH/0TwLzfI9h7ow==", - "dev": true, - "requires": { - "@jest/console": "^24.7.1", - "@jest/environment": "^24.8.0", - "@jest/test-result": "^24.8.0", - "@jest/types": "^24.8.0", - "chalk": "^2.4.2", - "exit": "^0.1.2", - "graceful-fs": "^4.1.15", - "jest-config": "^24.8.0", - "jest-docblock": "^24.3.0", - "jest-haste-map": "^24.8.0", - "jest-jasmine2": "^24.8.0", - "jest-leak-detector": "^24.8.0", - "jest-message-util": "^24.8.0", - "jest-resolve": "^24.8.0", - "jest-runtime": "^24.8.0", - "jest-util": "^24.8.0", - "jest-worker": "^24.6.0", - "source-map-support": "^0.5.6", - "throat": "^4.0.0" - } - }, - "jest-runtime": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-24.8.0.tgz", - "integrity": "sha512-Mq0aIXhvO/3bX44ccT+czU1/57IgOMyy80oM0XR/nyD5zgBcesF84BPabZi39pJVA6UXw+fY2Q1N+4BiVUBWOA==", - "dev": true, - "requires": { - "@jest/console": "^24.7.1", - "@jest/environment": "^24.8.0", - "@jest/source-map": "^24.3.0", - "@jest/transform": "^24.8.0", - "@jest/types": "^24.8.0", - "@types/yargs": "^12.0.2", - "chalk": "^2.0.1", - "exit": "^0.1.2", - "glob": "^7.1.3", - "graceful-fs": "^4.1.15", - "jest-config": "^24.8.0", - "jest-haste-map": "^24.8.0", - "jest-message-util": "^24.8.0", - "jest-mock": "^24.8.0", - "jest-regex-util": "^24.3.0", - "jest-resolve": "^24.8.0", - "jest-snapshot": "^24.8.0", - "jest-util": "^24.8.0", - "jest-validate": "^24.8.0", - "realpath-native": "^1.1.0", - "slash": "^2.0.0", - "strip-bom": "^3.0.0", - "yargs": "^12.0.2" - } - }, - "jest-serializer": { - "version": "24.4.0", - "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-24.4.0.tgz", - "integrity": "sha512-k//0DtglVstc1fv+GY/VHDIjrtNjdYvYjMlbLUed4kxrE92sIUewOi5Hj3vrpB8CXfkJntRPDRjCrCvUhBdL8Q==", - "dev": true - }, - "jest-snapshot": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-24.8.0.tgz", - "integrity": "sha512-5ehtWoc8oU9/cAPe6fez6QofVJLBKyqkY2+TlKTOf0VllBB/mqUNdARdcjlZrs9F1Cv+/HKoCS/BknT0+tmfPg==", - "dev": true, - "requires": { - "@babel/types": "^7.0.0", - "@jest/types": "^24.8.0", - "chalk": "^2.0.1", - "expect": "^24.8.0", - "jest-diff": "^24.8.0", - "jest-matcher-utils": "^24.8.0", - "jest-message-util": "^24.8.0", - "jest-resolve": "^24.8.0", - "mkdirp": "^0.5.1", - "natural-compare": "^1.4.0", - "pretty-format": "^24.8.0", - "semver": "^5.5.0" - } - }, - "jest-util": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-24.8.0.tgz", - "integrity": "sha512-DYZeE+XyAnbNt0BG1OQqKy/4GVLPtzwGx5tsnDrFcax36rVE3lTA5fbvgmbVPUZf9w77AJ8otqR4VBbfFJkUZA==", - "dev": true, - "requires": { - "@jest/console": "^24.7.1", - "@jest/fake-timers": "^24.8.0", - "@jest/source-map": "^24.3.0", - "@jest/test-result": "^24.8.0", - "@jest/types": "^24.8.0", - "callsites": "^3.0.0", - "chalk": "^2.0.1", - "graceful-fs": "^4.1.15", - "is-ci": "^2.0.0", - "mkdirp": "^0.5.1", - "slash": "^2.0.0", - "source-map": "^0.6.0" + "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" } }, - "jest-validate": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-24.8.0.tgz", - "integrity": "sha512-+/N7VOEMW1Vzsrk3UWBDYTExTPwf68tavEPKDnJzrC6UlHtUDU/fuEdXqFoHzv9XnQ+zW6X3qMZhJ3YexfeLDA==", - "dev": true, - "requires": { - "@jest/types": "^24.8.0", - "camelcase": "^5.0.0", - "chalk": "^2.0.1", - "jest-get-type": "^24.8.0", - "leven": "^2.1.0", - "pretty-format": "^24.8.0" - } - }, - "jest-watcher": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-24.8.0.tgz", - "integrity": "sha512-SBjwHt5NedQoVu54M5GEx7cl7IGEFFznvd/HNT8ier7cCAx/Qgu9ZMlaTQkvK22G1YOpcWBLQPFSImmxdn3DAw==", - "dev": true, - "requires": { - "@jest/test-result": "^24.8.0", - "@jest/types": "^24.8.0", - "@types/yargs": "^12.0.9", - "ansi-escapes": "^3.0.0", - "chalk": "^2.0.1", - "jest-util": "^24.8.0", - "string-length": "^2.0.0" - }, - "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 + "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" } }, - "jest-worker": { - "version": "24.6.0", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-24.6.0.tgz", - "integrity": "sha512-jDwgW5W9qGNvpI1tNnvajh0a5IE/PuGLFmHk6aR/BZFz8tSgGw17GsDPXAJ6p91IvYDjOw8GpFbvvZGAK+DPQQ==", + "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": { - "merge-stream": "^1.0.1", - "supports-color": "^6.1.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" } }, - "js-levenshtein": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/js-levenshtein/-/js-levenshtein-1.1.6.tgz", - "integrity": "sha512-X2BB11YZtrRqY4EnQcLX5Rh373zbK4alC1FW7D7MBhL2gtcC17cTnr6DmfHZeS0s2rTHjUTMMHfG7gO8SSdw+g==", - "dev": true - }, - "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 - }, - "js-yaml": { - "version": "3.13.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", - "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==", + "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": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" + "license": "MIT", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": ">=7.6.0" + }, + "peerDependencies": { + "postcss": "^8.4.6" } }, - "jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", - "dev": true - }, - "jsdom": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-11.12.0.tgz", - "integrity": "sha512-y8Px43oyiBM13Zc1z780FrfNLJCXTL40EWlty/LXUtcjykRBNgLlCjWXpfSPBl2iv+N7koQN+dvqszHZgT/Fjw==", - "dev": true, - "requires": { - "abab": "^2.0.0", - "acorn": "^5.5.3", - "acorn-globals": "^4.1.0", - "array-equal": "^1.0.0", - "cssom": ">= 0.3.2 < 0.4.0", - "cssstyle": "^1.0.0", - "data-urls": "^1.0.0", - "domexception": "^1.0.1", - "escodegen": "^1.9.1", - "html-encoding-sniffer": "^1.0.2", - "left-pad": "^1.3.0", - "nwsapi": "^2.0.7", - "parse5": "4.0.0", - "pn": "^1.1.0", - "request": "^2.87.0", - "request-promise-native": "^1.0.5", - "sax": "^1.2.4", - "symbol-tree": "^3.2.2", - "tough-cookie": "^2.3.4", - "w3c-hr-time": "^1.0.1", - "webidl-conversions": "^4.0.2", - "whatwg-encoding": "^1.0.3", - "whatwg-mimetype": "^2.1.0", - "whatwg-url": "^6.4.1", - "ws": "^5.2.0", - "xml-name-validator": "^3.0.0" - }, - "dependencies": { - "acorn": { - "version": "5.7.3", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.3.tgz", - "integrity": "sha512-T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw==", - "dev": true + "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" } }, - "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": { - "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 - }, - "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/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": { - "esprima": "^2.7.0" - }, - "dependencies": { - "esprima": { - "version": "2.7.3", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz", - "integrity": "sha1-luO3DVd59q1JzQMmc9HDEnZ7pYE=", - "dev": true + "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" } }, - "json-schema": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", - "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=", - "dev": true - }, - "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==" - }, - "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 - }, - "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 - }, - "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/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, + "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" } }, - "jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", + "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": { - "graceful-fs": "^4.1.6" + "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" } }, - "jsonify": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", - "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=", - "dev": true - }, - "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/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": { - "assert-plus": "1.0.0", - "extsprintf": "1.3.0", - "json-schema": "0.2.3", - "verror": "1.10.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/utilities": "^1.0.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "kind-of": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", - "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", - "dev": true - }, - "kleur": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/kleur/-/kleur-2.0.2.tgz", - "integrity": "sha512-77XF9iTllATmG9lSlIv0qdQ2BQ/h9t0bJllHlbvsQ0zUWfU7Yi0S8L5JXzPZgkefIiajLmBJJ4BsMJmqcf7oxQ==", - "dev": true - }, - "lcid": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/lcid/-/lcid-2.0.0.tgz", - "integrity": "sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA==", + "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": { - "invert-kv": "^2.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", + "postcss-selector-parser": "^6.1.0" + }, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "left-pad": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/left-pad/-/left-pad-1.3.0.tgz", - "integrity": "sha512-XI5MPzVNApjAyhQzphX8BkmKsKUxD4LdyK24iZeQGinBN9yTQT3bFlCBy/aVx2HrNcqQGsdot8ghrjyrvMCoEA==", - "dev": true - }, - "leven": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/leven/-/leven-2.1.0.tgz", - "integrity": "sha1-wuep93IJTe6dNCAq6KzORoeHVYA=", - "dev": true - }, - "levn": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", - "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", + "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, - "requires": { - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2" + "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" } }, - "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 - }, - "lint-staged": { - "version": "9.2.1", - "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-9.2.1.tgz", - "integrity": "sha512-3lGgJfBddCy/WndKdNko+uJbwyYjBD1k+V+SA+phBYWzH265S95KQya/Wln/UL+hOjc7NcjtFYVCUWuAcqYHhg==", + "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": { - "chalk": "^2.4.2", - "commander": "^2.20.0", - "cosmiconfig": "^5.2.1", - "debug": "^4.1.1", - "dedent": "^0.7.0", - "del": "^5.0.0", - "execa": "^2.0.3", - "listr": "^0.14.3", - "log-symbols": "^3.0.0", - "micromatch": "^4.0.2", - "please-upgrade-node": "^3.1.1", - "string-argv": "^0.3.0", - "stringify-object": "^3.3.0" - }, - "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" - } - }, - "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": "2.0.3", - "resolved": "https://registry.npmjs.org/execa/-/execa-2.0.3.tgz", - "integrity": "sha512-iM124nlyGSrXmuyZF1EMe83ESY2chIYVyDRZKgmcDynid2Q2v/+GuE7gNMl6Sy9Niwf4MC0DDxagOxeMPjuLsw==", - "dev": true, - "requires": { - "cross-spawn": "^6.0.5", - "get-stream": "^5.0.0", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^3.0.0", - "onetime": "^5.1.0", - "p-finally": "^2.0.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" - } - }, - "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 - }, - "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 - }, - "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" - } - }, - "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 - }, - "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": "3.1.0", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-3.1.0.tgz", - "integrity": "sha512-Dbl4A/VfiVGLgQv29URL9xshU8XDY1GeLy+fsaZ1AA8JDSfjvr5P5+pzRbWqRSBxk6/DW7MIh8lTM/PaGnP2kg==", - "dev": true, - "requires": { - "path-key": "^3.0.0" - } - }, - "onetime": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.0.tgz", - "integrity": "sha512-5NcSkPHhwTVFIQN+TUqXoS5+dlElHXdpAWu9I0HP20YOtIi+aZ0Ct82jdlILDxjLEAWwvm+qj1m6aEtsDVmm6Q==", - "dev": true, - "requires": { - "mimic-fn": "^2.1.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 + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" }, - "path-key": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.0.tgz", - "integrity": "sha512-8cChqz0RP6SHJkMt48FW0A7+qUOn+OsnOsVtzI59tZ8m+5bCSk7hzwET0pulwOM2YMn9J1efb07KB9l9f30SGg==", - "dev": true - }, - "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": "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" } }, - "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" - } - }, - "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" - } + "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, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" }, - "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 + { + "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" } }, - "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-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": { - "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" - } + "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-0", + "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-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": { - "graceful-fs": "^4.1.2", - "parse-json": "^4.0.0", - "pify": "^3.0.0", - "strip-bom": "^3.0.0" + "license": "MIT", + "peerDependencies": { + "postcss": "^8.1.0" } }, - "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.2.3", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.2.3.tgz", - "integrity": "sha512-fkpz8ejdnEMG3s37wGL07iSBDg99O9D5yflE9RGNH3hRdx9SOwYfnGYdZOUIZitN8E+E2vkq3MUMYMvPYl5ZZA==", - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^2.0.0", - "json5": "^1.0.1" + "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, + "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" } }, - "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-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": { - "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-0", + "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.kebabcase": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/lodash.kebabcase/-/lodash.kebabcase-4.1.1.tgz", - "integrity": "sha1-hImxyw0p/4gZXM7KRI/21swpXDY=", - "dev": true + "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, + "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" + } }, - "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 - }, - "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 + "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, + "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 + } + } }, - "lodash.tail": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/lodash.tail/-/lodash.tail-4.1.1.tgz", - "integrity": "sha1-0jM6NtnncXyK0vfKyv7HwytERmQ=", - "dev": true + "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, + "license": "MIT", + "bin": { + "jiti": "bin/jiti.js" + } }, - "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-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": { - "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": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "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" } }, - "lodash.templatesettings": { + "node_modules/postcss-modules-local-by-default": { "version": "4.2.0", - "resolved": "https://registry.npmjs.org/lodash.templatesettings/-/lodash.templatesettings-4.2.0.tgz", - "integrity": "sha512-stgLz+i3Aa9mZgnjr/O+v9ruKZsPsndy7qPZOchbqk2cnTU1ZaldKK+v7m54WoKIyxiuMZTKT2H81F8BeAc3ZQ==", - "dev": true, - "requires": { - "lodash._reinterpolate": "^3.0.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" } }, - "lodash.uniq": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", - "integrity": "sha1-0CJTc662Uq3BvILklFM5qEJ1R3M=", - "dev": true + "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" + } }, - "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==", - "dev": true, - "requires": { - "chalk": "^2.4.2" + "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" } }, - "log-update": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/log-update/-/log-update-2.3.0.tgz", - "integrity": "sha1-iDKP19HOeTiykoN0bwsbwSayRwg=", - "dev": true, - "requires": { - "ansi-escapes": "^3.0.0", - "cli-cursor": "^2.0.0", - "wrap-ansi": "^3.0.1" + "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" + } + }, + "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": { - "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 - }, - "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" - } - }, - "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" - } + "icss-utils": "^5.0.0" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "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, + "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": { + "@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" } }, - "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-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, - "requires": { - "js-tokens": "^3.0.0 || ^4.0.0" + "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" } }, - "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-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, - "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-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "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==", + "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": { - "yallist": "^3.0.2" + "license": "MIT", + "peerDependencies": { + "postcss": "^8" } }, - "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-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": { - "pify": "^4.0.1", - "semver": "^5.6.0" - }, - "dependencies": { - "pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "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" } }, - "makeerror": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.11.tgz", - "integrity": "sha1-4BpckQnyr3lmDk6LlYd5AYT1qWw=", + "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, - "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/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" } }, - "mamacro": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/mamacro/-/mamacro-0.0.3.tgz", - "integrity": "sha512-qMEwh+UujcQ+kbz3T6V+wAmO2U8veoq2w+3wY8MquqwVA3jChfwY+Tk52GZKDfACEPjuZ7r2oJLejwpt8jtwTA==", - "dev": true - }, - "map-age-cleaner": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz", - "integrity": "sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w==", + "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, - "requires": { - "p-defer": "^1.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" } }, - "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-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, - "requires": { - "object-visit": "^1.0.0" + "license": "MIT", + "peerDependencies": { + "postcss": "^8.0.3" } }, - "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-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, - "requires": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" + "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" } }, - "mem": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/mem/-/mem-4.3.0.tgz", - "integrity": "sha512-qX2bG48pTqYRVmDB37rn/6PT7LcR8T7oAX3bf99u1Tt1nzxYfxkgqDwUwolPlXweM0XzBOBFzSx4kfp7KP1s/w==", + "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": { - "map-age-cleaner": "^0.1.1", - "mimic-fn": "^2.0.0", - "p-is-promise": "^2.0.0" - }, + "license": "MIT", "dependencies": { - "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 - } + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" } }, - "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-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" + }, + "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": { - "errno": "^0.1.3", - "readable-stream": "^2.0.1" + "license": "MIT", + "engines": { + "node": ">= 0.8.0" } }, - "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/prettier": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.5.3.tgz", + "integrity": "sha512-QQtaxnoDJeAkDvDKWCLiwIXkTgRhwYDEQCghU9Z6q03iyek/rxRh/2lC3HB7P8sWT2xC/y5JDctPLBIGzHKbhw==", + "dev": true, + "license": "MIT", + "bin": { + "prettier": "bin/prettier.cjs" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/prettier/prettier?sponsor=1" } }, - "merge-stream": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-1.0.1.tgz", - "integrity": "sha1-QEEgLVCKNCugAXQAjfDCUbjBNeE=", + "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": { - "readable-stream": "^2.0.1" + "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" } }, - "merge2": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.2.4.tgz", - "integrity": "sha512-FYE8xI+6pjFOhokZu0We3S5NKCirLbCzSh2Usf3qEyr4X8U+0jNg9P8RZ4qz+V2UoECLVwSyzU3LxXBaLGtD3A==", - "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==", + "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, - "requires": { - "lodash.camelcase": "^4.3.0" + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "miller-rabin": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", - "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", + "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, - "requires": { - "bn.js": "^4.0.0", - "brorand": "^1.0.1" - } + "license": "MIT" }, - "mime-db": { - "version": "1.40.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.40.0.tgz", - "integrity": "sha512-jYdeOMPy9vnxEqFRRo6ZvTZ8d9oPb+k18PKoYNYUe2stVEBPPwsln/qWzdbmaIvnhZ9v2P+CuecK+fpUfsV2mA==", - "dev": true + "node_modules/prr": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", + "integrity": "sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==", + "dev": true, + "license": "MIT", + "optional": true }, - "mime-types": { - "version": "2.1.24", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.24.tgz", - "integrity": "sha512-WaFHS3MCl5fapm3oLxU4eYDw77IQM2ACcxQ9RIxfaC3ooc6PFuBMGZZsYpvoXS5D5QTWPieo1jjLdAm3TBP3cQ==", + "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, - "requires": { - "mime-db": "1.40.0" + "license": "MIT", + "engines": { + "node": ">=6" } }, - "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 + "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" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/fast-check" + } + ], + "license": "MIT" }, - "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 + "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, + "license": "MIT", + "engines": { + "node": ">=0.6.0", + "teleport": ">=0.2.0" + } }, - "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 + "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, + "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" }, - "minimatch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "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": { - "brace-expansion": "^1.1.7" + "license": "MIT", + "engines": { + "node": ">=8" } }, - "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=" - }, - "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/randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", "dev": true, - "requires": { - "arrify": "^1.0.1", - "is-plain-obj": "^1.1.0" + "license": "MIT", + "dependencies": { + "safe-buffer": "^5.1.0" } }, - "mississippi": { + "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, + "license": "MIT" + }, + "node_modules/read-pkg": { "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" - } - }, - "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" - } - } + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", + "integrity": "sha512-BLq/cCO9two+lBgiTYNqD6GdtK8s4NpaWrl6/rCO9w0TUS8oJl7cmToOZfRYllKTISY6nt1U7jQ53brmKqY6BA==", + "dev": true, + "license": "MIT", + "dependencies": { + "load-json-file": "^4.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^3.0.0" + }, + "engines": { + "node": ">=4" } }, - "mixin-object": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/mixin-object/-/mixin-object-2.0.1.tgz", - "integrity": "sha1-T7lJRB2rGCVA8f4DW6YOGUel5X4=", + "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, - "requires": { - "for-in": "^0.1.3", - "is-extendable": "^0.1.1" - }, + "license": "MIT", "dependencies": { - "for-in": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/for-in/-/for-in-0.1.8.tgz", - "integrity": "sha1-2Hc5COMSVhCZUrH9ubP6hn0ndeE=", - "dev": true - } + "find-up": "^2.0.0", + "read-pkg": "^3.0.0" + }, + "engines": { + "node": ">=4" } }, - "mkdirp": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "node_modules/read-pkg-up/node_modules/find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha512-NWzkk0jSJtTt08+FBFMvXoeZnOJD+jTtsRmBYbAIzJdX6l7dLgR7CTubCM5/eDdPUBvLCeVasP1brfVR/9/EZQ==", "dev": true, - "requires": { - "minimist": "0.0.8" - }, + "license": "MIT", "dependencies": { - "minimist": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", - "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", - "dev": true - } + "locate-path": "^2.0.0" + }, + "engines": { + "node": ">=4" } }, - "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/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, - "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" + "license": "MIT", + "dependencies": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=4" } }, - "mrm-core": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/mrm-core/-/mrm-core-3.3.2.tgz", - "integrity": "sha512-0SOw8U9s0gvcXQQHM736kLSo0XFB6O1Zs2UwNBcURjfMeev/qgP7d0RQRrzN7E+hLem+OPsL0eNrQSDoBIcaFA==", - "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.2.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.0.tgz", - "integrity": "sha512-pZbTJpoUsCzV48Mc9Nh51VbwO0X9cuPFE8gYwx9BTCt9SF8/b7Zljd2fVgOxhIF/HDTKgpVzs+GPhyKfjLLFRQ==", - "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/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, + "license": "MIT", + "dependencies": { + "p-try": "^1.0.0" + }, + "engines": { + "node": ">=4" } }, - "ms": { + "node_modules/read-pkg-up/node_modules/p-locate": { "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==", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha512-nQja7m7gSKuewoVRen45CtVfODR3crN3goVQ0DDZ9N3yHxgpkuBhZqsaiotSQRrADUrne346peY7kT3TSACykg==", "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 + "license": "MIT", + "dependencies": { + "p-limit": "^1.1.0" + }, + "engines": { + "node": ">=4" + } }, - "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_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" + } }, - "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_modules/read-pkg-up/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-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 - } + "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" } }, - "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/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" + } }, - "node-notifier": { - "version": "5.4.1", - "resolved": "https://registry.npmjs.org/node-notifier/-/node-notifier-5.4.1.tgz", - "integrity": "sha512-p52B+onAEHKW1OF9MGO/S7k/ahGEHfhP5/tvwYzog/5XLYOd8ZuD6vdNZdUuWMONRnKPneXV43v3s6Snx1wsCQ==", + "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": { - "growly": "^1.3.0", - "is-wsl": "^1.1.0", - "semver": "^5.5.0", - "shellwords": "^0.1.1", - "which": "^1.3.0" + "license": "MIT", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" } }, - "node-releases": { - "version": "1.1.26", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.26.tgz", - "integrity": "sha512-fZPsuhhUHMTlfkhDLGtfY80DSJTjOcx+qD1j5pqPkuhUHVS7xHZIg9EE4DHK8O3f0zTxXHX5VIkDG8pu98/wfQ==", + "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": { - "semver": "^5.3.0" + "license": "MIT", + "optional": true, + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" } }, - "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/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": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" + "license": "MIT", + "optional": true, + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" } }, - "normalize-path": { + "node_modules/redent": { "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 - }, - "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==", + "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz", + "integrity": "sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==", "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", + "dependencies": { + "indent-string": "^4.0.0", + "strip-indent": "^3.0.0" + }, + "engines": { + "node": ">=8" } }, - "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/redent/node_modules/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, - "requires": { - "path-key": "^2.0.0" + "license": "MIT", + "engines": { + "node": ">=8" } }, - "npmlog": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-2.0.4.tgz", - "integrity": "sha1-mLUlMPJRTKkNCexbIsiEZyI3VpI=", + "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, - "requires": { - "ansi": "~0.3.1", - "are-we-there-yet": "~1.1.2", - "gauge": "~1.2.5" + "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" } }, - "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 - }, - "num2fraction": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/num2fraction/-/num2fraction-1.2.2.tgz", - "integrity": "sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4=", - "dev": true - }, - "number-is-nan": { - "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.1.4", - "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.1.4.tgz", - "integrity": "sha512-iGfd9Y6SFdTNldEy2L0GUhcarIutFmk+MPWIn9dmj8NMIup03G08uUF2KGbbmv/Ux4RT0VZJoP/sVbWA6d/VIw==", - "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 - }, - "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/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" }, - "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" - } - }, - "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/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" } }, - "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 - }, - "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/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, - "requires": { - "isobject": "^3.0.0" + "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" } }, - "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/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, - "requires": { - "define-properties": "^1.1.2", - "function-bind": "^1.1.1", - "has-symbols": "^1.0.0", - "object-keys": "^1.0.11" + "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" } }, - "object.getownpropertydescriptors": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.0.3.tgz", - "integrity": "sha1-h1jIRvW0B62rDyNuCYbxSwUcqhY=", + "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, - "requires": { - "define-properties": "^1.1.2", - "es-abstract": "^1.5.1" - } + "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/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": { - "isobject": "^3.0.1" + "license": "BSD-2-Clause", + "dependencies": { + "jsesc": "~3.0.2" + }, + "bin": { + "regjsparser": "bin/parser" } }, - "object.values": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.0.tgz", - "integrity": "sha512-8mf0nKLAoFX6VlNVdhGj31SVYpaNFtUnuoOXWyFEstsWRgU837AK+JYM0iAxwkSzGRbwn8cbFmgbyxj1j4VbXg==", + "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": { - "define-properties": "^1.1.3", - "es-abstract": "^1.12.0", - "function-bind": "^1.1.1", - "has": "^1.0.3" + "license": "MIT", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=6" } }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "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, - "requires": { - "wrappy": "1" + "license": "MIT", + "engines": { + "node": ">=0.10" } }, - "onetime": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz", - "integrity": "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=", - "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" + } }, - "opencollective-postinstall": { + "node_modules/require-from-string": { "version": "2.0.2", - "resolved": "https://registry.npmjs.org/opencollective-postinstall/-/opencollective-postinstall-2.0.2.tgz", - "integrity": "sha512-pVOEP16TrAO2/fjej1IdOyupJY8KDUM1CvsaScRbw6oddvpQoOfGk4ywha0HKKVAD6RkW4x6Q+tNBwhf3Bgpuw==", - "dev": true - }, - "optimist": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz", - "integrity": "sha1-2j6nRob6IaGaERwybpDrFaAZZoY=", + "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, - "requires": { - "minimist": "~0.0.1", - "wordwrap": "~0.0.2" - }, - "dependencies": { - "minimist": { - "version": "0.0.10", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz", - "integrity": "sha1-3j+YVD2/lggr5IrRoMfNqDYwHc8=", - "dev": true - }, - "wordwrap": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz", - "integrity": "sha1-o9XabNXAvAAI03I0u68b7WMFkQc=", - "dev": true - } + "license": "MIT", + "engines": { + "node": ">=0.10.0" } }, - "optionator": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.2.tgz", - "integrity": "sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q=", + "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, - "requires": { - "deep-is": "~0.1.3", - "fast-levenshtein": "~2.0.4", - "levn": "~0.3.0", - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2", - "wordwrap": "~1.0.0" + "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" } }, - "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-locale": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-3.1.0.tgz", - "integrity": "sha512-Z8l3R4wYWM40/52Z+S265okfFj8Kt2cC2MKY+xNi3kFs+XGI7WXu/I309QQQYbRW4ijiZ+yxs9pqEhJh0DqW3Q==", + "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": { - "execa": "^1.0.0", - "lcid": "^2.0.0", - "mem": "^4.0.0" + "license": "MIT", + "dependencies": { + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" } }, - "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 - }, - "output-file-sync": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/output-file-sync/-/output-file-sync-2.0.1.tgz", - "integrity": "sha512-mDho4qm7WgIXIGf4eYU1RHN2UU5tPfVYVSRwDJw0uTmj35DQUt/eNp19N7v6T3SrR0ESTEf2up2CGO73qI35zQ==", + "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": { - "graceful-fs": "^4.1.11", - "is-plain-obj": "^1.1.0", - "mkdirp": "^0.5.1" + "license": "MIT", + "engines": { + "node": ">=8" } }, - "p-defer": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-defer/-/p-defer-1.0.0.tgz", - "integrity": "sha1-n26xgvbJqozXQwBKfU+WsZaw+ww=", - "dev": true - }, - "p-each-series": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-each-series/-/p-each-series-1.0.0.tgz", - "integrity": "sha1-kw89Et0fUOdDRFeiLNbwSsatf3E=", + "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": { - "p-reduce": "^1.0.0" + "license": "MIT", + "dependencies": { + "onetime": "^7.0.0", + "signal-exit": "^4.1.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "p-finally": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", - "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", - "dev": true - }, - "p-is-promise": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/p-is-promise/-/p-is-promise-2.1.0.tgz", - "integrity": "sha512-Y3W0wlRPK8ZMRbNq97l4M5otioeA5lm1z7bkNkxCka8HSPjR0xRWmpCmc9utiaLP9Jb1eD8BgeIxTW4AIF45Pg==", - "dev": true - }, - "p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "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": { - "p-try": "^1.0.0" + "license": "MIT", + "dependencies": { + "mimic-function": "^5.0.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "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": { - "p-limit": "^1.1.0" + "license": "ISC", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "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 - }, - "p-reduce": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-reduce/-/p-reduce-1.0.0.tgz", - "integrity": "sha1-GMKw3ZNqRpClKfgjH1ig/bakffo=", - "dev": true - }, - "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 - }, - "pako": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.10.tgz", - "integrity": "sha512-0DTvPVU3ed8+HNXOu5Bs+o//Mbdj9VNQMUOe9oKCwh8l0GNwpTDMKCWbRjgtD291AWnkAgkqA/LOnQS8AmS1tw==", - "dev": true - }, - "parallel-transform": { + "node_modules/reusify": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/parallel-transform/-/parallel-transform-1.1.0.tgz", - "integrity": "sha1-1BDwZbBdojCB/NEPKIVMKb2jOwY=", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.1.0.tgz", + "integrity": "sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==", "dev": true, - "requires": { - "cyclist": "~0.2.2", - "inherits": "^2.0.3", - "readable-stream": "^2.1.5" + "license": "MIT", + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" } }, - "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/rfdc": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.4.1.tgz", + "integrity": "sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==", "dev": true, - "requires": { - "callsites": "^3.0.0" - } + "license": "MIT" }, - "parse-asn1": { - "version": "5.1.4", - "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.4.tgz", - "integrity": "sha512-Qs5duJcuvNExRfFZ99HDD3z4mAi3r9Wl/FOjEOijlxwCZs7E7mW2vjTpgQ4J8LpTF8x5v+1Vn5UQFejmWT11aw==", + "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": { - "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": "ISC", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "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/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, + "license": "MIT" + }, + "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, + "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" } }, - "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": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "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": { - "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1" + "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" } }, - "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": "4.0.0", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-4.0.0.tgz", - "integrity": "sha512-VrZ7eOd3T1Fk4XWNXMgiGBK/z0MG48BWG2uQNU4I72fkQuKUTZpl+u9k+CxEG0twMVzSmXEEz12z5Fnw1jIQFA==", - "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 - }, - "path-dirname": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", - "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=", - "dev": true - }, - "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 - }, - "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 - }, - "path-is-inside": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", - "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=", - "dev": true - }, - "path-key": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", - "dev": true - }, - "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/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" }, - "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/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": { - "pify": "^3.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" } }, - "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/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": { - "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", + "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" } }, - "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.0.7", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.0.7.tgz", - "integrity": "sha512-oLHIdio3tZ0qH76NybpeneBhYVj0QFTfXEFTc/B3zKQspYfYYkWYgFsmzo+4kvId/bQRcNkVeguI3y+CD22BtA==", - "dev": true - }, - "pidtree": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/pidtree/-/pidtree-0.3.0.tgz", - "integrity": "sha512-9CT4NFlDcosssyg8KVFltgokyKZIFjoBxw8CTGy+5F38Y1eQWrt8tRayiUOXE+zVKQnYu5BR8JjCtvK3BcnBhg==", - "dev": true - }, - "pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", - "dev": true + "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, + "license": "MIT", + "engines": { + "node": ">=10" + } }, - "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/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "dev": true, + "license": "MIT" }, - "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/sass": { + "version": "1.89.2", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.89.2.tgz", + "integrity": "sha512-xCmtksBKd/jdJ9Bt9p7nPKiuqrlBMBuuGkQlkhZjjQk3Ty48lv93k5Dq6OPkKt4XwxDJ7tvlfrTa1MPA9bf+QA==", "dev": true, - "requires": { - "pinkie": "^2.0.0" + "license": "MIT", + "dependencies": { + "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" } }, - "pirates": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.1.tgz", - "integrity": "sha512-WuNqLTbMI3tmfef2TKxlQmAiLHKtFhlsCZnPIpuv2Ow0RDVO8lfy1Opf4NUzlMXLjPl+Men7AuVdX6TA+s+uGA==", + "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": { - "node-modules-regexp": "^1.0.0" + "license": "MIT", + "dependencies": { + "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 + }, + "webpack": { + "optional": true + } } }, - "pkg-dir": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", - "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", + "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": { - "find-up": "^2.1.0" + "license": "MIT", + "dependencies": { + "readdirp": "^4.0.1" + }, + "engines": { + "node": ">= 14.16.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" } }, - "please-upgrade-node": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/please-upgrade-node/-/please-upgrade-node-3.1.1.tgz", - "integrity": "sha512-KY1uHnQ2NlQHqIJQpnh/i54rKkuxCEBx+voJIS/Mvb+L2iYd2NMotwduhKTMjfC1uKoX3VXOxLjIYG66dfJTVQ==", + "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": { - "semver-compare": "^1.0.0" + "license": "MIT", + "engines": { + "node": ">= 14.18.0" + }, + "funding": { + "type": "individual", + "url": "https://paulmillr.com/funding/" } }, - "pn": { - "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.17", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.17.tgz", - "integrity": "sha512-546ZowA+KZ3OasvQZHsbuEpysvwTZNGJv9EfyCQdsIDltPSWHAeTQ5fQy/Npi2ZDtLI3zs7Ps/p6wThErhm9fQ==", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } + "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, + "license": "ISC", + "optional": true }, - "postcss-attribute-case-insensitive": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/postcss-attribute-case-insensitive/-/postcss-attribute-case-insensitive-4.0.1.tgz", - "integrity": "sha512-L2YKB3vF4PetdTIthQVeT+7YiSzMoNMLLYxPXXppOOP7NoazEAy45sh2LvJ8leCQjfBcfkYQs8TtCcQjeZTp8A==", + "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", - "postcss-selector-parser": "^5.0.0" - }, + "license": "ISC", "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" - } - } + "xmlchars": "^2.2.0" + }, + "engines": { + "node": ">=v12.22.7" } }, - "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/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", - "postcss-values-parser": "^2.0.0" + "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-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/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": { - "@csstools/convert-colors": "^1.4.0", - "postcss": "^7.0.5", - "postcss-values-parser": "^2.0.0" + "license": "BSD-3-Clause", + "dependencies": { + "randombytes": "^2.1.0" } }, - "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/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.14", - "postcss-values-parser": "^2.0.1" + "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-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/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": { - "@csstools/convert-colors": "^1.4.0", - "postcss": "^7.0.2", - "postcss-values-parser": "^2.0.0" + "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-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/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": { - "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-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/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": { - "postcss": "^7.0.14" + "license": "MIT", + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" } }, - "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/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, - "requires": { - "postcss": "^7.0.17", - "postcss-values-parser": "^2.0.1" + "license": "MIT", + "engines": { + "node": ">=8" } }, - "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/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", - "postcss-selector-parser": "^5.0.0-rc.3" + "license": "MIT", + "engines": { + "node": ">= 0.4" }, - "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/sponsors/ljharb" } }, - "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/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, - "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 - }, - "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" - } - } + "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" } }, - "postcss-double-position-gradients": { + "node_modules/side-channel-list": { "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==", + "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.5", - "postcss-values-parser": "^2.0.0" + "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-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/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, - "requires": { - "postcss": "^7.0.2", - "postcss-values-parser": "^2.0.0" + "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-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/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, - "requires": { - "postcss": "^7.0.2" + "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-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/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, - "requires": { - "postcss": "^7.0.2" - } + "license": "ISC" }, - "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/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, - "requires": { - "postcss": "^7.0.2" + "license": "MIT", + "dependencies": { + "is-arrayish": "^0.3.1" } }, - "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/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-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/slash": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", + "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==", "dev": true, - "requires": { - "postcss": "^7.0.2", - "postcss-values-parser": "^2.0.0" + "license": "MIT", + "engines": { + "node": ">=6" } }, - "postcss-initial": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/postcss-initial/-/postcss-initial-3.0.1.tgz", - "integrity": "sha512-I2Sz83ZSHybMNh02xQDK609lZ1/QOyYeuizCjzEhlMgeV/HcDJapQiH4yTqLjZss0X6/6VvKFXUeObaHpJoINw==", + "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": { - "lodash.template": "^4.5.0", - "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-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/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": { - "@csstools/convert-colors": "^1.4.0", - "postcss": "^7.0.2", - "postcss-values-parser": "^2.0.0" + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "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/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": { - "cosmiconfig": "^5.0.0", - "import-cwd": "^2.0.0" + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" } }, - "postcss-loader": { - "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" - } - } + "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-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/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": { - "postcss": "^7.0.2" + "license": "MIT", + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" } }, - "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/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, - "requires": { - "postcss": "^7.0.2" + "license": "Apache-2.0", + "dependencies": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" } }, - "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/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-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/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, + "license": "MIT", + "dependencies": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" } }, - "postcss-modules-scope": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-2.1.0.tgz", - "integrity": "sha512-91Rjps0JnmtUB0cujlc8KIKCsJXWjzuxGeT/+Q2i2HXKZ7nBUeF9YQTZZTNvHVoNYj1AthsjnGLtqDUE0Op79A==", - "requires": { - "postcss": "^7.0.6", - "postcss-selector-parser": "^6.0.0" - } + "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" }, - "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/split": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/split/-/split-1.0.1.tgz", + "integrity": "sha512-mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg==", + "dev": true, + "license": "MIT", + "dependencies": { + "through": "2" + }, + "engines": { + "node": "*" } }, - "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/split2": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/split2/-/split2-4.2.0.tgz", + "integrity": "sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg==", "dev": true, - "requires": { - "postcss": "^7.0.2" + "license": "ISC", + "engines": { + "node": ">= 10.x" } }, - "postcss-overflow-shorthand": { - "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==", + "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, - "requires": { - "postcss": "^7.0.2" - } + "license": "BSD-3-Clause" }, - "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/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, - "requires": { - "postcss": "^7.0.2" + "license": "MIT", + "engines": { + "node": "*" } }, - "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/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": { - "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 - }, - "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" - } - } + "escape-string-regexp": "^2.0.0" + }, + "engines": { + "node": ">=10" } }, - "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/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": { - "postcss": "^7.0.2" + "license": "MIT", + "engines": { + "node": ">=8" } }, - "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==", + "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": { - "balanced-match": "^1.0.0", - "postcss": "^7.0.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" } }, - "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/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": { - "balanced-match": "^1.0.0", - "postcss": "^7.0.2" + "license": "MIT", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" } }, - "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/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, + "license": "ISC", + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" } }, - "postcss-value-parser": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.0.1.tgz", - "integrity": "sha512-3Jk+/CVH0HBfgSSFWALKm9Hyzf4kumPjZfUxkRYZNcqFztELb2APKxv0nlX8HCdc1/ymePmT/nFf1ST6fjWH2A==" - }, - "postcss-values-parser": { + "node_modules/standard-version/node_modules/color-convert": { "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==", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, - "requires": { - "flatten": "^1.0.2", - "indexes-of": "^1.0.1", - "uniq": "^1.0.1" + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.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 - }, - "prettier": { - "version": "1.18.2", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-1.18.2.tgz", - "integrity": "sha512-OeHeMc0JhFE9idD4ZdtNibzY0+TPHSpSSb9h8FqtP+YnoZZ1sl8Vc9b1sasjfymH3SonAF4QcA2+mzHPhMvIiw==", - "dev": true - }, - "pretty-format": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-24.8.0.tgz", - "integrity": "sha512-P952T7dkrDEplsR+TuY7q3VXDae5Sr7zmQb12JU/NDQa/3CH7/QW0yvqLcGN6jL+zQFKaoJcPc+yJxMTGmosqw==", - "dev": true, - "requires": { - "@jest/types": "^24.8.0", - "ansi-regex": "^4.0.0", - "ansi-styles": "^3.2.0", - "react-is": "^16.8.4" - }, - "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 - } - } + "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" }, - "prettyjson": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/prettyjson/-/prettyjson-1.2.1.tgz", - "integrity": "sha1-/P+rQdGcq0365eV15kJGYZsS0ok=", + "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": { - "colors": "^1.1.2", - "minimist": "^1.2.0" + "license": "ISC", + "dependencies": { + "compare-func": "^2.0.0", + "lodash": "^4.17.15", + "q": "^1.5.1" + }, + "engines": { + "node": ">=10" } }, - "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 - }, - "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/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, + "license": "MIT" }, - "prompts": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.2.1.tgz", - "integrity": "sha512-VObPvJiWPhpZI6C5m60XOzTfnYg/xc/an+r9VYymj9WJW3B/DIH+REzjpAACPf8brwPeP+7vz3bIim3S+AaMjw==", + "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": { - "kleur": "^3.0.3", - "sisteransi": "^1.0.3" - }, - "dependencies": { - "kleur": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", - "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", - "dev": true - } + "license": "MIT", + "engines": { + "node": ">=0.8.0" } }, - "prop-ini": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/prop-ini/-/prop-ini-0.0.2.tgz", - "integrity": "sha1-ZzOny1JCrKsr5C5gdYPYEksXKls=", + "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": { - "extend": "^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" } }, - "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.3.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.3.0.tgz", - "integrity": "sha512-avHdspHO+9rQTLbv1RO+MPYeP/SzsCoxofjVnHanETfQhTJrmB0HlDoW+EiN/R+C0BZ+gERab9NY0lPN2TxNag==", - "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/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, - "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": "MIT", + "engines": { + "node": ">=4" } }, - "pump": { + "node_modules/standard-version/node_modules/is-fullwidth-code-point": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", - "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "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": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" + "license": "MIT", + "engines": { + "node": ">=8" } }, - "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/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": { - "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": "MIT", + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "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 + "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, + "license": "MIT", + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "querystring": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", - "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=", - "dev": true + "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, + "license": "MIT", + "engines": { + "node": ">=8" + } }, - "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/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" + } }, - "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/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" + } }, - "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/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": { - "safe-buffer": "^5.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" } }, - "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/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": { - "randombytes": "^2.0.5", - "safe-buffer": "^5.1.0" + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "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/yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", "dev": true, - "requires": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" + "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" } }, - "react-is": { - "version": "16.8.6", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.8.6.tgz", - "integrity": "sha512-aUk3bHfZ2bRSVFFbbeVS4i+lNPZr3/WM5jT2J5omUVV1zzcs1nAaf3l51ctA5FFvCRbhrH0bdAsRRQddFJZPtA==", - "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/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": { - "load-json-file": "^4.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^3.0.0" + "license": "ISC", + "engines": { + "node": ">=10" } }, - "read-pkg-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz", - "integrity": "sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc=", + "node_modules/stop-iteration-iterator": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.1.0.tgz", + "integrity": "sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ==", "dev": true, - "requires": { - "find-up": "^2.0.0", - "read-pkg": "^3.0.0" + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "internal-slot": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" } }, - "readable-stream": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", - "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", + "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, - "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", + "dependencies": { + "safe-buffer": "~5.2.0" } }, - "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/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": { - "graceful-fs": "^4.1.11", - "micromatch": "^3.1.10", - "readable-stream": "^2.0.2" + "license": "MIT", + "engines": { + "node": ">=0.6.19" } }, - "readme-badger": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/readme-badger/-/readme-badger-0.3.0.tgz", - "integrity": "sha512-+sMOLSs1imZUISZ2Rhz7qqVd77QtpcAPbGeIraFdgJmijb04YtdlPjGNBvDChTNtLbeQ6JNGQy3pOgslWfaP3g==", + "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, - "requires": { - "balanced-match": "^1.0.0" + "license": "MIT", + "dependencies": { + "char-regex": "^1.0.2", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" } }, - "realpath-native": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/realpath-native/-/realpath-native-1.1.0.tgz", - "integrity": "sha512-wlgPA6cCIIg9gKz0fgAPjnzh4yR/LnXovwuo9hvyGvx3h8nX4+/iLZplfUWasXpqD8BdnGnP5njOFjkUwPzvjA==", + "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, - "requires": { - "util.promisify": "^1.0.0" + "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" } }, - "redent": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/redent/-/redent-2.0.0.tgz", - "integrity": "sha1-wbIAe0LVfrE4kHmzyDM2OdXhzKo=", + "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, - "requires": { - "indent-string": "^3.0.0", - "strip-indent": "^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" } }, - "regenerate": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.0.tgz", - "integrity": "sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg==", - "dev": true + "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, + "license": "MIT" }, - "regenerate-unicode-properties": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-8.1.0.tgz", - "integrity": "sha512-LGZzkgtLY79GeXLm8Dp0BVLdQlWICzBnJz/ipWUgo59qBaZ+BHtq51P2q1uVZlppMuUAT37SDk39qUbjTWB7bA==", + "node_modules/string-width-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": { - "regenerate": "^1.4.0" + "license": "MIT", + "engines": { + "node": ">=8" } }, - "regenerator-runtime": { - "version": "0.11.1", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", - "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==", - "dev": true - }, - "regenerator-transform": { - "version": "0.14.1", - "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.14.1.tgz", - "integrity": "sha512-flVuee02C3FKRISbxhXl9mGzdbWUVHubl1SMaknjxkFB1/iqpJhArQUvRxOOPEc/9tAiX0BaQ28FJH10E4isSQ==", + "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": { - "private": "^0.1.6" + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" } }, - "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/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": { - "extend-shallow": "^3.0.2", - "safe-regex": "^1.1.0" + "license": "MIT", + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" } }, - "regexp-tree": { - "version": "0.1.11", - "resolved": "https://registry.npmjs.org/regexp-tree/-/regexp-tree-0.1.11.tgz", - "integrity": "sha512-7/l/DgapVVDzZobwMCCgMlqiqyLFJ0cduo/j+3BcDJIB+yJdsYCfKuI3l/04NV+H/rfNRdPIDbXNZHM9XvQatg==", - "dev": true - }, - "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.5.4", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.5.4.tgz", - "integrity": "sha512-BtizvGtFQKGPUcTy56o3nk1bGRp4SZOTYrDtGNlqCQufptV5IkkLN6Emw+yunAJjzf+C9FQFtvq7IoA3+oMYHQ==", + "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": { - "regenerate": "^1.4.0", - "regenerate-unicode-properties": "^8.0.2", - "regjsgen": "^0.5.0", - "regjsparser": "^0.6.0", - "unicode-match-property-ecmascript": "^1.0.4", - "unicode-match-property-value-ecmascript": "^1.1.0" + "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" } }, - "regjsgen": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.5.0.tgz", - "integrity": "sha512-RnIrLhrXCX5ow/E5/Mh2O4e/oa1/jW0eaBKTSy3LaCj+M3Bqvm97GWDp2yUtzIs4LEn65zR2yiYGFqb2ApnzDA==", - "dev": true - }, - "regjsparser": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.6.0.tgz", - "integrity": "sha512-RQ7YyokLiQBomUJuUG8iGVvkgOLxwyZM8k6d3q5SAXpg4r5TZJZigKFvC6PpD+qQ98bCDC5YelPeA3EucDoNeQ==", + "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": { - "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 - } + "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" } }, - "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/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": { - "parse-git-config": "^1.1.1" + "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" } }, - "remove-trailing-separator": { - "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 + "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, + "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" + } }, - "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 + "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" }, - "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.0", - "resolved": "https://registry.npmjs.org/request/-/request-2.88.0.tgz", - "integrity": "sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg==", - "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.0", - "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.4.3", - "tunnel-agent": "^0.6.0", - "uuid": "^3.3.2" - }, - "dependencies": { - "punycode": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", - "dev": true - }, - "tough-cookie": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.4.3.tgz", - "integrity": "sha512-Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ==", - "dev": true, - "requires": { - "psl": "^1.1.24", - "punycode": "^1.4.1" - } - } + "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, + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" } }, - "request-promise-core": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/request-promise-core/-/request-promise-core-1.1.2.tgz", - "integrity": "sha512-UHYyq1MO8GsefGEt7EprS8UrXsm1TxEvFUX1IMTuSLU2Rh7fTIdFtl8xD7JiEYiWU2dl+NYAjCTksTehQUxPag==", + "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": { - "lodash": "^4.17.11" + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" } }, - "request-promise-native": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/request-promise-native/-/request-promise-native-1.0.7.tgz", - "integrity": "sha512-rIMnbBdgNViL37nZ1b3L/VfPOpSi0TqVDQPAvO6U14lMzOLrt5nilxCQqtDKhZeDiW0/hkCXGoQjhgJd/tCh6w==", + "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": { - "request-promise-core": "1.1.2", - "stealthy-require": "^1.1.1", - "tough-cookie": "^2.3.3" + "license": "MIT", + "engines": { + "node": ">=8" } }, - "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 - }, - "require-main-filename": { + "node_modules/strip-final-newline": { "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 - }, - "resolve": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.12.0.tgz", - "integrity": "sha512-B/dOmuoAik5bKcD6s6nXDCjzUKnaDvdkRyAk6rsmsKLipWj4797iothd7jmmUhWTfinVMU+wc56rYKsit2Qy4w==", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", "dev": true, - "requires": { - "path-parse": "^1.0.6" + "license": "MIT", + "engines": { + "node": ">=6" } }, - "resolve-cwd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-2.0.0.tgz", - "integrity": "sha1-AKn3OHVW4nA46uIyyqNypqWbZlo=", + "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": { - "resolve-from": "^3.0.0" - }, + "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 - } + "min-indent": "^1.0.0" + }, + "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/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": { - "global-dirs": "^0.1.1" + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "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/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, - "requires": { - "exit-hook": "^1.0.0", - "onetime": "^1.0.0" + "license": "MIT", + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.0.0" } }, - "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.6.3", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", - "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", + "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, - "requires": { - "glob": "^7.1.3" + "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" } }, - "ripemd160": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", - "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", + "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, - "requires": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1" + "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 + } } }, - "rsvp": { - "version": "4.8.5", - "resolved": "https://registry.npmjs.org/rsvp/-/rsvp-4.8.5.tgz", - "integrity": "sha512-nfMOlASu9OnRJo1mbEk2cz0D56a1MBNrJ7orjRZQG10XDyuvwksKbuXNp6qa+kbn839HwjwhBzhFmdsaEAfauA==", - "dev": true + "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, + "license": "ISC" }, - "run-async": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.3.0.tgz", - "integrity": "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=", + "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": { - "is-promise": "^2.1.0" + "license": "BSD-3-Clause", + "engines": { + "node": ">= 8" } }, - "run-node": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/run-node/-/run-node-1.0.0.tgz", - "integrity": "sha512-kc120TBlQ3mih1LSzdAJXo4xn/GWS2ec0l3S+syHDXP9uRr0JAT8Qd3mdMuyjqCzeZktgP3try92cEgf9Nks8A==", - "dev": true - }, - "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/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": { - "aproba": "^1.1.1" + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" } }, - "rx": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/rx/-/rx-4.1.0.tgz", - "integrity": "sha1-pfE/957zt0D+MKqAP7CfmIBdR4I=", - "dev": true - }, - "rxjs": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.2.tgz", - "integrity": "sha512-HUb7j3kvb7p7eCUHE3FqjoDsC1xfZQ4AHFWfTKSpZ+sAhhz5X1WX0ZuUqWbzB2QhSLp3DoLUG+hMdEDKqWo2Zg==", + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", "dev": true, - "requires": { - "tslib": "^1.9.0" + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "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 + "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" }, - "safe-regex": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", - "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", + "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, - "requires": { - "ret": "~0.1.10" + "license": "MIT", + "dependencies": { + "@pkgr/core": "^0.2.4" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/synckit" } }, - "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/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": { - "@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": ">=6" } }, - "sass": { - "version": "1.22.9", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.22.9.tgz", - "integrity": "sha512-FzU1X2V8DlnqabrL4u7OBwD2vcOzNMongEJEx3xMEhWY/v26FFR3aG0hyeu2T965sfR0E9ufJwmG+Qjz78vFPQ==", + "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, - "requires": { - "chokidar": ">=2.0.0 <4.0.0" + "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" } }, - "sass-loader": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-7.1.0.tgz", - "integrity": "sha512-+G+BKGglmZM2GUSfT9TLuEp6tzehHPjAMoRRItOojWIqIGPloVCMhNIQuG639eJ+y033PaGTSjLaTHts8Kw79w==", - "dev": true, - "requires": { - "clone-deep": "^2.0.1", - "loader-utils": "^1.0.1", - "lodash.tail": "^4.1.1", - "neo-async": "^2.5.0", - "pify": "^3.0.0", - "semver": "^5.5.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 + }, + "esbuild": { + "optional": true + }, + "uglify-js": { + "optional": true + } } }, - "sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", - "dev": true + "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, + "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" + } }, - "schema-utils": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.0.1.tgz", - "integrity": "sha512-HJFKJ4JixDpRur06QHwi8uu2kZbng318ahWEKgBjc0ZklcE4FDvmm2wghb448q0IRaABxIESt8vqPFvwgMB80A==", - "requires": { - "ajv": "^6.1.0", - "ajv-keywords": "^3.1.0" + "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, + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.3" + }, + "peerDependencies": { + "ajv": "^8.8.2" } }, - "semver": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", - "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", - "dev": true + "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, + "license": "MIT", + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": ">= 10.13.0" + } }, - "semver-compare": { + "node_modules/terser-webpack-plugin/node_modules/json-schema-traverse": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/semver-compare/-/semver-compare-1.0.0.tgz", - "integrity": "sha1-De4hahyUGrN+nvsXiPavxf9VN/w=", - "dev": true - }, - "serialize-javascript": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-1.7.0.tgz", - "integrity": "sha512-ke8UG8ulpFOxO8f8gRYabHQe/ZntKlcig2Mp+8+URDP1D8vJZ0KUt7LYo07q25Z/+JVSgpr/cui9PIp5H6/+nA==", - "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" }, - "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/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, + "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" + } }, - "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/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, + "license": "MIT", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" } }, - "setimmediate": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", - "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=", - "dev": true + "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, + "license": "MIT" }, - "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/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": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" + "license": "MIT", + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" } }, - "shallow-clone": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-1.0.0.tgz", - "integrity": "sha512-oeXreoKR/SyNJtRJMAKPDSvd28OqEwG4eR/xc856cRGBII7gX9lvAqDxusPm0846z/w/hWYjI1NpKwJ00NHzRA==", + "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": { - "is-extendable": "^0.1.1", - "kind-of": "^5.0.0", - "mixin-object": "^2.0.1" - }, + "license": "ISC", "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 - } + "@istanbuljs/schema": "^0.1.2", + "glob": "^7.1.4", + "minimatch": "^3.0.4" + }, + "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/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": { - "shebang-regex": "^1.0.0" + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "shebang-regex": { + "node_modules/text-hex": { "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.6.1", - "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.6.1.tgz", - "integrity": "sha1-9HgZSczkAmlxJ0MOo7PFR29IF2c=", + "resolved": "https://registry.npmjs.org/text-hex/-/text-hex-1.0.0.tgz", + "integrity": "sha512-uuVGNWzgJ4yhRaNSiubPY7OjISw4sw4E5Uv0wbjp+OzcbmVU/rsT8ujgcXJhn9ypzsgr5vlzpPqP+MBBKcGvbg==", "dev": true, - "requires": { - "array-filter": "~0.0.0", - "array-map": "~0.0.0", - "array-reduce": "~0.0.0", - "jsonify": "~0.0.0" - } - }, - "shellwords": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/shellwords/-/shellwords-0.1.1.tgz", - "integrity": "sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww==", - "dev": 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.2", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", - "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", - "dev": true + "license": "MIT" }, - "sisteransi": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.3.tgz", - "integrity": "sha512-SbEG75TzH8G7eVXFSN5f9EExILKfly7SUvVY5DhhYLvfhKqhDFY0OzevWa/zwak0RLRfWS5AvfMWpd9gJvr5Yg==", - "dev": true - }, - "slash": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", - "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==", - "dev": true - }, - "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/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, - "requires": { - "ansi-styles": "^3.2.0", - "astral-regex": "^1.0.0", - "is-fullwidth-code-point": "^2.0.0" - } + "license": "MIT" }, - "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/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, + "license": "Unlicense", + "engines": { + "node": ">=10.18" + }, + "peerDependencies": { + "tslib": "^2" } }, - "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" - } - }, - "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/through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", + "dev": true, + "license": "MIT" }, - "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/through2": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/through2/-/through2-4.0.2.tgz", + "integrity": "sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw==", "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" - } - } + "readable-stream": "3" } }, - "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==" + "node_modules/tinyexec": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/tinyexec/-/tinyexec-1.0.1.tgz", + "integrity": "sha512-5uC6DDlmeqiOwCPmK9jMSdOuZTh8bU39Ys6yidB+UTt5hfZUPGAypSgFRiEp+jbi9qH40BLDvy85jIU88wKSqw==", + "dev": true, + "license": "MIT" }, - "source-map-resolve": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.2.tgz", - "integrity": "sha512-MjqsvNwyz1s0k81Goz/9vRBe9SZdB09Bdw+/zYyO+3CuPk6fouTaxscHkgtE8jKvf01kVfl8riHzERQ/kefaSA==", + "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": { - "atob": "^2.1.1", - "decode-uri-component": "^0.2.0", - "resolve-url": "^0.2.1", - "source-map-url": "^0.4.0", - "urix": "^0.1.0" + "license": "MIT", + "dependencies": { + "fdir": "^6.4.4", + "picomatch": "^4.0.2" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/SuperchupuDev" } }, - "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==", + "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": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" + "license": "MIT", + "dependencies": { + "tldts-core": "^6.1.86" + }, + "bin": { + "tldts": "bin/cli.js" } }, - "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 + "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, + "license": "MIT" }, - "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/tmpl": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", + "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==", "dev": true, - "requires": { - "concat-stream": "^1.4.7", - "os-shim": "^0.1.2" - } + "license": "BSD-3-Clause" }, - "spdx-correct": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.0.tgz", - "integrity": "sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q==", + "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": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" + "license": "MIT", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" } }, - "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/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": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" + "license": "BSD-3-Clause", + "dependencies": { + "tldts": "^6.1.32" + }, + "engines": { + "node": ">=16" } }, - "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/tr46": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-5.1.1.tgz", + "integrity": "sha512-hdF5ZgjTqgAntKkklYw0R03MG2x/bSzTtkxmIRw/sTNV8YXsCJ1tfLAX23lhxhHJlEf3CRCOCGGWw3vI3GaSPw==", "dev": true, - "requires": { - "through": "2" + "license": "MIT", + "dependencies": { + "punycode": "^2.3.1" + }, + "engines": { + "node": ">=18" } }, - "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 - }, - "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/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": { - "extend-shallow": "^3.0.0" + "license": "Apache-2.0", + "engines": { + "node": ">=10.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/streamich" + }, + "peerDependencies": { + "tslib": "2" } }, - "split2": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/split2/-/split2-2.2.0.tgz", - "integrity": "sha512-RAb22TG39LhI31MbreBgIuKiIKhVsawfTgEGqKHTK87aG+ul/PB8Sqoi3I7kVdRWiCfrKxK3uo4/YUkpNvhPbw==", + "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": { - "through2": "^2.0.2" + "license": "MIT", + "engines": { + "node": ">=8" } }, - "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/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": { - "figgy-pudding": "^3.5.1" + "license": "MIT", + "engines": { + "node": ">= 14.0.0" } }, - "stack-trace": { - "version": "0.0.10", - "resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz", - "integrity": "sha1-VHxws0fo0ytOEI6hoqFZ5f3eGcA=", - "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" + } }, - "stack-utils": { + "node_modules/tsconfig-paths/node_modules/json5": { "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.0.0", - "resolved": "https://registry.npmjs.org/standard-version/-/standard-version-7.0.0.tgz", - "integrity": "sha512-pbFXM9vutnxTkSGkqSWQeYCMYqWmFBaLUNdEc/sJDQnMgwB0Csw3CZeeDhi62VoVS3P8mQiYbvXGZWyOBWxUbw==", - "dev": true, - "requires": { - "chalk": "2.4.2", - "conventional-changelog": "3.1.9", - "conventional-changelog-config-spec": "2.0.0", - "conventional-recommended-bump": "6.0.0", - "detect-indent": "6.0.0", - "detect-newline": "3.0.0", - "dotgitignore": "2.1.0", - "figures": "3.0.0", - "find-up": "4.1.0", - "fs-access": "1.0.1", - "git-semver-tags": "3.0.0", - "semver": "6.3.0", - "stringify-package": "1.0.0", - "yargs": "13.3.0" - }, - "dependencies": { - "cliui": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", - "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", - "dev": true, - "requires": { - "string-width": "^3.1.0", - "strip-ansi": "^5.2.0", - "wrap-ansi": "^5.1.0" - } - }, - "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 - }, - "detect-newline": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.0.0.tgz", - "integrity": "sha512-JAP22dVPAqvhdRFFxK1G5GViIokyUn0UWXRNW0ztK96fsqi9cuM8w8ESbSk+T2w5OVorcMcL6m7yUg1RrX+2CA==", - "dev": true - }, - "figures": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-3.0.0.tgz", - "integrity": "sha512-HKri+WoWoUgr83pehn/SIgLOMZ9nAWC6dcGj26RY2R4F50u4+RTUz0RCrUlOV3nKRAICW1UGzyb+kcX2qK1S/g==", - "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" - } - }, - "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 - }, - "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.2.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.0.tgz", - "integrity": "sha512-pZbTJpoUsCzV48Mc9Nh51VbwO0X9cuPFE8gYwx9BTCt9SF8/b7Zljd2fVgOxhIF/HDTKgpVzs+GPhyKfjLLFRQ==", - "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 - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "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" - } - }, - "wrap-ansi": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", - "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.0", - "string-width": "^3.0.0", - "strip-ansi": "^5.0.0" - } - }, - "yargs": { - "version": "13.3.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.0.tgz", - "integrity": "sha512-2eehun/8ALW8TLoIl7MVaRUrg+yCnenu8B4kBlRxj3GJGDKU1Og7sMXPNm1BYyM1DOJmTZ4YeN/Nwxv+8XJsUA==", - "dev": true, - "requires": { - "cliui": "^5.0.0", - "find-up": "^3.0.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": "^3.0.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^13.1.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-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" - } - }, - "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 - } - } - }, - "yargs-parser": { - "version": "13.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.1.tgz", - "integrity": "sha512-oVAVsHz6uFrg3XQheFII8ESO2ssAf9luWuAd6Wexsu4F3OtIW0o8IribPXYrD4WC24LWtPrJlGy87y5udK+dxQ==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } - } + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", + "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", + "dev": true, + "license": "MIT", + "dependencies": { + "minimist": "^1.2.0" + }, + "bin": { + "json5": "lib/cli.js" } }, - "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/tsconfig-paths/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" } }, - "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 - }, - "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/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, - "requires": { - "inherits": "~2.0.1", - "readable-stream": "^2.0.2" - } + "license": "0BSD" }, - "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/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, - "requires": { - "end-of-stream": "^1.1.0", - "stream-shift": "^1.0.0" + "license": "MIT", + "dependencies": { + "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" } }, - "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/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, - "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", + "engines": { + "node": ">=4" } }, - "stream-shift": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.0.tgz", - "integrity": "sha1-1cdSgl5TZ+eG944Y5EXqIjoVWVI=", - "dev": true - }, - "string-argv": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/string-argv/-/string-argv-0.3.0.tgz", - "integrity": "sha512-NGZHq3nkSXVtGZXTBjFru3MNfoZyIzN25T7BmvdgnSC0LCJczAGLLMQLyjywSIaAoqSemgLzBRHOsnrHbt60+Q==", - "dev": true - }, - "string-length": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/string-length/-/string-length-2.0.0.tgz", - "integrity": "sha1-1A27aGo6zpYMHP/KVivyxF+DY+0=", + "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": { - "astral-regex": "^1.0.0", - "strip-ansi": "^4.0.0" + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=10" }, - "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" - } - } + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "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": { - "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" - } - } + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "is-typed-array": "^1.1.14" + }, + "engines": { + "node": ">= 0.4" } }, - "string.prototype.padend": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/string.prototype.padend/-/string.prototype.padend-3.0.0.tgz", - "integrity": "sha1-86rvfBcZ8XDF6rHDK/eA2W4h8vA=", + "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": { - "define-properties": "^1.1.2", - "es-abstract": "^1.4.3", - "function-bind": "^1.0.2" + "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" } }, - "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/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, - "requires": { - "safe-buffer": "~5.1.0" + "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" } }, - "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/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": { - "get-own-enumerable-property-symbols": "^3.0.0", - "is-obj": "^1.0.1", - "is-regexp": "^1.0.0" + "license": "MIT", + "dependencies": { + "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" } }, - "stringify-package": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/stringify-package/-/stringify-package-1.0.0.tgz", - "integrity": "sha512-JIQqiWmLiEozOC0b0BtxZ/AOUtdUZHCBPgqIZ2kSJJqGwgb9neo44XdTHUC4HZSGqi03hOeB7W/E8rAlKnGe9g==", - "dev": true + "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" }, - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "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, - "requires": { - "ansi-regex": "^4.1.0" + "license": "Apache-2.0", + "peer": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" }, - "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 - } + "engines": { + "node": ">=14.17" } }, - "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 + "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, + "license": "BSD-2-Clause", + "optional": true, + "bin": { + "uglifyjs": "bin/uglifyjs" + }, + "engines": { + "node": ">=0.8.0" + } }, - "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 + "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" + } }, - "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/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" }, - "strip-json-comments": { + "node_modules/unicode-canonical-property-names-ecmascript": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", - "dev": true + "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, + "license": "MIT", + "engines": { + "node": ">=4" + } }, - "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/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, + "license": "MIT", + "dependencies": { + "unicode-canonical-property-names-ecmascript": "^2.0.0", + "unicode-property-aliases-ecmascript": "^2.0.0" + }, + "engines": { + "node": ">=4" } }, - "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 + "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, + "license": "MIT", + "engines": { + "node": ">=4" + } }, - "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.5", - "resolved": "https://registry.npmjs.org/table/-/table-5.4.5.tgz", - "integrity": "sha512-oGa2Hl7CQjfoaogtrOHEJroOcYILTx7BZWLGsJIlzoWmB2zmguhNfPJZsWPKYek/MgCxfco54gEi31d1uN2hFA==", - "dev": true, - "requires": { - "ajv": "^6.10.2", - "lodash": "^4.17.14", - "slice-ansi": "^2.1.0", - "string-width": "^3.0.0" - }, - "dependencies": { - "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" - } - } + "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" } }, - "tabtab": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/tabtab/-/tabtab-2.2.2.tgz", - "integrity": "sha1-egR/FDsBC0y9MfhX6ClhUSy/ThQ=", + "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, - "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", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "tapable": { + "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/tapable/-/tapable-1.1.3.tgz", - "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==", - "dev": true + "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" + } }, - "terser": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/terser/-/terser-4.1.3.tgz", - "integrity": "sha512-on13d+cnpn5bMouZu+J8tPYQecsdRJCJuxFJ+FVoPBoLJgk5bCBkp+Uen2hWyi0KIUm6eDarnlAlH+KgIx/PuQ==", + "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": { - "commander": "^2.20.0", - "source-map": "~0.6.1", - "source-map-support": "~0.5.12" + "license": "BSD-2-Clause", + "dependencies": { + "punycode": "^2.1.0" } }, - "terser-webpack-plugin": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-1.4.1.tgz", - "integrity": "sha512-ZXmmfiwtCLfz8WKZyYUuuHf3dMYEjg8NrjHMb0JqHVHVOSkzp3cW2/XG1fP3tRhqEqSzMwzzRQGtAPbs4Cncxg==", - "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": "^1.7.0", - "source-map": "^0.6.1", - "terser": "^4.1.2", - "webpack-sources": "^1.4.0", - "worker-farm": "^1.7.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" - } + "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, + "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 } } }, - "test-exclude": { - "version": "5.2.3", - "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-5.2.3.tgz", - "integrity": "sha512-M+oxtseCFO3EDtAaGH7iiej3CBkzXqFMbzqYAACdzKui4eZA+pq3tZEwChvOdNfa7xxy8BfbmgJSIr43cC/+2g==", + "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": { - "glob": "^7.1.3", - "minimatch": "^3.0.4", - "read-pkg-up": "^4.0.0", - "require-main-filename": "^2.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.2.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.0.tgz", - "integrity": "sha512-pZbTJpoUsCzV48Mc9Nh51VbwO0X9cuPFE8gYwx9BTCt9SF8/b7Zljd2fVgOxhIF/HDTKgpVzs+GPhyKfjLLFRQ==", - "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 - }, - "read-pkg-up": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-4.0.0.tgz", - "integrity": "sha512-6etQSH7nJGsK0RbG/2TeDzZFa8shjQ1um+SwQQ5cwKy0dhSXdOncEhb1CPpvQG4h7FyOV6EB6YlV0yJvZQNAkA==", - "dev": true, - "requires": { - "find-up": "^3.0.0", - "read-pkg": "^3.0.0" - } - } + "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" } }, - "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 + "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, + "license": "Apache-2.0", + "dependencies": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } }, - "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 + "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" }, - "throat": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/throat/-/throat-4.1.0.tgz", - "integrity": "sha1-iQN8vJLFarGJJua6TLsgDhVnKmo=", - "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" }, - "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/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, + "license": "MIT", + "dependencies": { + "xml-name-validator": "^5.0.0" + }, + "engines": { + "node": ">=18" + } }, - "through2": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", - "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", + "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": { - "readable-stream": "~2.3.6", - "xtend": "~4.0.1" + "license": "Apache-2.0", + "dependencies": { + "makeerror": "1.0.12" } }, - "timers-browserify": { - "version": "2.0.10", - "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.10.tgz", - "integrity": "sha512-YvC1SV1XdOUaL6gx5CoGroT3Gu49pK9+TZ38ErPldOWW4j49GI1HKs9DV+KGq/w6y+LZ72W1c8cKz2vzY+qpzg==", + "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, - "requires": { - "setimmediate": "^1.0.4" + "license": "MIT", + "dependencies": { + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.1.2" + }, + "engines": { + "node": ">=10.13.0" } }, - "tmp": { - "version": "0.0.29", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.29.tgz", - "integrity": "sha1-8lEl/w3Z2jzLDC3Tce4SiLuRKMA=", + "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, - "requires": { - "os-tmpdir": "~1.0.1" + "license": "BSD-2-Clause", + "engines": { + "node": ">=12" } }, - "tmpl": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.4.tgz", - "integrity": "sha1-I2QN17QtAEM5ERQIIOXPRA5SHdE=", - "dev": true - }, - "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 - }, - "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/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 } } }, - "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/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": { - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "regex-not": "^1.0.2", - "safe-regex": "^1.1.0" + "license": "MIT", + "engines": { + "node": ">=10.13.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/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, - "requires": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" + "license": "MIT", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" } }, - "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==", + "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": { - "psl": "^1.1.28", - "punycode": "^2.1.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" } }, - "tr46": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-1.0.1.tgz", - "integrity": "sha1-qLE/1r/SSJUZZ0zN5VujaTtwbQk=", + "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": { - "punycode": "^2.1.0" + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.3" + }, + "peerDependencies": { + "ajv": "^8.8.2" } }, - "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 - }, - "trim-right": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz", - "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=", - "dev": true - }, - "tslib": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.10.0.tgz", - "integrity": "sha512-qOebF53frne81cf0S9B41ByenJ3/IuH8yJKngAX35CmiZySA0khhkovshKK+jGCaMnVomla7gVlIcc3EvKPbTQ==", - "dev": true - }, - "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 - }, - "tunnel-agent": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "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": { - "safe-buffer": "^5.0.1" + "license": "BSD-2-Clause", + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + }, + "engines": { + "node": ">=8.0.0" } }, - "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/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": { - "prelude-ls": "~1.1.2" + "license": "BSD-2-Clause", + "engines": { + "node": ">=4.0" } }, - "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 - }, - "typedarray": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", - "dev": true + "node_modules/webpack/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" }, - "uglify-js": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.6.0.tgz", - "integrity": "sha512-W+jrUHJr3DXKhrsS7NUVxn3zqMOFn0hL/Ei6v0anCIMoKC93TjcflTagwIHLW7SfMFfiQuktQyFVCFHGUE0+yg==", + "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, - "optional": true, - "requires": { - "commander": "~2.20.0", - "source-map": "~0.6.1" + "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" } }, - "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/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": { - "unicode-canonical-property-names-ecmascript": "^1.0.4", - "unicode-property-aliases-ecmascript": "^1.0.4" + "license": "MIT", + "dependencies": { + "iconv-lite": "0.6.3" + }, + "engines": { + "node": ">=18" } }, - "unicode-match-property-value-ecmascript": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.1.0.tgz", - "integrity": "sha512-hDTHvaBk3RmFzvSl0UVrUmC3PuW9wKVnpoUDYH0JDkSIovzw+J5viQmeYHxVSBptubnr7PbH2e0fnpDRQnQl5g==", - "dev": true - }, - "unicode-property-aliases-ecmascript": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.0.5.tgz", - "integrity": "sha512-L5RAqCfXqAwR3RriF8pM0lU0w4Ryf/GgzONwi6KnL1taJQa7x1TCxdJnILX59WIGOwR57IVxn7Nej0fz1Ny6fw==", - "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/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": { - "arr-union": "^3.1.0", - "get-value": "^2.0.6", - "is-extendable": "^0.1.1", - "set-value": "^2.0.1" + "license": "MIT", + "engines": { + "node": ">=18" } }, - "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/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, - "requires": { - "unique-slug": "^2.0.0" + "license": "MIT", + "dependencies": { + "tr46": "^5.1.0", + "webidl-conversions": "^7.0.0" + }, + "engines": { + "node": ">=18" } }, - "unique-slug": { + "node_modules/which": { "version": "2.0.2", - "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz", - "integrity": "sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", "dev": true, - "requires": { - "imurmurhash": "^0.1.4" + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" } }, - "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": { - "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 - } + "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, + "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" } }, - "upath": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/upath/-/upath-1.1.2.tgz", - "integrity": "sha512-kXpym8nmDmlCBr7nKdIx8P2jNBa+pBpIUFRnKJ4dr8htyYGJFokkr2ZvERRtUN+9SY+JqXouNgUPtv6JQva/2Q==", - "dev": true - }, - "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/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": { + "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" } }, - "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/which-collection": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.2.tgz", + "integrity": "sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==", "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 - } + "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" } }, - "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 - }, - "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-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": { - "rc": "^1.2.1" + "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" } }, - "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/winston": { + "version": "3.13.0", + "resolved": "https://registry.npmjs.org/winston/-/winston-3.13.0.tgz", + "integrity": "sha512-rwidmA1w3SE4j0E5MuIufFhyJPBDG7Nu71RkZor1p2+qHvJSZ9GYDA81AyleQcZbh/+V6HjeBdfnTZJm9rSeQQ==", "dev": true, - "requires": { - "inherits": "2.0.3" + "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" + } + }, + "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, + "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 - } + "logform": "^2.7.0", + "readable-stream": "^3.6.2", + "triple-beam": "^1.3.0" + }, + "engines": { + "node": ">= 12.0.0" } }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", - "dev": true + "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, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } }, - "util.promisify": { + "node_modules/wordwrap": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.0.tgz", - "integrity": "sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA==", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", + "integrity": "sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==", "dev": true, - "requires": { - "define-properties": "^1.1.2", - "object.getownpropertydescriptors": "^2.0.3" - } + "license": "MIT" }, - "uuid": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz", - "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==", - "dev": true + "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, + "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" + } }, - "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 + "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" + } }, - "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/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": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "verror": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", + "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": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" } }, - "vm-browserify": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.0.tgz", - "integrity": "sha512-iq+S7vZJE60yejDYM0ek6zg308+UZsdtPExWP9VZoCFCz1zkJoXFnAX7aZfd/ZwrkidzdUZL0C/ryW+JwAiIGw==", - "dev": true + "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, + "license": "MIT" }, - "w3c-hr-time": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.1.tgz", - "integrity": "sha1-gqwr/2PZUOqeMYmlimViX+3xkEU=", + "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, - "requires": { - "browser-process-hrtime": "^0.1.2" - } + "license": "MIT" }, - "walker": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.7.tgz", - "integrity": "sha1-L3+bj9ENZ3JisYqITijRlhjgKPs=", + "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": { - "makeerror": "1.0.x" + "license": "MIT", + "engines": { + "node": ">=8" } }, - "watchpack": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.6.0.tgz", - "integrity": "sha512-i6dHe3EyLjMmDlU1/bGQpEw25XSjkJULPuAVKCbNRefQVq48yXKUpwg538F7AZTf9kyr57zj++pQFltUa5H7yA==", + "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": { - "chokidar": "^2.0.2", - "graceful-fs": "^4.1.2", - "neo-async": "^2.5.0" + "license": "MIT", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" } }, - "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.39.1", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.39.1.tgz", - "integrity": "sha512-/LAb2TJ2z+eVwisldp3dqTEoNhzp/TLCZlmZm3GGGAlnfIWDgOEE758j/9atklNLfRyhKbZTCOIoPqLJXeBLbQ==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/helper-module-context": "1.8.5", - "@webassemblyjs/wasm-edit": "1.8.5", - "@webassemblyjs/wasm-parser": "1.8.5", - "acorn": "^6.2.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.1", - "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.1", - "watchpack": "^1.6.0", - "webpack-sources": "^1.4.1" - }, - "dependencies": { - "acorn": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.2.1.tgz", - "integrity": "sha512-JD0xT5FCRDNyjDda3Lrg/IxFscp9q4tiYtxE1/nOzlKCk7hIRuYjhq1kCNkbPjMRMZuFq20HNQn1I9k8Oj0E+Q==", - "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/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" } }, - "webpack-merge": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-4.2.1.tgz", - "integrity": "sha512-4p8WQyS98bUJcCvFMbdGZyZmsKuWjWVnVHnAS3FFg0HDaRVrPbkivx2RYCre8UiemD67RsiFFLfn4JhLAin8Vw==", + "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, - "requires": { - "lodash": "^4.17.5" + "license": "MIT", + "engines": { + "node": ">=12" + }, + "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/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": { - "source-list-map": "^2.0.0", - "source-map": "~0.6.1" + "license": "MIT", + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" } }, - "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/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, - "requires": { - "iconv-lite": "0.4.24" - } + "license": "ISC" }, - "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/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" + } }, - "whatwg-url": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-6.5.0.tgz", - "integrity": "sha512-rhRZRqx/TLJQWUpQ6bmrt2UV4f0HCQ463yQuONJqC6fO2VoEb1pTYddbe59SkYq87aoM5A3bdhMZiUiVws+fzQ==", + "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": { - "lodash.sortby": "^4.7.0", - "tr46": "^1.0.1", - "webidl-conversions": "^4.0.2" + "license": "ISC", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "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": { - "isexe": "^2.0.0" + "license": "MIT", + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } } }, - "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/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, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "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/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, + "license": "Apache-2.0", + "engines": { + "node": ">=18" } }, - "wordwrap": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", - "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=", - "dev": true + "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, + "license": "MIT" }, - "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/xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", "dev": true, - "requires": { - "errno": "~0.1.7" + "license": "MIT", + "engines": { + "node": ">=0.4" } }, - "wrap-ansi": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", - "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", - "dev": true, - "requires": { - "string-width": "^1.0.1", - "strip-ansi": "^3.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" - } - }, - "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" - } - } + "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" } }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", - "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" }, - "write": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/write/-/write-1.0.3.tgz", - "integrity": "sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig==", + "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": { - "mkdirp": "^0.5.1" + "license": "ISC", + "bin": { + "yaml": "bin.mjs" + }, + "engines": { + "node": ">= 14.6" } }, - "write-file-atomic": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.4.1.tgz", - "integrity": "sha512-TGHFeZEZMnv+gBFRfjAcxL5bPHrsGKtnb4qsFAws7/vlh+QfwAaySIw4AXP9ZskTTh5GWu3FLuJhsWVdiJPGvg==", + "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": { - "graceful-fs": "^4.1.11", - "imurmurhash": "^0.1.4", - "signal-exit": "^3.0.2" + "license": "MIT", + "dependencies": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + }, + "engines": { + "node": ">=12" } }, - "ws": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/ws/-/ws-5.2.2.tgz", - "integrity": "sha512-jaHFD6PFv6UgoIVda6qZllptQsMlDEJkTQcybzzXDYM1XO9Y8em691FGMPmM46WGyLU4z9KMgQN+qrux/nhlHA==", + "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": { - "async-limiter": "~1.0.0" + "license": "ISC", + "engines": { + "node": ">=12" } }, - "xml": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/xml/-/xml-1.0.1.tgz", - "integrity": "sha1-eLpyAgApxbyHuKgaPPzXS0ovweU=", - "dev": true + "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" }, - "xml-name-validator": { + "node_modules/yargs/node_modules/is-fullwidth-code-point": { "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 - }, - "xtend": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", - "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", - "dev": true - }, - "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 + "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" + } }, - "yallist": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.0.3.tgz", - "integrity": "sha512-S+Zk8DEWE6oKpV+vI3qWkaK+jSbIK86pCwe2IF/xwIpQ8jEuxpw9NyaGjmp9+BoJv5FV2piqCDcoCtStppiq2A==", - "dev": true - }, - "yargs": { - "version": "12.0.5", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-12.0.5.tgz", - "integrity": "sha512-Lhz8TLaYnxq/2ObqHDql8dX8CJi97oHxrjUcYtzKbbykPtVW9WB+poxI+NM2UIzsMgNCZTIf0AQwsjK5yMAqZw==", - "dev": true, - "requires": { - "cliui": "^4.0.0", - "decamelize": "^1.2.0", - "find-up": "^3.0.0", - "get-caller-file": "^1.0.1", - "os-locale": "^3.0.0", - "require-directory": "^2.1.1", - "require-main-filename": "^1.0.1", - "set-blocking": "^2.0.0", - "string-width": "^2.0.0", - "which-module": "^2.0.0", - "y18n": "^3.2.1 || ^4.0.0", - "yargs-parser": "^11.1.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.2.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.0.tgz", - "integrity": "sha512-pZbTJpoUsCzV48Mc9Nh51VbwO0X9cuPFE8gYwx9BTCt9SF8/b7Zljd2fVgOxhIF/HDTKgpVzs+GPhyKfjLLFRQ==", - "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 - }, - "require-main-filename": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz", - "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=", - "dev": true - }, - "yargs-parser": { - "version": "11.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-11.1.1.tgz", - "integrity": "sha512-C6kB/WJDiaxONLJQnF8ccx9SEeoTTLek8RVbaOIsrAUS8VrBEXfmeSnCZxygc+XC2sNMBIwOOnfcxiynjHsVSQ==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } - } + "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": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" } }, - "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/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, - "requires": { - "camelcase": "^4.1.0" + "license": "MIT", + "engines": { + "node": ">=10" }, - "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": { + "url": "https://github.com/sponsors/sindresorhus" } } } diff --git a/package.json b/package.json index 1fd6d91b..506a4d1e 100644 --- a/package.json +++ b/package.json @@ -1,91 +1,106 @@ { "name": "css-loader", - "version": "3.2.0", + "version": "7.1.2", "description": "css loader module for webpack", "license": "MIT", "repository": "webpack-contrib/css-loader", "author": "Tobias Koppers @sokra", "homepage": "https://github.com/webpack-contrib/css-loader", "bugs": "https://github.com/webpack-contrib/css-loader/issues", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, "main": "dist/cjs.js", "engines": { - "node": ">= 8.9.0" + "node": ">= 18.12.0" }, "scripts": { "start": "npm run build -- -w", - "prebuild": "npm run clean", - "build": "cross-env NODE_ENV=production babel src -d dist --ignore \"src/**/*.test.js\" --copy-files", + "clean": "del-cli dist", "validate:runtime": "es-check es5 \"dist/runtime/**/*.js\"", + "prebuild": "npm run clean", + "build": "cross-env NODE_ENV=production babel src -d dist --copy-files", "postbuild": "npm run validate:runtime", - "clean": "del-cli dist", "commitlint": "commitlint --from=master", - "lint:prettier": "prettier \"{**/*,*}.{js,json,md,yml,css}\" --list-different", - "lint:js": "eslint --cache src test", + "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:**\"", - "prepare": "npm run build", - "release": "standard-version", - "security": "npm audit", + "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": "cross-env NODE_ENV=test jest --watch", - "test:coverage": "cross-env NODE_ENV=test jest --collectCoverageFrom=\"src/**/*.js\" --coverage", + "test:watch": "npm run test:only -- --watch", + "test:coverage": "npm run test:only -- --collectCoverageFrom=\"src/**/*.js\" --coverage", "pretest": "npm run lint", - "test": "cross-env NODE_ENV=test npm run test:coverage", - "defaults": "webpack-defaults" + "test": "npm run test:coverage", + "prepare": "husky && npm run build", + "release": "standard-version" }, "files": [ - "dist/", - "lib/", - "index.js" + "dist" ], "peerDependencies": { - "webpack": "^4.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.17", - "postcss-modules-extract-imports": "^2.0.0", - "postcss-modules-local-by-default": "^3.0.2", - "postcss-modules-scope": "^2.1.0", - "postcss-modules-values": "^3.0.0", - "postcss-value-parser": "^4.0.0", - "schema-utils": "^2.0.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.5.0", - "@babel/core": "^7.5.4", - "@babel/preset-env": "^7.5.4", - "@commitlint/cli": "^8.1.0", - "@commitlint/config-conventional": "^8.1.0", - "@webpack-contrib/defaults": "^5.0.2", + "@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": "^24.8.0", - "commitlint-azure-pipelines-cli": "^1.0.2", - "cross-env": "^5.2.0", - "del": "^5.0.0", - "del-cli": "^2.0.0", - "es-check": "^5.0.0", - "eslint": "^6.1.0", - "eslint-config-prettier": "^6.0.0", - "eslint-plugin-import": "^2.18.0", - "file-loader": "^4.0.0", - "husky": "^3.0.0", - "jest": "^24.8.0", - "jest-junit": "^7.0.0", - "lint-staged": "^9.2.0", - "memory-fs": "^0.4.1", + "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": "^1.18.2", - "sass": "^1.22.5", - "sass-loader": "^7.1.0", - "standard-version": "^7.0.0", - "strip-ansi": "^5.2.0", - "webpack": "^4.35.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", + "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 234739ee..3c89c371 100644 --- a/src/index.js +++ b/src/index.js @@ -2,158 +2,273 @@ MIT License http://www.opensource.org/licenses/mit-license.php Author Tobias Koppers @sokra */ -import validateOptions from 'schema-utils'; -import postcss from 'postcss'; -import postcssPkg from 'postcss/package.json'; +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 { - getOptions, - isUrlRequest, - getRemainingRequest, - getCurrentRequest, -} from 'loader-utils'; - -import schema from './options.json'; -import { importParser, icssParser, urlParser } from './plugins'; -import { - normalizeSourceMap, - getModulesPlugins, - getImportPrefix, + normalizeOptions, + shouldUseModulesPlugins, + shouldUseImportPlugin, + shouldUseURLPlugin, + shouldUseIcssPlugin, + getPreRequester, + getExportCode, getFilter, - getApiCode, getImportCode, getModuleCode, - getExportCode, - prepareCode, -} from './utils'; -import Warning from './Warning'; -import CssSyntaxError from './CssSyntaxError'; + getModulesPlugins, + normalizeSourceMap, + 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).', + ), + ); - const callback = this.async(); - const sourceMap = options.sourceMap || false; + callback(null, content, map, meta); - // Some loaders (example `"postcss-loader": "1.x.x"`) always generates source map, we should remove it - // eslint-disable-next-line no-param-reassign - map = sourceMap && map ? normalizeSourceMap(map) : null; + return; + } - // Reuse CSS AST (PostCSS AST e.g 'postcss-loader') to avoid reparsing - if (meta) { - const { ast } = meta; + let options; - if (ast && ast.type === 'postcss' && ast.version === postcssPkg.version) { - // eslint-disable-next-line no-param-reassign - content = ast.root; - } + try { + options = normalizeOptions(rawOptions, this); + } catch (error) { + callback(error); + + return; } const plugins = []; + const replacements = []; + const exports = []; - if (options.modules) { + if (shouldUseModulesPlugins(options)) { plugins.push(...getModulesPlugins(options, this)); } - // Run other loader (`postcss-loader`, `sass-loader` and etc) for importing CSS - const importPrefix = getImportPrefix(this, options.importLoaders); + const importPluginImports = []; + const importPluginApi = []; - plugins.push( - icssParser({ - loaderContext: this, - importPrefix, - localsConvention: options.localsConvention, - }) - ); + let isSupportAbsoluteURL = false; + + // 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 (options.import !== false) { + if (shouldUseImportPlugin(options)) { plugins.push( importParser({ + // 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, - importPrefix, - filter: getFilter(options.import, this.resourcePath), - }) + imports: importPluginImports, + api: importPluginApi, + filter: options.import.filter, + urlHandler: (url) => + stringifyRequest( + this, + combineRequests(getPreRequester(this)(options.importLoaders), url), + ), + }), ); } - if (options.url !== false) { + const urlPluginImports = []; + + if (shouldUseURLPlugin(options)) { + const needToResolveURL = !options.esModule; + plugins.push( urlParser({ + 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, - filter: getFilter(options.url, this.resourcePath, (value) => - isUrlRequest(value) - ), - }) + imports: icssPluginImports, + api: icssPluginApi, + replacements, + exports, + urlHandler: (url) => + stringifyRequest( + this, + combineRequests(getPreRequester(this)(options.importLoaders), url), + ), + }), ); } - postcss(plugins) - .process(content, { - from: getRemainingRequest(this) - .split('!') - .pop(), - to: getCurrentRequest(this) - .split('!') - .pop(), + // Reuse CSS AST (PostCSS AST e.g 'postcss-loader') to avoid reparsing + if (meta) { + const { ast } = meta; + + if ( + ast && + ast.type === "postcss" && + satisfies(ast.version, `^${postcssPkg.version}`) + ) { + // eslint-disable-next-line no-param-reassign + content = ast.root; + } + } + + const { resourcePath } = this; + + let result; + + try { + result = await postcss(plugins).process(content, { + hideNothingWarning: true, + from: resourcePath, + to: resourcePath, map: options.sourceMap ? { - prev: map, + prev: map ? normalizeSourceMap(map, resourcePath) : null, inline: false, annotation: false, } - : null, - }) - .then((result) => { - result - .warnings() - .forEach((warning) => this.emitWarning(new Warning(warning))); - - if (!result.messages) { - // eslint-disable-next-line no-param-reassign - result.messages = []; - } - - const { onlyLocals } = options; - - const importItems = result.messages - .filter((message) => (message.type === 'import' ? message : false)) - .reduce((accumulator, currentValue) => { - accumulator.push(currentValue.import); - - return accumulator; - }, []); - const exportItems = result.messages - .filter((message) => (message.type === 'export' ? message : false)) - .reduce((accumulator, currentValue) => { - accumulator.push(currentValue.export); - - return accumulator; - }, []); - - const importCode = getImportCode(importItems, onlyLocals); - const moduleCode = getModuleCode(result, sourceMap, onlyLocals); - const exportCode = getExportCode(exportItems, onlyLocals); - const apiCode = getApiCode(this, sourceMap, onlyLocals); - - return callback( - null, - prepareCode( - { apiCode, importCode, moduleCode, exportCode }, - result.messages, - this, - importPrefix, - onlyLocals - ) - ); - }) - .catch((error) => { - callback( - error.name === 'CssSyntaxError' ? new CssSyntaxError(error) : error - ); + : false, + }); + } 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 2e90393a..22773c7b 100644 --- a/src/options.json +++ b/src/options.json @@ -1,99 +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"] + "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": { - "enum": ["local", "global"] + "description": "Setup `mode` option.", + "link": "https://github.com/webpack-contrib/css-loader#mode", + "anyOf": [ + { + "enum": ["local", "global", "pure", "icss"] + }, + { + "instanceof": "Function" + } + ] }, "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": "number" + "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).", + "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 003e3326..a40b4412 100644 --- a/src/plugins/postcss-icss-parser.js +++ b/src/plugins/postcss-icss-parser.js @@ -1,76 +1,124 @@ -import postcss from 'postcss'; -import { extractICSS, replaceValueSymbols, replaceSymbols } from 'icss-utils'; -import loaderUtils from 'loader-utils'; - -import { getExportItemCode, getImportItemCode } from '../utils'; - -const pluginName = 'postcss-icss-parser'; - -function hasImportMessage(messages, url) { - return messages.find( - (message) => - message.pluginName === pluginName && - message.type === 'import' && - message.item.url === url && - message.item.media === '' - ); -} - -export default postcss.plugin( - pluginName, - (options = {}) => - function process(css, result) { +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(css); + const { icssImports, icssExports } = extractICSS(root); + const imports = new Map(); + const tasks = []; - let index = 0; + const { loaderContext } = options; + const resolver = loaderContext.getResolve({ + dependencyType: "icss", + conditionNames: ["style"], + extensions: ["..."], + mainFields: ["css", "style", "main", "..."], + mainFiles: ["index", "..."], + preferRelative: true, + }); - for (const importUrl of Object.keys(icssImports)) { - const url = loaderUtils.parseString(importUrl); + // eslint-disable-next-line guard-for-in + for (const url in icssImports) { + const tokens = icssImports[url]; - for (const token of Object.keys(icssImports[importUrl])) { - index += 1; - importReplacements[token] = `___CSS_LOADER_IMPORT___${index}___`; + if (Object.keys(tokens).length === 0) { + // eslint-disable-next-line no-continue + continue; + } - result.messages.push({ - pluginName, - type: 'icss-import', - item: { url, export: icssImports[importUrl][token], index }, - }); + let normalizedUrl = url; + let prefix = ""; + + const queryParts = normalizedUrl.split("!"); + + if (queryParts.length > 1) { + normalizedUrl = queryParts.pop(); + prefix = queryParts.join("!"); + } - if (!hasImportMessage(result.messages, url)) { - const media = ''; - const { loaderContext, importPrefix } = options; - - result.messages.push({ - pluginName, - type: 'import', - import: getImportItemCode( - { url, media }, - loaderContext, - importPrefix - ), - item: { url, media }, - }); + 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(newUrl), + icss: true, + index, + }); + + options.api.push({ importName, dedupe: true, index }); + } + + for (const [replacementIndex, token] of Object.keys( + item.tokens, + ).entries()) { + const replacementName = `___CSS_LOADER_ICSS_IMPORT_${index}_REPLACEMENT_${replacementIndex}___`; + const localName = item.tokens[token]; + + importReplacements[token] = replacementName; + + options.replacements.push({ replacementName, importName, localName }); } } - replaceSymbols(css, importReplacements); + if (Object.keys(importReplacements).length > 0) { + replaceSymbols(root, importReplacements); + } - for (const exportName of Object.keys(icssExports)) { - const name = exportName; + for (const name of Object.keys(icssExports)) { const value = replaceValueSymbols( icssExports[name], - importReplacements + importReplacements, ); - result.messages.push({ - pluginName, - export: getExportItemCode(name, value, options.localsConvention), - type: 'export', - item: { name, value }, - }); + options.exports.push({ name, value }); } - } -); + }, + }; +}; + +plugin.postcss = true; + +export default plugin; diff --git a/src/plugins/postcss-import-parser.js b/src/plugins/postcss-import-parser.js index 36bb3796..142e105f 100644 --- a/src/plugins/postcss-import-parser.js +++ b/src/plugins/postcss-import-parser.js @@ -1,111 +1,362 @@ -import postcss from 'postcss'; -import valueParser from 'postcss-value-parser'; +import valueParser from "postcss-value-parser"; -import { uniqWith, getImportItemCode } 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); -function getArg(nodes) { - return nodes.length !== 0 && nodes[0].type === 'string' - ? nodes[0].value - : valueParser.stringify(nodes); + if (matched && matched[2] === "true") { + return true; + } + } + + return false; } -function getUrl(node) { - if (node.type === 'function' && node.value.toLowerCase() === 'url') { - return getArg(node.nodes); - } +function isIgnoredPrevNode(atRule) { + const prevNode = atRule.prev(); + + if (prevNode && prevNode.type === "comment") { + const matched = prevNode.text.match(WEBPACK_IGNORE_COMMENT_REGEXP); - if (node.type === 'string') { - return node.value; + if (matched && matched[2] === "true") { + return true; + } } - return null; + return false; } -function parseImport(params) { - const { nodes } = valueParser(params); +function parseNode(atRule, key, options) { + // Convert only top-level @import + if (atRule.parent.type !== "root") { + return; + } + + const isIgnored = isIgnoredAfterName(atRule) || isIgnoredPrevNode(atRule); + + // 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.", + ); + + error.node = atRule; - if (nodes.length === 0) { - return null; + throw error; } - const url = getUrl(nodes[0]); + const rawParams = + atRule.raws && + atRule.raws[key] && + typeof atRule.raws[key].raw !== "undefined" + ? atRule.raws[key].raw + : atRule[key]; + const { nodes: paramsNodes } = valueParser(rawParams); - if (!url || url.trim().length === 0) { - return null; + // 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()}"`); + + error.node = atRule; + + throw error; } - return { - url, - media: valueParser - .stringify(nodes.slice(1)) - .trim() - .toLowerCase(), - }; -} + 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()}"`); -function walkAtRules(css, result, filter) { - const items = []; + error.node = atRule; - css.walkAtRules(/^import$/i, (atRule) => { - // Convert only top-level @import - if (atRule.parent.type !== 'root') { - return; + throw error; } - if (atRule.nodes) { - result.warn( - "It looks like you didn't end your @import statement correctly. " + - 'Child nodes are attached to it.', - { node: atRule } - ); - return; + 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; + + 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; - const parsed = parseImport(atRule.params); + throw error; + } + + const additionalNodes = paramsNodes.slice(1); + + let supports; + let layer; + let media; + + if (additionalNodes.length > 0) { + let nodes = []; + + for (const node of additionalNodes) { + nodes.push(node); - if (!parsed) { - // eslint-disable-next-line consistent-return - return result.warn(`Unable to find uri in '${atRule.toString()}'`, { - node: atRule, - }); + 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 = []; + } } - if (filter && !filter(parsed)) { - return; + if (nodes.length > 0) { + media = valueParser.stringify(nodes).trim().toLowerCase(); } + } - atRule.remove(); + // eslint-disable-next-line consistent-return + return { + atRule, + prefix, + url, + layer, + supports, + media, + requestable, + needResolve, + }; +} - const { url, media } = parsed; +const plugin = (options = {}) => { + return { + postcssPlugin: "postcss-import-parser", + prepare(result) { + const parsedAtRules = []; - items.push({ url, media }); - }); + 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, + ), + ); - return items; -} + return; + } -export default postcss.plugin( - pluginName, - (options = {}) => - function process(css, result) { - const traversed = walkAtRules(css, result, options.filter); - const paths = uniqWith( - traversed, - (value, other) => value.url === other.url && value.media === other.media - ); - - paths.forEach((item) => { - result.messages.push({ - pluginName, - type: 'import', - import: getImportItemCode( - item, - options.loaderContext, - options.importPrefix - ), - }); - }); - } -); + const { isSupportDataURL, isSupportAbsoluteURL } = options; + + 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; + } + + const { loaderContext } = options; + const resolver = loaderContext.getResolve({ + dependencyType: "css", + conditionNames: ["style"], + mainFields: ["css", "style", "main", "..."], + mainFiles: ["index", "..."], + extensions: [".css", "..."], + preferRelative: true, + }); + + 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; + +export default plugin; diff --git a/src/plugins/postcss-url-parser.js b/src/plugins/postcss-url-parser.js index c499cdc9..4e24e926 100644 --- a/src/plugins/postcss-url-parser.js +++ b/src/plugins/postcss-url-parser.js @@ -1,180 +1,447 @@ -import postcss from 'postcss'; -import valueParser from 'postcss-value-parser'; +import valueParser from "postcss-value-parser"; -import { uniqWith, flatten, getUrlHelperCode, getUrlItemCode } 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 getUrlFromUrlFunc(node) { - return node.nodes.length !== 0 && node.nodes[0].type === 'string' - ? node.nodes[0].value - : valueParser.stringify(node.nodes); -} +function getWebpackIgnoreCommentValue(index, nodes, inBetween) { + if (index === 0 && typeof inBetween !== "undefined") { + return inBetween; + } -function walkUrls(parsed, callback) { - parsed.walk((node) => { - if (node.type !== 'function') { - return; - } + let prevValueNode = nodes[index - 1]; - if (isUrlFunc.test(node.value)) { - callback(getNodeFromUrlFunc(node), getUrlFromUrlFunc(node), false); + 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)) { - node.nodes.forEach((nNode) => { - if (nNode.type === 'function' && isUrlFunc.test(nNode.value)) { - callback(getNodeFromUrlFunc(nNode), getUrlFromUrlFunc(nNode), false); - } + prevValueNode = nodes[index - 2]; + } - if (nNode.type === 'string') { - callback(nNode, nNode.value, true); - } - }); + if (prevValueNode.type !== "comment") { + // eslint-disable-next-line consistent-return + return; + } - // Do not traverse inside `image-set` - // eslint-disable-next-line consistent-return - return false; - } - }); + const matched = prevValueNode.value.match(WEBPACK_IGNORE_COMMENT_REGEXP); + + return matched && matched[2] === "true"; } -function getUrlsFromValue(value, result, filter, decl = null) { - if (!needParseDecl.test(value)) { +function shouldHandleURL(url, declaration, result, options) { + if (url.length === 0) { + result.warn(`Unable to find uri in '${declaration.toString()}'`, { + node: declaration, + }); + + return { requestable: false, needResolve: false }; + } + + return isURLRequestable(url, options); +} + +function parseDeclaration(declaration, key, result, options) { + if (!needParseDeclaration.test(declaration[key])) { return; } - const parsed = valueParser(value); - const urls = []; + const parsed = valueParser( + declaration.raws && declaration.raws.value && declaration.raws.value.raw + ? declaration.raws.value.raw + : declaration[key], + ); - walkUrls(parsed, (node, url, needQuotes) => { - if (url.trim().replace(/\\[\r\n]/g, '').length === 0) { - result.warn( - `Unable to find uri in '${decl ? decl.toString() : value}'`, - decl - ? { - node: decl, - } - : {} - ); + let inBetween; - return; - } + if (declaration.raws && declaration.raws.between) { + const lastCommentIndex = declaration.raws.between.lastIndexOf("/*"); - if (filter && !filter(url)) { - return; - } + const matched = declaration.raws.between + .slice(lastCommentIndex) + .match(WEBPACK_IGNORE_COMMENT_REGEXP); - urls.push({ url, needQuotes }); - }); + if (matched) { + inBetween = matched[2] === "true"; + } + } - // eslint-disable-next-line consistent-return - return { parsed, urls }; -} + let isIgnoreOnDeclaration = false; -function walkDeclsWithUrl(css, result, filter) { - const items = []; + const prevNode = declaration.prev(); - css.walkDecls((decl) => { - const item = getUrlsFromValue(decl.value, result, filter, decl); + if (prevNode && prevNode.type === "comment") { + const matched = prevNode.text.match(WEBPACK_IGNORE_COMMENT_REGEXP); - if (!item) { - return; + if (matched) { + isIgnoreOnDeclaration = matched[2] === "true"; } + } + + let needIgnore; + + const parsedURLs = []; - if (item.urls.length === 0) { + parsed.walk((valueNode, index, valueNodes) => { + if (valueNode.type !== "function") { return; } - items.push({ decl, parsed: item.parsed, urls: item.urls }); - }); + if (isUrlFunc.test(valueNode.value)) { + needIgnore = getWebpackIgnoreCommentValue(index, valueNodes, inBetween); - return items; -} + if ( + (isIgnoreOnDeclaration && typeof needIgnore === "undefined") || + needIgnore + ) { + if (needIgnore) { + // eslint-disable-next-line no-undefined + needIgnore = undefined; + } -export default postcss.plugin( - pluginName, - (options = {}) => - function process(css, result) { - const traversed = walkDeclsWithUrl(css, result, options.filter); - const paths = uniqWith( - flatten(traversed.map((item) => item.urls)), - (value, other) => - value.url === other.url && value.needQuotes === other.needQuotes + return; + } + + const { nodes } = valueNode; + 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, ); - if (paths.length === 0) { - return; + // Do not traverse inside `url` + if (!requestable) { + // eslint-disable-next-line consistent-return + return false; } - const placeholders = []; + const queryParts = url.split("!"); + + let prefix; + + if (queryParts.length > 1) { + url = queryParts.pop(); + prefix = queryParts.join("!"); + } + + 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); - let hasUrlHelper = false; + url = normalizeUrl(url, isStringValue); - paths.forEach((path, index) => { - const { loaderContext } = options; - const placeholder = `___CSS_LOADER_URL___${index}___`; - const { url, needQuotes } = path; + const { requestable, needResolve } = shouldHandleURL( + url, + declaration, + result, + options, + ); - placeholders.push({ placeholder, path }); + // Do not traverse inside `url` + if (!requestable) { + // eslint-disable-next-line consistent-return + return false; + } - if (!hasUrlHelper) { - result.messages.push({ - pluginName, - type: 'import', - import: getUrlHelperCode(loaderContext), + 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, + ); - // eslint-disable-next-line no-param-reassign - hasUrlHelper = true; - } + if ( + (isIgnoreOnDeclaration && typeof needIgnore === "undefined") || + needIgnore + ) { + if (needIgnore) { + // eslint-disable-next-line no-undefined + needIgnore = undefined; + } - result.messages.push({ - pluginName, - type: 'import', - import: getUrlItemCode( - { url, placeholder, needQuotes }, - loaderContext - ), - importType: 'url', - placeholder, - }); - }); + // eslint-disable-next-line no-continue + continue; + } - traversed.forEach((item) => { - walkUrls(item.parsed, (node, url, needQuotes) => { - const value = placeholders.find( - (placeholder) => - placeholder.path.url === url && - placeholder.path.needQuotes === needQuotes + let url = normalizeUrl(value, true); + + const { requestable, needResolve } = shouldHandleURL( + url, + declaration, + result, + options, ); - if (!value) { - return; + // Do not traverse inside `url` + if (!requestable) { + // eslint-disable-next-line consistent-return + return false; } - const { placeholder } = value; + const queryParts = url.split("!"); - // eslint-disable-next-line no-param-reassign - node.type = 'word'; - // eslint-disable-next-line no-param-reassign - node.value = placeholder; - }); + let prefix; - // eslint-disable-next-line no-param-reassign - item.decl.value = item.parsed.toString(); - }); + if (queryParts.length > 1) { + url = queryParts.pop(); + prefix = queryParts.join("!"); + } + + parsedURLs.push({ + declaration, + parsed, + node: nNode, + prefix, + url, + needQuotes: true, + needResolve, + }); + } + } + + // 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 117f5263..21d4def7 100644 --- a/src/runtime/api.js +++ b/src/runtime/api.js @@ -2,94 +2,103 @@ 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) { - 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 = {}; - for (let i = 0; i < this.length; i++) { - // eslint-disable-next-line prefer-destructuring - const id = this[i][0]; + if (dedupe) { + for (let k = 0; k < this.length; k++) { + const id = this[k][0]; - if (id != null) { - alreadyImportedModules[id] = true; + if (id != null) { + alreadyImportedModules[id] = true; + } } } - for (let i = 0; i < modules.length; i++) { - const item = modules[i]; - - // skip already imported module - // this implementation is not 100% perfect for weird media query combinations - // when a module is imported multiple times with different media queries. - // I hope this will never occur (Hey this way we have smaller bundles) - if (item[0] == null || !alreadyImportedModules[item[0]]) { - if (mediaQuery && !item[2]) { - item[2] = mediaQuery; - } else if (mediaQuery) { - item[2] = `(${item[2]}) and (${mediaQuery})`; + for (let k = 0; k < modules.length; k++) { + const item = [].concat(modules[k]); + + if (dedupe && alreadyImportedModules[item[0]]) { + continue; + } + + 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] = media; + } else { + item[1] = `@media ${item[2]} {${item[1]}}`; + item[2] = media; } + } - list.push(item); + if (supports) { + if (!item[4]) { + item[4] = `${supports}`; + } else { + item[1] = `@supports (${item[4]}) {${item[1]}}`; + item[4] = supports; + } } + + list.push(item); } }; 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 9b8b136b..6c70a337 100644 --- a/src/runtime/getUrl.js +++ b/src/runtime/getUrl.js @@ -1,21 +1,27 @@ -module.exports = (url, needQuotes) => { - // eslint-disable-next-line no-underscore-dangle, no-param-reassign - url = url.__esModule ? url.default : url; +module.exports = (url, options) => { + if (!options) { + options = {}; + } - 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) { + url += options.hash; + } + // Should url be wrapped? // See https://drafts.csswg.org/css-values-3/#urls - if (/["'() \t\n]/.test(url) || 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 6cb0572b..86866702 100644 --- a/src/utils.js +++ b/src/utils.js @@ -2,417 +2,1500 @@ MIT License http://www.opensource.org/licenses/mit-license.php Author Tobias Koppers @sokra */ -import path from 'path'; +import { fileURLToPath } from "url"; +import path from "path"; -import loaderUtils, { - isUrlRequest, - stringifyRequest, - urlToRequest, -} 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'; - -function uniqWith(array, comparator) { - return array.reduce( - (acc, d) => (!acc.some((item) => comparator(d, item)) ? [...acc, d] : acc), - [] +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 flatten(array) { - return array.reduce((a, b) => a.concat(b), []); +// 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; } -function dashesCamelCase(str) { - return str.replace(/-+(\w)/g, (match, firstLetter) => - firstLetter.toUpperCase() - ); +// 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 getImportPrefix(loaderContext, importLoaders) { - if (importLoaders === false) { - return ''; +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)}`; } - const numberImportedLoaders = parseInt(importLoaders, 10) || 0; - const loadersRequest = loaderContext.loaders - .slice( - loaderContext.loaderIndex, - loaderContext.loaderIndex + 1 + numberImportedLoaders - ) - .map((x) => x.request) - .join('!'); + // 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; + } - return `-!${loadersRequest}!`; + // Strip the space. + return ($1 || "") + $2; + }); + + return output; } -const whitespace = '[\\x20\\t\\r\\n\\f]'; -const unescapeRegExp = new RegExp( - `\\\\([\\da-f]{1,6}${whitespace}?|(${whitespace})|.)`, - 'ig' -); +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) { - 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 */ - }); + 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}`; - // Using `[path]` placeholder outputs `/` we need escape their - // Also directories can contains invalid characters for css we need escape their too - return cssesc( - loaderUtils - .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); -} - -function getFilter(filter, resourcePath, defaultFilter = null) { - return (item) => { - if (defaultFilter && !defaultFilter(item)) { - return false; + let { hashFunction, hashDigest, hashDigestLength } = options; + const matches = localIdentName.match( + /\[(?:([^:\]]+):)?(?:(hash|contenthash|fullhash))(?::([a-z]+\d*))?(?::(\d+))?\]/i, + ); + + 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); } - if (typeof filter === 'function') { - return filter(item, resourcePath); + 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; } -function getModulesPlugins(options, loaderContext) { - let modulesOptions = { - mode: 'local', - localIdentName: '[hash:base64]', - getLocalIdent, - hashPrefix: '', - localIdentRegExp: null, +const NATIVE_WIN32_PATH = /^[A-Z]:[/\\]|^\\\\/i; + +function normalizeUrl(url, isStringValue) { + 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 + } + + return 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 requestify(url, rootContext, needToResolveURL = true) { + if (needToResolveURL) { + if (/^file:/i.test(url)) { + return fileURLToPath(url); + } + + 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; }; +} - if ( - typeof options.modules === 'boolean' || - typeof options.modules === 'string' - ) { - modulesOptions.mode = - typeof options.modules === 'string' ? options.modules : 'local'; +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; + } + + 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 { - modulesOptions = Object.assign({}, modulesOptions, options.modules); + rawModulesOptions = rawOptions.modules; + ({ auto } = rawModulesOptions); } - return [ - modulesValues, - localByDefault({ mode: modulesOptions.mode }), - extractImports(), - modulesScope({ - generateScopedName: function generateScopedName(exportName) { - let localIdent = modulesOptions.getLocalIdent( - loaderContext, - modulesOptions.localIdentName, - exportName, - { - context: modulesOptions.context, - hashPrefix: modulesOptions.hashPrefix, - regExp: modulesOptions.localIdentRegExp, - } - ); + 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 (!localIdent) { - localIdent = getLocalIdent( - loaderContext, - modulesOptions.localIdentName, - exportName, - { - context: modulesOptions.context, - hashPrefix: modulesOptions.hashPrefix, - regExp: modulesOptions.localIdentRegExp, - } - ); + 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; + } + }; + } - return localIdent; - }, - }), - ]; + 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 modulesOptions.mode === "function") { + modulesOptions.mode = modulesOptions.mode( + loaderContext.resourcePath, + loaderContext.resourceQuery, + loaderContext.resourceFragment, + ); + } + + 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", + ); + } + } + + if (modulesOptions.namedExport === true && esModule === false) { + throw new Error( + "The 'modules.namedExport' option requires the 'esModule' option to be enabled", + ); + } + + return modulesOptions; } -function normalizeSourceMap(map) { +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, + }; +} + +function shouldUseImportPlugin(options) { + if (options.modules.exportOnlyLocals) { + return false; + } + + 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 }), + extractImports(), + modulesScope({ + generateScopedName(exportName, resourceFile, rawCss, node) { + let localIdent; + + if (typeof getLocalIdent !== "undefined") { + localIdent = getLocalIdent( + loaderContext, + localIdentName, + unescape(exportName), + { + context: localIdentContext, + hashSalt: localIdentHashSalt, + hashFunction: localIdentHashFunction, + hashDigest: localIdentHashDigest, + hashDigestLength: localIdentHashDigestLength, + hashStrategy, + regExp: localIdentRegExp, + node, + }, + ); + } + + // 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: options.modules.exportGlobals, + }), + ]; + } catch (error) { + loaderContext.emitError(error); + } + + return plugins; +} + +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') { - newMap = JSON.parse(newMap.replace(/^\)]}'[^\n]*\n/, '')); + 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; } -function getImportItemCode(item, loaderContext, importPrefix) { - const { url } = item; - const media = item.media || ''; +function getPreRequester({ loaders, loaderIndex }) { + const cache = Object.create(null); - if (!isUrlRequest(url)) { - return `exports.push([module.id, ${JSON.stringify( - `@import url(${url});` - )}, ${JSON.stringify(media)}]);`; - } + return (number) => { + if (cache[number]) { + return cache[number]; + } - const importUrl = importPrefix + urlToRequest(url); + if (number === false) { + cache[number] = ""; + } else { + const loadersRequest = loaders + .slice( + loaderIndex, + loaderIndex + 1 + (typeof number !== "number" ? 0 : number), + ) + .map((x) => x.request) + .join("!"); - return `exports.i(require(${stringifyRequest( - loaderContext, - importUrl - )}), ${JSON.stringify(media)});`; -} + cache[number] = `-!${loadersRequest}!`; + } -function getUrlHelperCode(loaderContext) { - return `var getUrl = require(${stringifyRequest( - loaderContext, - require.resolve('./runtime/getUrl.js') - )});`; + return cache[number]; + }; } -function getUrlItemCode(item, loaderContext) { - const { url, placeholder, needQuotes } = item; +function getImportCode(imports, options) { + let code = ""; - // Remove `#hash` and `?#hash` from `require` - const [normalizedUrl, singleQuery, hashValue] = url.split(/(\?)?#/); - const hash = - singleQuery || hashValue - ? `"${singleQuery ? '?' : ''}${hashValue ? `#${hashValue}` : ''}"` - : ''; + for (const item of imports) { + const { importName, url, icss, type } = item; - return `var ${placeholder} = getUrl(require(${stringifyRequest( - loaderContext, - urlToRequest(normalizedUrl) - )})${hash ? ` + ${hash}` : ''}${needQuotes ? ', true' : ''});`; + 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 getApiCode(loaderContext, sourceMap, onlyLocals) { - if (onlyLocals) { - return ''; +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 */ + + 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}`; + }); } - return `exports = module.exports = require(${stringifyRequest( - loaderContext, - require.resolve('./runtime/api') - )})(${sourceMap});\n`; + return JSON.stringify(resultMap); } -function getImportCode(importItems, onlyLocals) { - if (importItems.length === 0 || onlyLocals) { - return ''; +function printParams(media, dedupe, supports, layer) { + let result = ""; + + if (typeof layer !== "undefined") { + result = `, ${JSON.stringify(layer)}`; } - return `// Imports\n${importItems.join('\n')}\n`; + 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, sourceMap, onlyLocals) { - if (onlyLocals) { - return ''; +function getModuleCode( + result, + api, + replacements, + options, + isTemplateLiteralSupported, + loaderContext, +) { + if (options.modules.exportOnlyLocals === true) { + return ""; + } + + let sourceMapValue = ""; + + if (options.sourceMap) { + const sourceMap = result.map; + + sourceMapValue = `,${normalizeSourceMapForRuntime( + sourceMap, + loaderContext, + )}`; + } + + let code = isTemplateLiteralSupported + ? convertToTemplateLiteral(result.css) + : JSON.stringify(result.css); + + 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 api) { + const { url, layer, supports, media, dedupe } = item; + + if (url) { + // eslint-disable-next-line no-undefined + const printedParam = printParams(media, undefined, supports, layer); + + 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); + + beforeCode += `___CSS_LOADER_EXPORT___.i(${item.importName}${ + printedParam.length > 0 ? `, ${printedParam}` : "" + });\n`; + } + } + + 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} + "`, + ); + } } - return `// Module\nexports.push([module.id, ${JSON.stringify( - result.css - )}, ""${sourceMap && result.map ? `,${result.map}` : ''}]);\n`; + // 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`; } -function getExportItemCode(key, value, localsConvention) { - let targetKey; - const items = []; +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); - function addEntry(k) { - items.push(`\t${JSON.stringify(k)}: ${JSON.stringify(value)}`); + escapedString += + code === SLASH || code === BACKTICK || code === DOLLAR + ? `\\${str[i]}` + : str[i]; } - switch (localsConvention) { - case 'camelCase': - addEntry(key); - targetKey = camelCase(key); + return `\`${escapedString}\``; +} + +function dashesCamelCase(str) { + return str.replace(/-+(\w)/g, (match, firstLetter) => + 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, + replacements, + icssPluginUsed, + options, + isTemplateLiteralSupported, +) { + let code = "// Exports\n"; + + if (icssPluginUsed) { + let localsCode = ""; + let identifierId = 0; - if (targetKey !== key) { - addEntry(targetKey); + const addExportToLocalsCode = (names, value) => { + const normalizedNames = Array.isArray(names) + ? new Set(names) + : new Set([names]); + + for (let name of normalizedNames) { + const serializedValue = isTemplateLiteralSupported + ? convertToTemplateLiteral(value) + : JSON.stringify(value); + + if (options.modules.namedExport) { + if (name === "default") { + name = `_${name}`; + } + + if (!validIdentifier.test(name) || keywords.has(name)) { + identifierId += 1; + + const id = `_${identifierId.toString(16)}`; + + 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 'camelCaseOnly': - addEntry(camelCase(key)); - break; - case 'dashes': - addEntry(key); - targetKey = dashesCamelCase(key); + }; - if (targetKey !== key) { - addEntry(targetKey); + 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} + "`, + ); } + } + + 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`; + } + + const isCSSStyleSheetExport = options.exportType === "css-style-sheet"; + + if (isCSSStyleSheetExport) { + code += "var ___CSS_LOADER_STYLE_SHEET___ = new CSSStyleSheet();\n"; + code += + "___CSS_LOADER_STYLE_SHEET___.replaceSync(___CSS_LOADER_EXPORT___.toString());\n"; + } + + let finalExport; + + switch (options.exportType) { + case "string": + finalExport = "___CSS_LOADER_EXPORT___.toString()"; break; - case 'dashesOnly': - addEntry(dashesCamelCase(key)); + case "css-style-sheet": + finalExport = "___CSS_LOADER_STYLE_SHEET___"; break; - case 'asIs': default: - addEntry(key); + case "array": + finalExport = "___CSS_LOADER_EXPORT___"; break; } - return items.join(',\n'); + 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 getExportCode(exportItems, onlyLocals) { - if (exportItems.length === 0) { - return ''; +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 }; + } + + return { requestable: false, needResolve: false }; } - return `// Exports\n${ - onlyLocals ? 'module.exports' : 'exports.locals' - } = {\n${exportItems.join(',\n')}\n};`; + return { requestable: true, needResolve: true }; } -function getIcssReplacer(item, loaderContext, importPrefix, onlyLocals) { - const importUrl = importPrefix + urlToRequest(item.url); +function sort(a, b) { + return a.index - b.index; +} + +function combineRequests(preRequest, url) { + const idx = url.indexOf("!=!"); - return () => - onlyLocals - ? `" + require(${stringifyRequest( - loaderContext, - importUrl - )})[${JSON.stringify(item.export)}] + "` - : `" + require(${stringifyRequest( - loaderContext, - importUrl - )}).locals[${JSON.stringify(item.export)}] + "`; + return idx !== -1 + ? url.slice(0, idx + 3) + preRequest + url.slice(idx + 3) + : preRequest + url; } -function prepareCode(file, messages, loaderContext, importPrefix, onlyLocals) { - const { apiCode, importCode } = file; - let { moduleCode, exportCode } = file; +function warningFactory(warning) { + let message = ""; - messages - .filter( - (message) => - message.type === 'icss-import' || - (message.type === 'import' && message.importType === 'url') - ) - .forEach((message) => { - // Replace all urls on `require` - if (message.type === 'import') { - const { placeholder } = message; + if (typeof warning.line !== "undefined") { + message += `(${warning.line}:${warning.column}) `; + } - if (moduleCode) { - // eslint-disable-next-line no-param-reassign - moduleCode = moduleCode.replace( - new RegExp(placeholder, 'g'), - () => `" + ${placeholder} + "` - ); - } - } + if (typeof warning.plugin !== "undefined") { + message += `from "${warning.plugin}" plugin: `; + } - // Replace external ICSS import on `require` - if (message.type === 'icss-import') { - const { item } = message; - const replacer = getIcssReplacer( - item, - loaderContext, - importPrefix, - onlyLocals - ); + message += warning.text; - if (moduleCode) { - // eslint-disable-next-line no-param-reassign - moduleCode = moduleCode.replace( - new RegExp(`___CSS_LOADER_IMPORT___(${item.index})___`, 'g'), - replacer - ); - } + if (warning.node) { + message += `\n\nCode:\n ${warning.node.toString()}\n`; + } - if (exportCode) { - // eslint-disable-next-line no-param-reassign - exportCode = exportCode.replace( - new RegExp(`___CSS_LOADER_IMPORT___(${item.index})___`, 'g'), - replacer - ); - } - } - }); + const obj = new Error(message, { cause: warning }); - return [apiCode, importCode, moduleCode, exportCode].filter(Boolean).join(''); + 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`; + } + + 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 { - uniqWith, - flatten, - dashesCamelCase, - getImportPrefix, - getLocalIdent, + normalizeOptions, + shouldUseModulesPlugins, + shouldUseImportPlugin, + shouldUseURLPlugin, + shouldUseIcssPlugin, + normalizeUrl, + requestify, getFilter, + getModulesOptions, getModulesPlugins, normalizeSourceMap, - getImportItemCode, - getUrlHelperCode, - getUrlItemCode, - getApiCode, + getPreRequester, getImportCode, getModuleCode, - getExportItemCode, getExportCode, - prepareCode, + 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 new file mode 100644 index 00000000..96ec754f --- /dev/null +++ b/test/__snapshots__/esModule-option.test.js.snap @@ -0,0 +1,375 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`"esModule" option should work when not specified: errors 1`] = `[]`; + +exports[`"esModule" 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]!./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 +___CSS_LOADER_EXPORT___.push([module.id, \`@charset "UTF-8"; + +/* Comment */ + +.class { + color: red; + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} +\`, ""]); +// Exports +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"esModule" option should work when not specified: result 1`] = ` +[ + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./es-module/imported.css", + ".foo { + color: red; +} +", + "", + ], + [ + "./es-module/source.css", + "@charset "UTF-8"; + +/* Comment */ + +.class { + color: red; + background: url(replaced_file_protocol_/webpack/public/path/img.png); +} +", + "", + ], +] +`; + +exports[`"esModule" option should work when not specified: warnings 1`] = `[]`; + +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_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 +___CSS_LOADER_EXPORT___.push([module.id, \`@charset "UTF-8"; + +/* Comment */ + +.class { + color: red; + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} +\`, ""]); +// Exports +module.exports = ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"esModule" option should work with a value equal to "false": result 1`] = ` +[ + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./es-module/imported.css", + ".foo { + color: red; +} +", + "", + ], + [ + "./es-module/source.css", + "@charset "UTF-8"; + +/* Comment */ + +.class { + color: red; + background: url(/webpack/public/path/img.png); +} +", + "", + ], +] +`; + +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`] = `[]`; + +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_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 +___CSS_LOADER_EXPORT___.push([module.id, \`@charset "UTF-8"; + +/* Comment */ + +.class { + color: red; + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} +\`, ""]); +// 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`] = ` +[ + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./es-module/imported.css", + ".foo { + color: red; +} +", + "", + ], + [ + "./es-module/source.css", + "@charset "UTF-8"; + +/* Comment */ + +.class { + color: red; + background: url(replaced_file_protocol_/webpack/public/path/img.png); +} +", + "", + ], +] +`; + +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`] = `[]`; + +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_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 +___CSS_LOADER_EXPORT___.push([module.id, \`@charset "UTF-8"; + +/* Comment */ + +.OZJqogC5EaF_wROug7zE { + color: red; + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} +\`, ""]); +// 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`] = ` +[ + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./es-module/imported.css", + ".EB7DBFwH4lzwZcKIj2OA { + color: red; +} +", + "", + ], + [ + "./es-module/source.css", + "@charset "UTF-8"; + +/* Comment */ + +.OZJqogC5EaF_wROug7zE { + color: red; + background: url(replaced_file_protocol_/webpack/public/path/img.png); +} +", + "", + ], +] +`; + +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`] = `[]`; + +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_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 +___CSS_LOADER_EXPORT___.push([module.id, \`@charset "UTF-8"; + +/* Comment */ + +.OZJqogC5EaF_wROug7zE { + color: red; + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} +\`, ""]); +// 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`] = ` +[ + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./es-module/imported.css", + ".EB7DBFwH4lzwZcKIj2OA { + color: red; +} +", + "", + ], + [ + "./es-module/source.css", + "@charset "UTF-8"; + +/* Comment */ + +.OZJqogC5EaF_wROug7zE { + color: red; + background: url(replaced_file_protocol_/webpack/public/path/img.png); +} +", + "", + ], +] +`; + +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`] = `[]`; + +exports[`"esModule" 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]!./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 +___CSS_LOADER_EXPORT___.push([module.id, \`@charset "UTF-8"; + +/* Comment */ + +.class { + color: red; + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} +\`, ""]); +// Exports +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"esModule" option should work with a value equal to "true": result 1`] = ` +[ + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./es-module/imported.css", + ".foo { + color: red; +} +", + "", + ], + [ + "./es-module/source.css", + "@charset "UTF-8"; + +/* Comment */ + +.class { + color: red; + background: url(replaced_file_protocol_/webpack/public/path/img.png); +} +", + "", + ], +] +`; + +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 ff8f2468..00000000 --- a/test/__snapshots__/icss.test.js.snap +++ /dev/null @@ -1,227 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`ICSS case duplicate-export: errors 1`] = `Array []`; - -exports[`ICSS case duplicate-export: locals 1`] = ` -Object { - "_test": "_right_value", -} -`; - -exports[`ICSS case duplicate-export: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - " -", - "", - ], -] -`; - -exports[`ICSS case duplicate-export: warnings 1`] = `Array []`; - -exports[`ICSS case duplicate-export-in-multiple-export: errors 1`] = `Array []`; - -exports[`ICSS case duplicate-export-in-multiple-export: locals 1`] = ` -Object { - "_test": "_right_value", -} -`; - -exports[`ICSS case duplicate-export-in-multiple-export: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - " -", - "", - ], -] -`; - -exports[`ICSS case duplicate-export-in-multiple-export: warnings 1`] = `Array []`; - -exports[`ICSS case empty-export: errors 1`] = `Array []`; - -exports[`ICSS case empty-export: locals 1`] = `undefined`; - -exports[`ICSS case empty-export: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - " -", - "", - ], -] -`; - -exports[`ICSS case empty-export: warnings 1`] = `Array []`; - -exports[`ICSS case empty-import: errors 1`] = `Array []`; - -exports[`ICSS case empty-import: locals 1`] = `undefined`; - -exports[`ICSS case empty-import: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - " -", - "", - ], -] -`; - -exports[`ICSS case empty-import: warnings 1`] = `Array []`; - -exports[`ICSS case export: errors 1`] = `Array []`; - -exports[`ICSS case export: locals 1`] = ` -Object { - "_test": "_test", -} -`; - -exports[`ICSS case export: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - " -", - "", - ], -] -`; - -exports[`ICSS case export: warnings 1`] = `Array []`; - -exports[`ICSS case export-reserved-keywords: errors 1`] = `Array []`; - -exports[`ICSS case export-reserved-keywords: locals 1`] = ` -Object { - "constructor": "constructor", - "toString": "toString", -} -`; - -exports[`ICSS case export-reserved-keywords: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - " -", - "", - ], -] -`; - -exports[`ICSS case export-reserved-keywords: warnings 1`] = `Array []`; - -exports[`ICSS case import: errors 1`] = `Array []`; - -exports[`ICSS case import: locals 1`] = ` -Object { - "primary-color": "red", -} -`; - -exports[`ICSS case import: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - " -", - "", - ], - Array [ - 1, - ".className { - color: red; -} -", - "", - ], -] -`; - -exports[`ICSS case import: warnings 1`] = `Array []`; - -exports[`ICSS case import-reserved-keywords: errors 1`] = `Array []`; - -exports[`ICSS case import-reserved-keywords: locals 1`] = ` -Object { - "primary-color": "red", - "secondary-color": "block", -} -`; - -exports[`ICSS case import-reserved-keywords: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - " -", - "", - ], - Array [ - 1, - ".className { - color: red; - display: block; -} -", - "", - ], -] -`; - -exports[`ICSS case import-reserved-keywords: warnings 1`] = `Array []`; - -exports[`ICSS case multiple-export: errors 1`] = `Array []`; - -exports[`ICSS case multiple-export: locals 1`] = ` -Object { - "_foo": "_bar", - "_test": "_test", -} -`; - -exports[`ICSS case multiple-export: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - " -", - "", - ], -] -`; - -exports[`ICSS case multiple-export: warnings 1`] = `Array []`; - -exports[`ICSS case multiple-keys-values-in-export: errors 1`] = `Array []`; - -exports[`ICSS case multiple-keys-values-in-export: locals 1`] = ` -Object { - "_test": "_test", - "_test1": "1", - "_test2": "'string'", - "_test3": "1px 2px 3px", - "_test4": "1px 2px 3px, 1px 2px 3px", -} -`; - -exports[`ICSS case multiple-keys-values-in-export: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - " -", - "", - ], -] -`; - -exports[`ICSS 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 bd57046c..f0aa2ca8 100644 --- a/test/__snapshots__/import-option.test.js.snap +++ b/test/__snapshots__/import-option.test.js.snap @@ -1,531 +1,752 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP -exports[`import option Function: 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 */ -exports[`import option Function: module (evaluated) 1`] = ` -Array [ - Array [ - 3, - "a { - b: b; +body { + background: red; } -", - "((min-width: 100px)) and (screen and print)", - ], - Array [ - 2, - ".test { - c: c; +\`, ""]); +// 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 +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 +___CSS_LOADER_EXPORT___.push([module.id, \`div { + width: 100%; + height: 200px; +} +\`, ""]); +// Exports +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"import" option should keep original order: result 1`] = ` +[ + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./import/order-1.css", + ".order-1 { + color: red; } ", - "screen and print", + "", ], - Array [ - 1, + [ + "./import/order.css", "@import url(http://example.com/style.css);", - "", ], - Array [ - 1, - "@import url(http://example.com/style.css#hash);", + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./import/order-2.css", + ".order-2 { + color: red; +} +", "", ], - Array [ - 1, - "@import url(http://example.com/style.css?#hash);", - "", + [ + "./import/order.css", + "@import url(http://example.com/style.css);", ], - Array [ - 1, - "@import url(http://example.com/style.css?foo=bar#hash);", + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./import/order-1.css", + ".order-1 { + color: red; +} +", "", ], - Array [ - 1, - "@import url(http://example.com/other-style.css);", - "screen and print", - ], - Array [ - 1, - "@import url(//example.com/style.css);", - "", + [ + "./import/order.css", + "@import url(http://example.com/style.css);", ], - Array [ - 4, - ".query { - e: e; + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./import/order-2.css", + ".order-2 { + color: red; } ", - "", + "screen and (min-width: 2000px)", ], - Array [ - 5, - ".other-query { - f: f; + [ + "./import/order.css", + "@import url(http://example.com/style.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 [ - 6, - ".other-query { - f: f; + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./import/order-3.css", + ".order-3 { + color: red; } ", - "screen and print", - ], - Array [ - 1, - "@import url(https://fonts.googleapis.com/css?family=Roboto);", "", ], - Array [ - 1, - "@import url(https://fonts.googleapis.com/css?family=Noto+Sans+TC);", - "", + [ + "./import/order.css", + "@import url(http://example.com/style.css);", ], - Array [ - 1, - "@import url(https://fonts.googleapis.com/css?family=Noto+Sans+TC|Roboto);", - "", + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./import/order-4-1.css", + "@media (min-width: 1000px) {.order-4-1 { + color: red; +} +}", + "screen", ], - Array [ - 7, - ".relative { + [ + "../../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", ], - Array [ - 8, - ".top-relative { - color: black; + [ + "../../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", ], - Array [ - 9, - ".tilde { - color: yellow; + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./import/order-4-2.css", + "@media (min-width: 2000px) {.order-4-2 { + color: red; } -", - "", +}", + "screen", ], - Array [ - 10, - ".alias { + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./import/order-4.css", + ".order-4 { color: red; } ", - "", + "screen", ], - Array [ - 11, - ".background-imported { - background: url(/webpack/public/path/img.png); + [ + "./import/order.css", + "div { + width: 100%; + height: 200px; } ", "", ], - Array [ - 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 print; -@import url(test.css) SCREEN AND PRINT; -@import url(test.css)screen and print; -@import url(test.css) screen and print; -@import url(~package/test.css); -@import ; -@import foo-bar; -@import-normalize; -@import url('http://') :root {} +] +`; -.class { - a: b c d; -} +exports[`"import" option should keep original order: warnings 1`] = `[]`; -.foo { - @import 'path.css'; -} +exports[`"import" option should resolve "file" protocol: errors 1`] = `[]`; -.background { - background: url(/webpack/public/path/img.png); +exports[`"import" option should resolve "file" protocol: 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 "file" protocol: result 1`] = ` +[ + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./import/test.css", + ".test { + a: a; } ", "", ], + [ + "./import/import-file-protocol.css", + "", + "", + ], ] `; -exports[`import option Function: module 1`] = ` -"exports = module.exports = require(\\"../../../src/runtime/api.js\\")(false); -// Imports -exports.i(require(\\"-!../../../src/index.js??ref--4-0!./test-media.css\\"), \\"screen and print\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!./test-other.css\\"), \\"(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#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 print\\"]); -exports.push([module.id, \\"@import url(//example.com/style.css);\\", \\"\\"]); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!./query.css?foo=1&bar=1\\"), \\"\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!./other-query.css?foo=1&bar=1#hash\\"), \\"\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!./other-query.css?foo=1&bar=1#hash\\"), \\"screen and print\\"); -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(require(\\"-!../../../src/index.js??ref--4-0!./relative.css\\"), \\"\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!../import/top-relative.css\\"), \\"\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!package/tilde.css\\"), \\"\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!aliasesImport/alias.css\\"), \\"\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!./url.css\\"), \\"\\"); -var getUrl = require(\\"../../../src/runtime/getUrl.js\\"); -var ___CSS_LOADER_URL___0___ = getUrl(require(\\"./img.png\\")); +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 -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 print;\\\\n@import url(test.css) SCREEN AND PRINT;\\\\n@import url(test.css)screen and print;\\\\n@import url(test.css) screen and print;\\\\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___0___ + \\");\\\\n}\\\\n\\", \\"\\"]); +___CSS_LOADER_EXPORT___.push([module.id, \`\`, ""]); +// Exports +export default ___CSS_LOADER_EXPORT___; " `; -exports[`import option Function: warnings 1`] = ` -Array [ - "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 - -(14:1) Unable to find uri in '@import url(\\"\\")'", - "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning - -(17:1) Unable to find uri in '@import '''", - "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning - -(18:1) Unable to find uri in '@import \\"\\"'", - "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning +exports[`"import" option should resolve absolute path: result 1`] = ` +[ + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./import/test.css", + ".test { + a: a; +} +", + "", + ], + [ + "./import/import-absolute.css", + "", + "", + ], +] +`; -(19:1) Unable to find uri in '@import \\" \\"'", - "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning +exports[`"import" option should resolve absolute path: warnings 1`] = `[]`; -(20:1) Unable to find uri in '@import \\" -\\"'", - "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning +exports[`"import" option should resolve server-relative url relative rootContext: errors 1`] = `[]`; -(22:1) Unable to find uri in '@import url()'", - "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning +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___; +" +`; -(23:1) Unable to find uri in '@import url('')'", - "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning +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 { + a: a; +} +", + "", + ], + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./import/test.css", + ".test { + a: a; +} +", + "", + ], + [ + "./import/import-server-relative-url.css", + ".class { + a: b c d; +} +", + "", + ], +] +`; -(24:1) Unable to find uri in '@import url(\\"\\")'", - "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning +exports[`"import" option should resolve server-relative url relative rootContext: warnings 1`] = `[]`; -(40:1) Unable to find uri in '@import '", - "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning +exports[`"import" option should respect conditionNames: errors 1`] = `[]`; -(41:1) Unable to find uri in '@import foo-bar'", - "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning +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___; +" +`; -(43:1) It looks like you didn't end your @import statement correctly. Child nodes are attached to it.", +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; +} +", + "", + ], + [ + "./import/import-conditionNames.css", + " +", + "", + ], ] `; -exports[`import option false: errors 1`] = `Array []`; - -exports[`import option false: module (evaluated) 1`] = ` -Array [ - Array [ - 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 print; -@import url(test.css) SCREEN AND PRINT; -@import url(test.css)screen and print; -@import url(test.css) screen and print; -@import url(test-media.css) screen and print; -@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 print; -@import url(http://example.com/other-style.css) screen and print; -@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 print; -@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'); +exports[`"import" option should respect conditionNames: warnings 1`] = `[]`; -.class { - a: b c d; -} +exports[`"import" option should respect style field in package.json: errors 1`] = `[]`; -.foo { - @import 'path.css'; +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___; +" +`; -@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); +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; } ", "", ], + [ + "./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 false: module 1`] = ` -"exports = module.exports = require(\\"../../../src/runtime/api.js\\")(false); -// Imports -var getUrl = require(\\"../../../src/runtime/getUrl.js\\"); -var ___CSS_LOADER_URL___0___ = getUrl(require(\\"./img.png\\")); +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 -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 print;\\\\n@import url(test.css) SCREEN AND PRINT;\\\\n@import url(test.css)screen and print;\\\\n@import url(test.css) screen and print;\\\\n@import url(test-media.css) screen and print;\\\\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 print;\\\\n@import url(http://example.com/other-style.css) screen and print;\\\\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 print;\\\\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___0___ + \\");\\\\n}\\\\n\\", \\"\\"]); +___CSS_LOADER_EXPORT___.push([module.id, \`a { + color: black; +} +\`, ""]); +// Exports +export default ___CSS_LOADER_EXPORT___; " `; -exports[`import option false: warnings 1`] = `Array []`; +exports[`"import" option should work and output media: result 1`] = ` +"@media (prefers-color-scheme: dark) {a { + color: white; +} +}a { + color: black; +} +" +`; -exports[`import option true and modules \`false\`: errors 1`] = `Array []`; +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 true and modules \`false\`: module (evaluated) 1`] = ` -Array [ - Array [ - 2, +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 [ - 3, + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./import/node_modules/issue-683-package/test.css", ".test { - a: a; + color: coral; } ", - "screen and print", + "", ], - Array [ - 5, - "a { - b: b; -} + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./import/issue-683.css", + " ", - "((min-width: 100px)) and (screen and print)", + "", ], - Array [ - 4, - ".test { - c: c; + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./import/node_modules/package/tilde.css", + ".tilde { + color: yellow; } ", - "screen and print", - ], - Array [ - 1, - "@import url(http://example.com/style.css);", "", ], - Array [ - 1, - "@import url(http://example.com/style.css#hash);", + [ + "./import/import-order.css", + " +", "", ], - Array [ - 1, - "@import url(http://example.com/style.css?#hash);", - "", - ], - Array [ - 1, - "@import url(http://example.com/style.css?foo=bar#hash);", - "", - ], - Array [ - 1, - "@import url(http://example.com/other-style.css);", - "screen and print", - ], - Array [ - 1, - "@import url(//example.com/style.css);", - "", - ], - Array [ - 6, - ".test { - d: d -} -", - "", - ], - Array [ - 7, - ".query { - e: e; -} -", - "", - ], - Array [ - 8, - ".other-query { - f: f; -} -", - "", - ], - Array [ - 9, - ".other-query { - f: f; -} -", - "screen and print", - ], - Array [ - 1, - "@import url(https://fonts.googleapis.com/css?family=Roboto);", - "", - ], - Array [ - 1, - "@import url(https://fonts.googleapis.com/css?family=Noto+Sans+TC);", - "", - ], - Array [ - 1, - "@import url(https://fonts.googleapis.com/css?family=Noto+Sans+TC|Roboto);", - "", - ], - Array [ - 10, - ".relative { +] +`; + +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%); } -", - "", - ], - Array [ - 11, - ".top-relative { - color: black; +\`, ""]); +// 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 [ - 12, - ".tilde { - color: yellow; + [ + "../../src/index.js!./nested-import/other-imported.css", + ".baz { + color: green; + color: rgb(0 0 100% / 90%); } ", "", ], - Array [ - 13, - ".alias { + [ + "./nested-import/source.css", + ".foo { color: red; + color: rgb(0 0 100% / 90%); } ", "", ], - Array [ - 14, - ".background-imported { - background: url(/webpack/public/path/img.png); -} -", - "", - ], - Array [ - 1, - "@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 url(""); @import ''; -@import \\"\\"; -@import \\" \\"; -@import \\" -\\"; +@import ""; +@import " "; +@import " +"; @import url(); @import url(''); -@import url(\\"\\"); +@import url(""); @import ; @import foo-bar; @import-normalize; @@ -540,1114 +761,3515 @@ Array [ } .background { - background: url(/webpack/public/path/img.png); + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); } -", - "", - ], -] -`; - -exports[`import option true and modules \`false\`: module 1`] = ` -"exports = module.exports = require(\\"../../../src/runtime/api.js\\")(false); -// Imports -exports.i(require(\\"-!../../../src/index.js??ref--4-0!./test.css\\"), \\"\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!./test.css\\"), \\"screen and print\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!./test-media.css\\"), \\"screen and print\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!./test-other.css\\"), \\"(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#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 print\\"]); -exports.push([module.id, \\"@import url(//example.com/style.css);\\", \\"\\"]); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!package/test.css\\"), \\"\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!./query.css?foo=1&bar=1\\"), \\"\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!./other-query.css?foo=1&bar=1#hash\\"), \\"\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!./other-query.css?foo=1&bar=1#hash\\"), \\"screen and print\\"); -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(require(\\"-!../../../src/index.js??ref--4-0!./relative.css\\"), \\"\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!../import/top-relative.css\\"), \\"\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!package/tilde.css\\"), \\"\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!aliasesImport/alias.css\\"), \\"\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!./url.css\\"), \\"\\"); -var getUrl = require(\\"../../../src/runtime/getUrl.js\\"); -var ___CSS_LOADER_URL___0___ = getUrl(require(\\"./img.png\\")); -// 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___0___ + \\");\\\\n}\\\\n\\", \\"\\"]); -" -`; - -exports[`import option true and modules \`false\`: warnings 1`] = ` -Array [ - "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 - -(14:1) Unable to find uri in '@import url(\\"\\")'", - "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning - -(17:1) Unable to find uri in '@import '''", - "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning - -(18:1) Unable to find uri in '@import \\"\\"'", - "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning - -(19:1) Unable to find uri in '@import \\" \\"'", - "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning +@import nourl(test.css); +@import '\\\\ +\\\\ +\\\\ +'; -(20:1) Unable to find uri in '@import \\" -\\"'", - "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning +/* Should be one import and two css modules */ -(22:1) Unable to find uri in '@import url()'", - "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning +/* Should be one import and two css modules */ -(23:1) Unable to find uri in '@import url('')'", - "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning +/* Should be one import and two css modules */ -(24:1) Unable to find uri in '@import url(\\"\\")'", - "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning +/* Should be two import and two css modules */ -(40:1) Unable to find uri in '@import '", - "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning +/* Should be two import and two css modules */ -(41:1) Unable to find uri in '@import foo-bar'", - "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning +/* Should be two import and two css modules */ +@import url('!!../../helpers/string-loader.js?esModule=false!'); -(43:1) It looks like you didn't end your @import statement correctly. Child nodes are attached to it.", -] +/* Prefer relative */ +\`, ""]); +// Exports +export default ___CSS_LOADER_EXPORT___; +" `; -exports[`import option true and modules \`global\`: errors 1`] = `Array []`; - -exports[`import option true and modules \`global\`: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - ".test { +exports[`"import" option should work when not specified and print correct output: result 1`] = ` +".test { a: a; } -", - "", - ], - Array [ - 3, - ".test { +.test { a: a; } -", - "screen and print", - ], - Array [ - 5, - "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; } -", - "((min-width: 100px)) and (screen and print)", - ], - Array [ - 4, - ".test { +}}@media screen and (orientation:landscape) {.test { c: c; } -", - "screen and print", - ], - Array [ - 1, - "@import url(http://example.com/style.css);", - "", - ], - Array [ - 1, - "@import url(http://example.com/style.css#hash);", - "", - ], - Array [ - 1, - "@import url(http://example.com/style.css?#hash);", - "", - ], - Array [ - 1, - "@import url(http://example.com/style.css?foo=bar#hash);", - "", - ], - Array [ - 1, - "@import url(http://example.com/other-style.css);", - "screen and print", - ], - Array [ - 1, - "@import url(//example.com/style.css);", - "", - ], - Array [ - 6, - ".test { +}@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 } -", - "", - ], - Array [ - 7, - ".query { +.query { e: e; } -", - "", - ], - Array [ - 8, - ".other-query { +.other-query { f: f; } -", - "", - ], - Array [ - 9, - ".other-query { +@media screen and (orientation:landscape) {.other-query { f: f; } -", - "screen and print", - ], - Array [ - 1, - "@import url(https://fonts.googleapis.com/css?family=Roboto);", - "", - ], - Array [ - 1, - "@import url(https://fonts.googleapis.com/css?family=Noto+Sans+TC);", - "", - ], - Array [ - 1, - "@import url(https://fonts.googleapis.com/css?family=Noto+Sans+TC|Roboto);", - "", - ], - Array [ - 10, - ".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 [ - 11, - ".top-relative { +.top-relative { color: black; } -", - "", - ], - Array [ - 12, - ".tilde { +.tilde { color: yellow; } -", - "", - ], - Array [ - 13, - ".alias { +.alias { color: red; } -", - "", - ], - Array [ - 14, - ".background-imported { - background: url(/webpack/public/path/img.png); +.background-imported { + background: url(replaced_file_protocol_/webpack/public/path/img.png); } -", - "", - ], - Array [ - 1, - "@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; +.test { + a: a; } - -.foo { - @import 'path.css'; +.test { + a: a; } - -.background { - background: url(/webpack/public/path/img.png); +.test { + a: a; } -", - "", - ], -] -`; - -exports[`import option true and modules \`global\`: module 1`] = ` -"exports = module.exports = require(\\"../../../src/runtime/api.js\\")(false); -// Imports -exports.i(require(\\"-!../../../src/index.js??ref--4-0!./test.css\\"), \\"\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!./test.css\\"), \\"screen and print\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!./test-media.css\\"), \\"screen and print\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!./test-other.css\\"), \\"(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#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 print\\"]); -exports.push([module.id, \\"@import url(//example.com/style.css);\\", \\"\\"]); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!package/test.css\\"), \\"\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!./query.css?foo=1&bar=1\\"), \\"\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!./other-query.css?foo=1&bar=1#hash\\"), \\"\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!./other-query.css?foo=1&bar=1#hash\\"), \\"screen and print\\"); -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(require(\\"-!../../../src/index.js??ref--4-0!./relative.css\\"), \\"\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!../import/top-relative.css\\"), \\"\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!package/tilde.css\\"), \\"\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!aliasesImport/alias.css\\"), \\"\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!./url.css\\"), \\"\\"); -var getUrl = require(\\"../../../src/runtime/getUrl.js\\"); -var ___CSS_LOADER_URL___0___ = getUrl(require(\\"./img.png\\")); -// 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___0___ + \\");\\\\n}\\\\n\\", \\"\\"]); -" -`; - -exports[`import option true and modules \`global\`: warnings 1`] = ` -Array [ - "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 - -(14:1) Unable to find uri in '@import url(\\"\\")'", - "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning - -(17:1) Unable to find uri in '@import '''", - "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning - -(18:1) Unable to find uri in '@import \\"\\"'", - "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning - -(19:1) Unable to find uri in '@import \\" \\"'", - "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning - -(20:1) Unable to find uri in '@import \\" -\\"'", - "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning - -(22:1) Unable to find uri in '@import url()'", - "ModuleWarning: Module Warning (from \`replaced original path\`): -Warning - -(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 true and modules \`local\`: errors 1`] = `Array []`; - -exports[`import option true and modules \`local\`: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - "._3fDHa2l1HOcl9VXVfSKtB7 { +.test { a: a; } -", - "", - ], - Array [ - 3, - "._3fDHa2l1HOcl9VXVfSKtB7 { +.test { a: a; } -", - "screen and print", - ], - Array [ - 5, - "a { - b: b; +.strange { + color: red; } -", - "((min-width: 100px)) and (screen and print)", - ], - Array [ - 4, - ".f63QYE3dlpdhZuYg8R4pd { - c: c; +.strange { + color: red; } -", - "screen and print", - ], - Array [ - 1, - "@import url(http://example.com/style.css);", - "", - ], - Array [ - 1, - "@import url(http://example.com/style.css#hash);", - "", - ], - Array [ - 1, - "@import url(http://example.com/style.css?#hash);", - "", - ], - Array [ - 1, - "@import url(http://example.com/style.css?foo=bar#hash);", - "", - ], - Array [ - 1, - "@import url(http://example.com/other-style.css);", - "screen and print", - ], - Array [ - 1, - "@import url(//example.com/style.css);", - "", - ], - Array [ - 6, - "._1lN7KGFmbEaXH8rJdLC9cT { - d: d +.strange { + color: red; } -", - "", - ], - Array [ - 7, - "._2FiPFdRUJ6bc--oLN32vUX { - e: e; +.strange { + color: red; } -", - "", - ], - Array [ - 8, - "._2nQ7ONr22lmMu683ljj0MN { - f: f; +.space { + color: gray; } -", - "", - ], - Array [ - 9, - "._2nQ7ONr22lmMu683ljj0MN { - f: f; +.space { + color: gray; } -", - "screen and print", - ], - Array [ - 1, - "@import url(https://fonts.googleapis.com/css?family=Roboto);", - "", - ], - Array [ - 1, - "@import url(https://fonts.googleapis.com/css?family=Noto+Sans+TC);", - "", - ], - Array [ - 1, - "@import url(https://fonts.googleapis.com/css?family=Noto+Sans+TC|Roboto);", - "", - ], - Array [ - 10, - "._37G_Iu-0wcPjXN9ZhzZjlT { +.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; } -", - "", - ], - Array [ - 11, - "._4a-iWS8tumU5J8-oW8LlR { - color: black; +.my-box { + color: red; } -", - "", - ], - Array [ - 12, - "._2VXavzz3TUKPrbI3S1tkrW { - color: yellow; +.my-box { + color: red; } -", - "", - ], - Array [ - 13, - "._2E2zpPgFs4vJaVymauWk3p { +.my-box { color: red; } -", - "", - ], - Array [ - 14, - "._1N9oVhfOd30-kQu9zrdhrJ { - background: url(/webpack/public/path/img.png); +.my-box { + color: red; } -", - "", - ], - Array [ - 1, - "@import url(); +.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 url(""); @import ''; -@import \\"\\"; -@import \\" \\"; -@import \\" -\\"; +@import ""; +@import " "; +@import " +"; @import url(); @import url(''); -@import url(\\"\\"); +@import url(""); @import ; @import foo-bar; @import-normalize; @import url('http://') :root {} -.hnxX78DgkaA2kCp_BPbLd { +.class { a: b c d; } -._1Lug_45kZL-M7XuNeM4SCw { +.foo { @import 'path.css'; } -._1E9CLkKp-0idM8IkvZwXn9 { - background: url(/webpack/public/path/img.png); +.background { + background: url(replaced_file_protocol_/webpack/public/path/img.png); } -", - "", - ], -] -`; +@import nourl(test.css); +@import '\\ +\\ +\\ +'; -exports[`import option true and modules \`local\`: module 1`] = ` -"exports = module.exports = require(\\"../../../src/runtime/api.js\\")(false); -// Imports -exports.i(require(\\"-!../../../src/index.js??ref--4-0!./test.css\\"), \\"\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!./test.css\\"), \\"screen and print\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!./test-media.css\\"), \\"screen and print\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!./test-other.css\\"), \\"(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#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 print\\"]); -exports.push([module.id, \\"@import url(//example.com/style.css);\\", \\"\\"]); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!package/test.css\\"), \\"\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!./query.css?foo=1&bar=1\\"), \\"\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!./other-query.css?foo=1&bar=1#hash\\"), \\"\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!./other-query.css?foo=1&bar=1#hash\\"), \\"screen and print\\"); -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(require(\\"-!../../../src/index.js??ref--4-0!./relative.css\\"), \\"\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!../import/top-relative.css\\"), \\"\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!package/tilde.css\\"), \\"\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!aliasesImport/alias.css\\"), \\"\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!./url.css\\"), \\"\\"); -var getUrl = require(\\"../../../src/runtime/getUrl.js\\"); -var ___CSS_LOADER_URL___0___ = getUrl(require(\\"./img.png\\")); -// 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.hnxX78DgkaA2kCp_BPbLd {\\\\n a: b c d;\\\\n}\\\\n\\\\n._1Lug_45kZL-M7XuNeM4SCw {\\\\n @import 'path.css';\\\\n}\\\\n\\\\n._1E9CLkKp-0idM8IkvZwXn9 {\\\\n background: url(\\" + ___CSS_LOADER_URL___0___ + \\");\\\\n}\\\\n\\", \\"\\"]); -// Exports -exports.locals = { - \\"class\\": \\"hnxX78DgkaA2kCp_BPbLd\\", - \\"foo\\": \\"_1Lug_45kZL-M7XuNeM4SCw\\", - \\"background\\": \\"_1E9CLkKp-0idM8IkvZwXn9\\" -};" +/* 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 true and modules \`local\`: warnings 1`] = ` -Array [ +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\`): -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 {} +", ] `; -exports[`import option true and modules \`true\`: errors 1`] = `Array []`; +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 {} -exports[`import option true and modules \`true\`: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - "._3fDHa2l1HOcl9VXVfSKtB7 { - a: a; -} -", - "", - ], - Array [ - 3, - "._3fDHa2l1HOcl9VXVfSKtB7 { - a: a; +.class { + a: b c d; } -", - "screen and print", - ], - Array [ - 5, - "a { - b: b; + +.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%); } ", - "((min-width: 100px)) and (screen and print)", + "", + ], + [ + "./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%); +} +", + "", ], - Array [ - 4, - ".f63QYE3dlpdhZuYg8R4pd { +] +`; + +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; } -", - "screen and print", - ], - Array [ - 1, - "@import url(http://example.com/style.css);", - "", - ], - Array [ - 1, - "@import url(http://example.com/style.css#hash);", - "", - ], - Array [ - 1, - "@import url(http://example.com/style.css?#hash);", - "", - ], - Array [ - 1, - "@import url(http://example.com/style.css?foo=bar#hash);", - "", - ], - Array [ - 1, - "@import url(http://example.com/other-style.css);", - "screen and print", - ], - Array [ - 1, - "@import url(//example.com/style.css);", - "", - ], - Array [ - 6, - "._1lN7KGFmbEaXH8rJdLC9cT { +}@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 } -", - "", - ], - Array [ - 7, - "._2FiPFdRUJ6bc--oLN32vUX { +.query { e: e; } -", - "", - ], - Array [ - 8, - "._2nQ7ONr22lmMu683ljj0MN { +.other-query { f: f; } -", - "", - ], - Array [ - 9, - "._2nQ7ONr22lmMu683ljj0MN { +@media screen and (orientation:landscape) {.other-query { f: f; } -", - "screen and print", - ], - Array [ - 1, - "@import url(https://fonts.googleapis.com/css?family=Roboto);", - "", - ], - Array [ - 1, - "@import url(https://fonts.googleapis.com/css?family=Noto+Sans+TC);", - "", - ], - Array [ - 1, - "@import url(https://fonts.googleapis.com/css?family=Noto+Sans+TC|Roboto);", - "", - ], - Array [ - 10, - "._37G_Iu-0wcPjXN9ZhzZjlT { +}@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 [ - 11, - "._4a-iWS8tumU5J8-oW8LlR { +.top-relative { color: black; } -", - "", - ], - Array [ - 12, - "._2VXavzz3TUKPrbI3S1tkrW { +.tilde { color: yellow; } -", - "", - ], - Array [ - 13, - "._2E2zpPgFs4vJaVymauWk3p { +.alias { color: red; } -", - "", - ], - Array [ - 14, - "._1N9oVhfOd30-kQu9zrdhrJ { - background: url(/webpack/public/path/img.png); +.background-imported { + background: url(replaced_file_protocol_/webpack/public/path/img.png); } -", - "", - ], - Array [ - 1, - "@import url(); +.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 url(""); @import ''; -@import \\"\\"; -@import \\" \\"; -@import \\" -\\"; +@import ""; +@import " "; +@import " +"; @import url(); @import url(''); -@import url(\\"\\"); +@import url(""); @import ; @import foo-bar; @import-normalize; @import url('http://') :root {} -.hnxX78DgkaA2kCp_BPbLd { +.class { a: b c d; } -._1Lug_45kZL-M7XuNeM4SCw { +.foo { @import 'path.css'; } -._1E9CLkKp-0idM8IkvZwXn9 { - background: url(/webpack/public/path/img.png); +.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 */ -exports[`import option true and modules \`true\`: module 1`] = ` -"exports = module.exports = require(\\"../../../src/runtime/api.js\\")(false); -// Imports -exports.i(require(\\"-!../../../src/index.js??ref--4-0!./test.css\\"), \\"\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!./test.css\\"), \\"screen and print\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!./test-media.css\\"), \\"screen and print\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!./test-other.css\\"), \\"(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#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 print\\"]); -exports.push([module.id, \\"@import url(//example.com/style.css);\\", \\"\\"]); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!package/test.css\\"), \\"\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!./query.css?foo=1&bar=1\\"), \\"\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!./other-query.css?foo=1&bar=1#hash\\"), \\"\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!./other-query.css?foo=1&bar=1#hash\\"), \\"screen and print\\"); -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(require(\\"-!../../../src/index.js??ref--4-0!./relative.css\\"), \\"\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!../import/top-relative.css\\"), \\"\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!package/tilde.css\\"), \\"\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!aliasesImport/alias.css\\"), \\"\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!./url.css\\"), \\"\\"); -var getUrl = require(\\"../../../src/runtime/getUrl.js\\"); -var ___CSS_LOADER_URL___0___ = getUrl(require(\\"./img.png\\")); -// 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.hnxX78DgkaA2kCp_BPbLd {\\\\n a: b c d;\\\\n}\\\\n\\\\n._1Lug_45kZL-M7XuNeM4SCw {\\\\n @import 'path.css';\\\\n}\\\\n\\\\n._1E9CLkKp-0idM8IkvZwXn9 {\\\\n background: url(\\" + ___CSS_LOADER_URL___0___ + \\");\\\\n}\\\\n\\", \\"\\"]); -// Exports -exports.locals = { - \\"class\\": \\"hnxX78DgkaA2kCp_BPbLd\\", - \\"foo\\": \\"_1Lug_45kZL-M7XuNeM4SCw\\", - \\"background\\": \\"_1E9CLkKp-0idM8IkvZwXn9\\" -};" +/* 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 true and modules \`true\`: warnings 1`] = ` -Array [ +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\`): -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 {} +", ] `; -exports[`import option true: errors 1`] = `Array []`; +exports[`"import" option should work with absolute URLs: errors 1`] = `[]`; + +exports[`"import" option should work with absolute 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("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 +___CSS_LOADER_EXPORT___.push([module.id, \`a { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); +} +\`, ""]); +// Exports +export default ___CSS_LOADER_EXPORT___; +" +`; -exports[`import option true: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - ".test { - a: a; +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); } ", "", ], - Array [ - 3, - ".test { - a: a; +] +`; + +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; } -", - "screen and print", +\`, ""]); +// 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);", ], - Array [ - 5, + [ + "./import/data-uri.css", "a { - b: b; + display: block; + width: 100px; } ", - "((min-width: 100px)) and (screen and print)", + "", ], - Array [ - 4, - ".test { +] +`; + +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); +@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(~package/test.css); +@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 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); +@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 +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"import" option should work with import.filter: result 1`] = ` +"@media screen and (orientation:landscape) {@media (min-width: 100px) {a { + b: b; +} +}}@media screen and (orientation:landscape) {.test { c: c; } -", - "screen and print", - ], - Array [ - 1, - "@import url(http://example.com/style.css);", - "", - ], - Array [ - 1, - "@import url(http://example.com/style.css#hash);", - "", - ], - Array [ - 1, - "@import url(http://example.com/style.css?#hash);", - "", - ], - Array [ - 1, - "@import url(http://example.com/style.css?foo=bar#hash);", - "", - ], - Array [ - 1, - "@import url(http://example.com/other-style.css);", - "screen and print", - ], - Array [ - 1, - "@import url(//example.com/style.css);", - "", - ], - Array [ - 6, - ".test { - d: d +}@media (min-width: 100px) {.test { + d: d; } -", - "", - ], - Array [ - 7, - ".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 [ - 8, - ".other-query { +.other-query { f: f; } -", - "", - ], - Array [ - 9, - ".other-query { +@media screen and (orientation:landscape) {.other-query { f: f; } -", - "screen and print", - ], - Array [ - 1, - "@import url(https://fonts.googleapis.com/css?family=Roboto);", - "", - ], - Array [ - 1, - "@import url(https://fonts.googleapis.com/css?family=Noto+Sans+TC);", - "", - ], - Array [ - 1, - "@import url(https://fonts.googleapis.com/css?family=Noto+Sans+TC|Roboto);", - "", - ], - Array [ - 10, - ".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 [ - 11, - ".top-relative { +.top-relative { color: black; } -", - "", - ], - Array [ - 12, - ".tilde { +.tilde { color: yellow; } -", - "", - ], - Array [ - 13, - ".alias { +.alias { color: red; } -", - "", - ], - Array [ - 14, - ".background-imported { - background: url(/webpack/public/path/img.png); +.background-imported { + background: url(replaced_file_protocol_/webpack/public/path/img.png); } -", - "", - ], - Array [ - 1, - "@import url(); +.strange { + color: red; +} +.strange { + color: red; +} +.strange { + color: red; +} +.strange { + color: red; +} +a { 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; +} +.my-box { + color: red; +} +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; +} +@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; + } +} +}@layer framework {@layer form {@import url('./test.css') layer(base); + +@layer base { + .foo { + color: red; + } +} +}}@layer framework {@layer form { + .bar { + color: red; + } +} +}@layer default {@layer base {.relative { + color: red; +} +}}@layer default {@import url('./test.css') layer(base); + +@layer base { + .foo { + color: red; + } +} +}@layer default {@import url('./test.css') layer;}@layer base {@import url("./test.css") layer; + +.foo { + color: red; +} +}@layer base {@layer {.relative { + color: red; +} +}}@layer base {@import url("./test.css") layer; + +.foo { + color: red; +} +}@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; @@ -1662,100 +4284,202 @@ Array [ } .background { - background: url(/webpack/public/path/img.png); + background: url(replaced_file_protocol_/webpack/public/path/img.png); } -", - "", - ], -] -`; -exports[`import option true: module 1`] = ` -"exports = module.exports = require(\\"../../../src/runtime/api.js\\")(false); -// Imports -exports.i(require(\\"-!../../../src/index.js??ref--4-0!./test.css\\"), \\"\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!./test.css\\"), \\"screen and print\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!./test-media.css\\"), \\"screen and print\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!./test-other.css\\"), \\"(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#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 print\\"]); -exports.push([module.id, \\"@import url(//example.com/style.css);\\", \\"\\"]); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!package/test.css\\"), \\"\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!./query.css?foo=1&bar=1\\"), \\"\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!./other-query.css?foo=1&bar=1#hash\\"), \\"\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!./other-query.css?foo=1&bar=1#hash\\"), \\"screen and print\\"); -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(require(\\"-!../../../src/index.js??ref--4-0!./relative.css\\"), \\"\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!../import/top-relative.css\\"), \\"\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!package/tilde.css\\"), \\"\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!aliasesImport/alias.css\\"), \\"\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!./url.css\\"), \\"\\"); -var getUrl = require(\\"../../../src/runtime/getUrl.js\\"); -var ___CSS_LOADER_URL___0___ = getUrl(require(\\"./img.png\\")); -// 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___0___ + \\");\\\\n}\\\\n\\", \\"\\"]); +@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); +@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 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\`): +(12:1) from "postcss-import-parser" plugin: Unable to find uri in "@import url()" + +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 c810b8ce..00000000 --- a/test/__snapshots__/importLoaders-option.test.js.snap +++ /dev/null @@ -1,181 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`importLoaders option 0 (\`postcss-loader\` before): errors 1`] = `Array []`; - -exports[`importLoaders option 0 (\`postcss-loader\` before): module (evaluated) 1`] = ` -Array [ - Array [ - 2, - ".bar { - color: blue; - color: rgb(0 0 100% / 90%); -} -", - "", - ], - Array [ - 1, - ".foo { - color: red; - color: rgba(0, 0, 255, 0.9); -} -", - "", - ], -] -`; - -exports[`importLoaders option 0 (\`postcss-loader\` before): module 1`] = ` -"exports = module.exports = require(\\"../../../src/runtime/api.js\\")(false); -// Imports -exports.i(require(\\"-!../../../src/index.js??ref--4-0!./imported.css\\"), \\"\\"); -// Module -exports.push([module.id, \\".foo {\\\\n color: red;\\\\n color: rgba(0, 0, 255, 0.9);\\\\n}\\\\n\\", \\"\\"]); -" -`; - -exports[`importLoaders option 0 (\`postcss-loader\` before): warnings 1`] = `Array []`; - -exports[`importLoaders option 1 (\`postcss-loader\` before): errors 1`] = `Array []`; - -exports[`importLoaders option 1 (\`postcss-loader\` before): module (evaluated) 1`] = ` -Array [ - Array [ - 2, - ".bar { - color: blue; - color: rgba(0, 0, 255, 0.9); -} -", - "", - ], - Array [ - 1, - ".foo { - color: red; - color: rgba(0, 0, 255, 0.9); -} -", - "", - ], -] -`; - -exports[`importLoaders option 1 (\`postcss-loader\` before): module 1`] = ` -"exports = module.exports = require(\\"../../../src/runtime/api.js\\")(false); -// Imports -exports.i(require(\\"-!../../../src/index.js??ref--4-0!../../../node_modules/postcss-loader/src/index.js??ref--4-1!./imported.css\\"), \\"\\"); -// Module -exports.push([module.id, \\".foo {\\\\n color: red;\\\\n color: rgba(0, 0, 255, 0.9);\\\\n}\\\\n\\", \\"\\"]); -" -`; - -exports[`importLoaders option 1 (\`postcss-loader\` before): warnings 1`] = `Array []`; - -exports[`importLoaders option 1 (no loaders before): errors 1`] = `Array []`; - -exports[`importLoaders option 1 (no loaders before): module (evaluated) 1`] = ` -Array [ - Array [ - 2, - ".bar { - color: blue; - color: rgb(0 0 100% / 90%); -} -", - "", - ], - Array [ - 1, - ".foo { - color: red; - color: rgb(0 0 100% / 90%); -} -", - "", - ], -] -`; - -exports[`importLoaders option 1 (no loaders before): module 1`] = ` -"exports = module.exports = require(\\"../../../src/runtime/api.js\\")(false); -// Imports -exports.i(require(\\"-!../../../src/index.js??ref--4-0!./imported.css\\"), \\"\\"); -// Module -exports.push([module.id, \\".foo {\\\\n color: red;\\\\n color: rgb(0 0 100% / 90%);\\\\n}\\\\n\\", \\"\\"]); -" -`; - -exports[`importLoaders option 1 (no loaders before): warnings 1`] = `Array []`; - -exports[`importLoaders option 2 (\`postcss-loader\` before): errors 1`] = `Array []`; - -exports[`importLoaders option 2 (\`postcss-loader\` before): module (evaluated) 1`] = ` -Array [ - Array [ - 2, - ".bar { - color: blue; - color: rgba(0, 0, 255, 0.9); -} -", - "", - ], - Array [ - 1, - ".foo { - color: red; - color: rgba(0, 0, 255, 0.9); -} -", - "", - ], -] -`; - -exports[`importLoaders option 2 (\`postcss-loader\` before): module 1`] = ` -"exports = module.exports = require(\\"../../../src/runtime/api.js\\")(false); -// Imports -exports.i(require(\\"-!../../../src/index.js??ref--4-0!../../../node_modules/postcss-loader/src/index.js??ref--4-1!./imported.css\\"), \\"\\"); -// Module -exports.push([module.id, \\".foo {\\\\n color: red;\\\\n color: rgba(0, 0, 255, 0.9);\\\\n}\\\\n\\", \\"\\"]); -" -`; - -exports[`importLoaders option 2 (\`postcss-loader\` before): warnings 1`] = `Array []`; - -exports[`importLoaders option not specify (no loader before): errors 1`] = `Array []`; - -exports[`importLoaders option not specify (no loader before): module (evaluated) 1`] = ` -Array [ - Array [ - 2, - ".bar { - color: blue; - color: rgb(0 0 100% / 90%); -} -", - "", - ], - Array [ - 1, - ".foo { - color: red; - color: rgba(0, 0, 255, 0.9); -} -", - "", - ], -] -`; - -exports[`importLoaders option not specify (no loader before): module 1`] = ` -"exports = module.exports = require(\\"../../../src/runtime/api.js\\")(false); -// Imports -exports.i(require(\\"-!../../../src/index.js??ref--4-0!./imported.css\\"), \\"\\"); -// Module -exports.push([module.id, \\".foo {\\\\n color: red;\\\\n color: rgba(0, 0, 255, 0.9);\\\\n}\\\\n\\", \\"\\"]); -" -`; - -exports[`importLoaders option not specify (no loader before): warnings 1`] = `Array []`; diff --git a/test/__snapshots__/loader.test.js.snap b/test/__snapshots__/loader.test.js.snap index 9c865cf1..7d01bc9a 100644 --- a/test/__snapshots__/loader.test.js.snap +++ b/test/__snapshots__/loader.test.js.snap @@ -1,155 +1,298 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`loader should compile with \`css\` entry point (with \`modules\` and scope \`global\`): api 1`] = ` -"/* - 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) { - const list = []; - - // return the list of modules as css string - list.toString = function toString() { - return this.map((item) => { - const content = cssWithMappingToString(item, useSourceMap); - - if (item[2]) { - return \`@media \${item[2]}{\${content}}\`; - } - - return content; - }).join(''); - }; +// Jest Snapshot v1, https://jestjs.io/docs/snapshot-testing - // import a list of modules into the list - // eslint-disable-next-line func-names - list.i = function(modules, mediaQuery) { - if (typeof modules === 'string') { - // eslint-disable-next-line no-param-reassign - modules = [[null, modules, '']]; - } - - const alreadyImportedModules = {}; - - for (let i = 0; i < this.length; i++) { - // eslint-disable-next-line prefer-destructuring - const id = this[i][0]; - - if (id != null) { - alreadyImportedModules[id] = true; - } - } - - for (let i = 0; i < modules.length; i++) { - const item = modules[i]; - - // skip already imported module - // this implementation is not 100% perfect for weird media query combinations - // when a module is imported multiple times with different media queries. - // I hope this will never occur (Hey this way we have smaller bundles) - if (item[0] == null || !alreadyImportedModules[item[0]]) { - if (mediaQuery && !item[2]) { - item[2] = mediaQuery; - } else if (mediaQuery) { - item[2] = \`(\${item[2]}) and (\${mediaQuery})\`; - } - - list.push(item); - } - } - }; +exports[`loader issue #1033 (2): errors 1`] = `[]`; - return list; -}; +exports[`loader issue #1033 (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, \`\`, ""]); +// Exports +export default ___CSS_LOADER_EXPORT___; +" +`; -function cssWithMappingToString(item, useSourceMap) { - const content = item[1] || ''; - // eslint-disable-next-line prefer-destructuring - const cssMapping = item[3]; +exports[`loader issue #1033 (2): result 1`] = ` +[ + [ + "./modules/issue-1033/issue-1033.css", + "", + "", + ], +] +`; - if (!cssMapping) { - return content; - } +exports[`loader issue #1033 (2): warnings 1`] = `[]`; - if (useSourceMap && typeof btoa === 'function') { - const sourceMapping = toComment(cssMapping); - const sourceURLs = cssMapping.sources.map( - (source) => \`/*# sourceURL=\${cssMapping.sourceRoot}\${source} */\` - ); +exports[`loader issue #1033: errors 1`] = `[]`; - return [content] - .concat(sourceURLs) - .concat([sourceMapping]) - .join('\\\\n'); - } +exports[`loader issue #1033: module 1`] = ` +"// Exports +" +`; - return [content].join('\\\\n'); -} +exports[`loader issue #1033: result 1`] = `{}`; + +exports[`loader issue #1033: warnings 1`] = `[]`; + +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___; +" +`; -// 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}\`; +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`] = `[]`; - return \`/*# \${data} */\`; +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 compile with \`css\` entry point (with \`modules\` and scope \`global\`): errors 1`] = `Array []`; +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 compile with \`css\` entry point (with \`modules\` and scope \`global\`): escape 1`] = ` -"module.exports = (url, needQuotes) => { - // eslint-disable-next-line no-underscore-dangle, no-param-reassign - url = url.__esModule ? url.default : url; +exports[`loader should pass queries to other loader: warnings 1`] = `[]`; - if (typeof url !== 'string') { - return url; - } +exports[`loader should reuse \`ast\` from "postcss-loader": errors 1`] = `[]`; - // If url is already wrapped in quotes, remove them - if (/^['\\"].*['\\"]$/.test(url)) { - // eslint-disable-next-line no-param-reassign - url = url.slice(1, -1); - } +exports[`loader should reuse \`ast\` from "postcss-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("./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 +___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; +} - // Should url be wrapped? - // See https://drafts.csswg.org/css-values-3/#urls - if (/[\\"'() \\\\t\\\\n]/.test(url) || needQuotes) { - return \`\\"\${url.replace(/\\"/g, '\\\\\\\\\\"').replace(/\\\\n/g, '\\\\\\\\n')}\\"\`; +@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); +} - return url; -}; +a:hover { + color: #639; + } +\`, ""]); +// Exports +export default ___CSS_LOADER_EXPORT___; " `; -exports[`loader should compile with \`css\` entry point (with \`modules\` and scope \`global\`): module (evaluated) 1`] = ` -Array [ - Array [ - 2, - ".foo { - color: red; +exports[`loader should reuse \`ast\` from "postcss-loader": result 1`] = ` +[ + [ + "./postcss-present-env/source.css", + ":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(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 (min-resolution: 192dpi) { + +.hero:matches(main, .main) { + background-image: url(replaced_file_protocol_/webpack/public/path/img2x.png); +} +} + +a { + color: rgba(0, 0, 255, 0.9); +} + +a:hover { + color: #639; + } ", "", ], - Array [ - 1, - "@charset \\"UTF-8\\"; +] +`; + +exports[`loader should reuse \`ast\` from "postcss-loader": warnings 1`] = `[]`; + +exports[`loader should throw an error on invisible spaces: errors 1`] = ` +[ + "ModuleBuildError: Module build failed (from \`replaced original path\`): + +SyntaxError + +(1:8) /test/fixtures/invisible-space.css Unknown word color + +> 1 | a { 

 color: red; 

 } + | ^ +", +] +`; + +exports[`loader should throw an error on invisible spaces: warnings 1`] = `[]`; + +exports[`loader should throw error on invalid css syntax: errors 1`] = ` +[ + "ModuleBuildError: Module build failed (from \`replaced original path\`): + +SyntaxError + +(2:3) /test/fixtures/error.css Unknown word invalid + + 1 | .some { +> 2 | invalid css; + | ^ + 3 | } + 4 | +", +] +`; + +exports[`loader should throw error on invalid css syntax: warnings 1`] = `[]`; + +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`] = `[]`; + +exports[`loader should work and nothing to do with built-in CSS support: errors 1`] = `[]`; + +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"; + /* 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 { @@ -161,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 { @@ -172,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; @@ -243,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{ @@ -267,182 +424,29 @@ a[href='' i] { color: red; } -a[href=\\"\\"] { +a[href=""] { color: blue; } -a[href=\\"\\" i] { +a[href="" i] { color: blue; } -", - "", - ], -] -`; - -exports[`loader should compile with \`css\` entry point (with \`modules\` and scope \`global\`): module 1`] = ` -"exports = module.exports = require(\\"../../src/runtime/api.js\\")(false); -// Imports -exports.i(require(\\"-!../../src/index.js??ref--4-0!./imported.css\\"), \\"\\"); -var getUrl = require(\\"../../src/runtime/getUrl.js\\"); -var ___CSS_LOADER_URL___0___ = getUrl(require(\\"./url/img.png\\")); -// Module -exports.push([module.id, \\"@charset \\\\\\"UTF-8\\\\\\";\\\\n\\\\n/* Comment */\\\\n\\\\n.class {\\\\n color: red;\\\\n background: url(\\" + ___CSS_LOADER_URL___0___ + \\");\\\\n}\\\\n\\\\n.class-duplicate-url {\\\\n background: url(\\" + ___CSS_LOADER_URL___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[`loader should compile with \`css\` entry point (with \`modules\` and scope \`global\`): warnings 1`] = `Array []`; - -exports[`loader should compile with \`css\` entry point (with \`modules\` and scope \`local\`): api 1`] = ` -"/* - 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) { - const list = []; - - // return the list of modules as css string - list.toString = function toString() { - return this.map((item) => { - const content = cssWithMappingToString(item, useSourceMap); - - if (item[2]) { - return \`@media \${item[2]}{\${content}}\`; - } - - return content; - }).join(''); - }; - - // import a list of modules into the list - // eslint-disable-next-line func-names - list.i = function(modules, mediaQuery) { - if (typeof modules === 'string') { - // eslint-disable-next-line no-param-reassign - modules = [[null, modules, '']]; - } - - const alreadyImportedModules = {}; - - for (let i = 0; i < this.length; i++) { - // eslint-disable-next-line prefer-destructuring - const id = this[i][0]; - - if (id != null) { - alreadyImportedModules[id] = true; - } - } - - for (let i = 0; i < modules.length; i++) { - const item = modules[i]; - - // skip already imported module - // this implementation is not 100% perfect for weird media query combinations - // when a module is imported multiple times with different media queries. - // I hope this will never occur (Hey this way we have smaller bundles) - if (item[0] == null || !alreadyImportedModules[item[0]]) { - if (mediaQuery && !item[2]) { - item[2] = mediaQuery; - } else if (mediaQuery) { - item[2] = \`(\${item[2]}) and (\${mediaQuery})\`; - } - - list.push(item); - } - } - }; - - 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} */\`; -} " `; -exports[`loader should compile with \`css\` entry point (with \`modules\` and scope \`local\`): errors 1`] = `Array []`; - -exports[`loader should compile with \`css\` entry point (with \`modules\` and scope \`local\`): escape 1`] = ` -"module.exports = (url, needQuotes) => { - // eslint-disable-next-line no-underscore-dangle, no-param-reassign - url = url.__esModule ? url.default : url; - - if (typeof url !== 'string') { - return 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); - } - - // Should url be wrapped? - // See https://drafts.csswg.org/css-values-3/#urls - if (/[\\"'() \\\\t\\\\n]/.test(url) || needQuotes) { - return \`\\"\${url.replace(/\\"/g, '\\\\\\\\\\"').replace(/\\\\n/g, '\\\\\\\\n')}\\"\`; - } - - return url; -}; -" -`; +exports[`loader should work and nothing to do with built-in CSS support: module 2`] = ` +"@charset "UTF-8"; -exports[`loader should compile with \`css\` entry point (with \`modules\` and scope \`local\`): module (evaluated) 1`] = ` -Array [ - Array [ - 2, - ".KTxgbb6qrDrjy0obHlZaJ { - color: red; -} -", - "", - ], - Array [ - 1, - "@charset \\"UTF-8\\"; /* Comment */ -._1PSZ4tK4URrenXyNSoawrx { +.class { color: red; - background: url(/webpack/public/path/img.png); + background: url("./url/img.png"); } -._3YYoEr128Gk7ZgfRycu4tr { - background: url(/webpack/public/path/img.png); +.class-duplicate-url { + background: url("./url/img.png"); } :root { @@ -450,13 +454,13 @@ Array [ --bar: 2px; } -._1PSZ4tK4URrenXyNSoawrx { a: b c d; } +.class { a: b c d; } -._1LWD9ZV4XMmN23IPiMONS3 {} +.two {} -._3i3CD1fyX8bvzRt1H0IV-f { a: b c d; } +.u-m\\+ { a: b c d; } -._1PSZ4tK4URrenXyNSoawrx { content: \\"\\\\F10C\\" } +.class { content: "\\F10C" } @media only screen and (max-width: 600px) { body { @@ -464,61 +468,75 @@ Array [ } } -._1PSZ4tK4URrenXyNSoawrx { - content: \\"\\\\2193\\"; - content: \\"\\\\2193\\\\2193\\"; - content: \\"\\\\2193 \\\\2193\\"; - content: \\"\\\\2193\\\\2193\\\\2193\\"; - content: \\"\\\\2193 \\\\2193 \\\\2193\\"; +.class { + content: "\\2193"; + content: "\\2193\\2193"; + content: "\\2193 \\2193"; + content: "\\2193\\2193\\2193"; + content: "\\2193 \\2193 \\2193"; } -._1fWEySWrY44TvDnJ8JNxnE {} -._1fWEySWrY44TvDnJ8JNxnE {} +.-top {} +.\\-top {} -#Zmuw5k7Gg4hpgd6CVBEkq {} +#\\#test {} -.nz2GDQ2B9PRi6GmzRwbUM { +.grid { display: flex; flex-wrap: wrap; } -.nz2GDQ2B9PRi6GmzRwbUM._1fWEySWrY44TvDnJ8JNxnE { +.grid.\\-top { align-items: flex-start; } -.nz2GDQ2B9PRi6GmzRwbUM._1fWEySWrY44TvDnJ8JNxnE { +.grid.-top { align-items: flex-start; } -.nz2GDQ2B9PRi6GmzRwbUM._12Sbi_HmVVsUl9TM-zo3h- { +.grid.\\-middle { align-items: center; } -.nz2GDQ2B9PRi6GmzRwbUM.gpFhy6a0Dyg4XrktE4jA3 { +.grid.\\-bottom { align-items: flex-end; } -._3i3CD1fyX8bvzRt1H0IV-f {} +.u-m\\00002b {} -.YDvxHwoU5TyTmW1oTkKgw {} +.u-m00002b {} -#_3i3CD1fyX8bvzRt1H0IV-f {} +#u-m\\+ {} body { font-family: '微软雅黑'; /* some chinese font name */ } -._3txeRUnk43pQ_ialOcI-1F { - content: '\\\\e901'; +.myStyle { + content: '\\e901'; } -._3txeRUnk43pQ_ialOcI-1F { - 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; } -._3Zu4uw_Urs6mU3AHN6h0NV {} +\\.\\$\\{foo\\} { + color: aliceblue; +} -._4_pn9LmAb2XtAy0kg4FN_ {} /* matches elements with class=\\":\`(\\" */ -._2LEttkwzH7jRE93Ku8MGqY {} /* matches elements with class=\\"1a2b3c\\" */ -#_2E85FJStrx25rDG2lYWifC {} /* matches the element with id=\\"#fake-id\\" */ -#_2pyPm3oWgKQ-rjECcnFYrX {} /* matches the element with id=\\"-a-b-c-\\" */ -#_2pmolVDQD2g7wt3ejy2doK {} /* matches the element with id=\\"©\\" */ +/* \` */ +/* \`\` */ +/* \`\`\` */ +/* \${} */ +/* \\\\\` */ :root { --title-align: center; @@ -535,231 +553,2669 @@ body { }; } -._2mQhIWfQwYBHR8C-27Rb-E { - content: \\"\\\\2014\\\\A0\\"; - content: \\"\\\\2014 \\\\A0\\"; - content: \\"\\\\A0 \\\\2014\\"; - content: \\"\\\\A0\\\\2014\\"; - margin-top: 1px\\\\9; - background-color: #000\\\\9; +.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 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 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 in 'production' mode: errors 1`] = `[]`; + +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"; + + +/* 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 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 + ); +} + +.class { + color: red; + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}), /** webpackIgnore: true */url("./url/img.png"); +} + +.class { + color: red; + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}), /** webpackIgnore: true */ url("./url/img.png"); +} + +.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 +export default ___CSS_LOADER_EXPORT___; +" +`; + +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; +} +", + "", + ], + [ + "../../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); } -._2H1jUQC4I1yE2c9CEwXfAS._3HDHfIW-5V2j3qdUcRiaMD ._2eB5NM0D15e1HQWl3AHa8q:before{ - content: '💡'; +.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); } -.JNjvwXXuHnb_zjhkwPzBD { - background: url(data:img/jpg;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAhxJREFUSA3tk71rU1EYxnMTEoJUkowWwdJ2akEHBfGjCiIF6ZylVUKSm2TqZLGI+A/oIu2UXm8C4lAyF4SWji0tdFLo1Eo7VN0SaBEhH7e/Nz0nPTfGOjiaCyfPc5734zlfCQT6X/8E/vUErL81KBaL9y3LSnued5PcITjUOwR3gsFg2bbtjYt6/NGgXC4P1et1l2aPLmpAbD0SidjpdPqgV15PA9d17zQajU8UxHQRK/4G35Q5pveAK8LlI1ZjPMnlcltnyvnvbwaO41xvtVqy7YHztMACq5xnlb9EY3dRdvcGo1kj5wR+t1AofDG0gM+A875E8DNjRCexsrV8Pj9ZqVQitVrtqejxePxjMpmss5hVTB4buXvMb2DyU2tBTRS+BjvNlVYUpPl7iuVO3Gq1uoQx1FtSOW1gPgp5ZWrdBtNmUDgv5asgxQ8F1af5vhY0YjyjuWC3wTszKJz7GBOkcFlQfW2ONq4FjWi+Hj6DRCKxQOK2TlY4x92EuYd5dvMAbYIzfikau3pu5tJ8KxaLLfo0cyKci7tK4TZjUMcoXAmHwzle0Q/RaC5P1GFMyVx9R9Fo9HYqlTrSgqDvFelAqVQa5hmuMR/WGtjAaBdjwBoDQ0ZsnwVMZjKZ9n0Zem8DSeDPdrnZbL6F2l3NOvUYNZk4oVDoRTabPe4EDNJzB0ZcjAYxeoZ2i3FNxQ7BHYw/cB/fldaH//UETgHHO8S44KbfXgAAAABJRU5ErkJggg==); +.class { + color: red; + /** webpackIgnore: true */ + background: /** webpackIgnore: false */ url(replaced_file_protocol_/webpack/public/path/img.png), /** webpackIgnore: true */ url("./url/img.png"); } -a[href=''] { +.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); } -a[href='' i] { +.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); } -a[href=\\"\\"] { - color: blue; +.class { + color: red; + background: url(replaced_file_protocol_/webpack/public/path/img.png), /** webpackIgnore: false */ /** webpackIgnore: true */ url("./url/img.png"); } -a[href=\\"\\" i] { - color: blue; +.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; } -", - "", - ], -] -`; - -exports[`loader should compile with \`css\` entry point (with \`modules\` and scope \`local\`): module 1`] = ` -"exports = module.exports = require(\\"../../src/runtime/api.js\\")(false); -// Imports -exports.i(require(\\"-!../../src/index.js??ref--4-0!./imported.css\\"), \\"\\"); -var getUrl = require(\\"../../src/runtime/getUrl.js\\"); -var ___CSS_LOADER_URL___0___ = getUrl(require(\\"./url/img.png\\")); -// Module -exports.push([module.id, \\"@charset \\\\\\"UTF-8\\\\\\";\\\\n\\\\n/* Comment */\\\\n\\\\n._1PSZ4tK4URrenXyNSoawrx {\\\\n color: red;\\\\n background: url(\\" + ___CSS_LOADER_URL___0___ + \\");\\\\n}\\\\n\\\\n._3YYoEr128Gk7ZgfRycu4tr {\\\\n background: url(\\" + ___CSS_LOADER_URL___0___ + \\");\\\\n}\\\\n\\\\n:root {\\\\n --foo: 1px;\\\\n --bar: 2px;\\\\n}\\\\n\\\\n._1PSZ4tK4URrenXyNSoawrx { a: b c d; }\\\\n\\\\n._1LWD9ZV4XMmN23IPiMONS3 {}\\\\n\\\\n._3i3CD1fyX8bvzRt1H0IV-f { a: b c d; }\\\\n\\\\n._1PSZ4tK4URrenXyNSoawrx { content: \\\\\\"\\\\\\\\F10C\\\\\\" }\\\\n\\\\n@media only screen and (max-width: 600px) {\\\\n body {\\\\n background-color: lightblue;\\\\n }\\\\n}\\\\n\\\\n._1PSZ4tK4URrenXyNSoawrx {\\\\n content: \\\\\\"\\\\\\\\2193\\\\\\";\\\\n content: \\\\\\"\\\\\\\\2193\\\\\\\\2193\\\\\\";\\\\n content: \\\\\\"\\\\\\\\2193 \\\\\\\\2193\\\\\\";\\\\n content: \\\\\\"\\\\\\\\2193\\\\\\\\2193\\\\\\\\2193\\\\\\";\\\\n content: \\\\\\"\\\\\\\\2193 \\\\\\\\2193 \\\\\\\\2193\\\\\\";\\\\n}\\\\n\\\\n._1fWEySWrY44TvDnJ8JNxnE {}\\\\n._1fWEySWrY44TvDnJ8JNxnE {}\\\\n\\\\n#Zmuw5k7Gg4hpgd6CVBEkq {}\\\\n\\\\n.nz2GDQ2B9PRi6GmzRwbUM {\\\\n display: flex;\\\\n flex-wrap: wrap;\\\\n}\\\\n.nz2GDQ2B9PRi6GmzRwbUM._1fWEySWrY44TvDnJ8JNxnE {\\\\n align-items: flex-start;\\\\n}\\\\n.nz2GDQ2B9PRi6GmzRwbUM._1fWEySWrY44TvDnJ8JNxnE {\\\\n align-items: flex-start;\\\\n}\\\\n.nz2GDQ2B9PRi6GmzRwbUM._12Sbi_HmVVsUl9TM-zo3h- {\\\\n align-items: center;\\\\n}\\\\n.nz2GDQ2B9PRi6GmzRwbUM.gpFhy6a0Dyg4XrktE4jA3 {\\\\n align-items: flex-end;\\\\n}\\\\n\\\\n._3i3CD1fyX8bvzRt1H0IV-f {}\\\\n\\\\n.YDvxHwoU5TyTmW1oTkKgw {}\\\\n\\\\n#_3i3CD1fyX8bvzRt1H0IV-f {}\\\\n\\\\nbody {\\\\n font-family: '微软雅黑'; /* some chinese font name */\\\\n}\\\\n\\\\n._3txeRUnk43pQ_ialOcI-1F {\\\\n content: '\\\\\\\\e901';\\\\n}\\\\n\\\\n._3txeRUnk43pQ_ialOcI-1F {\\\\n content: '\\\\\\\\E901';\\\\n}\\\\n\\\\n._3Zu4uw_Urs6mU3AHN6h0NV {}\\\\n\\\\n._4_pn9LmAb2XtAy0kg4FN_ {} /* matches elements with class=\\\\\\":\`(\\\\\\" */\\\\n._2LEttkwzH7jRE93Ku8MGqY {} /* matches elements with class=\\\\\\"1a2b3c\\\\\\" */\\\\n#_2E85FJStrx25rDG2lYWifC {} /* matches the element with id=\\\\\\"#fake-id\\\\\\" */\\\\n#_2pyPm3oWgKQ-rjECcnFYrX {} /* matches the element with id=\\\\\\"-a-b-c-\\\\\\" */\\\\n#_2pmolVDQD2g7wt3ejy2doK {} /* 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._2mQhIWfQwYBHR8C-27Rb-E {\\\\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._2H1jUQC4I1yE2c9CEwXfAS._3HDHfIW-5V2j3qdUcRiaMD ._2eB5NM0D15e1HQWl3AHa8q:before{\\\\n content: '💡';\\\\n}\\\\n\\\\n.JNjvwXXuHnb_zjhkwPzBD {\\\\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 -exports.locals = { - \\"class\\": \\"_1PSZ4tK4URrenXyNSoawrx\\", - \\"class-duplicate-url\\": \\"_3YYoEr128Gk7ZgfRycu4tr\\", - \\"two\\": \\"_1LWD9ZV4XMmN23IPiMONS3\\", - \\"u-m+\\": \\"_3i3CD1fyX8bvzRt1H0IV-f\\", - \\"-top\\": \\"_1fWEySWrY44TvDnJ8JNxnE\\", - \\"#test\\": \\"Zmuw5k7Gg4hpgd6CVBEkq\\", - \\"grid\\": \\"nz2GDQ2B9PRi6GmzRwbUM\\", - \\"-middle\\": \\"_12Sbi_HmVVsUl9TM-zo3h-\\", - \\"-bottom\\": \\"gpFhy6a0Dyg4XrktE4jA3\\", - \\"u-m00002b\\": \\"YDvxHwoU5TyTmW1oTkKgw\\", - \\"myStyle\\": \\"_3txeRUnk43pQ_ialOcI-1F\\", - \\"♫\\": \\"_3Zu4uw_Urs6mU3AHN6h0NV\\", - \\":\`(\\": \\"_4_pn9LmAb2XtAy0kg4FN_\\", - \\"1a2b3c\\": \\"_2LEttkwzH7jRE93Ku8MGqY\\", - \\"#fake-id\\": \\"_2E85FJStrx25rDG2lYWifC\\", - \\"-a-b-c-\\": \\"_2pyPm3oWgKQ-rjECcnFYrX\\", - \\"©\\": \\"_2pmolVDQD2g7wt3ejy2doK\\", - \\"test\\": \\"_2mQhIWfQwYBHR8C-27Rb-E\\", - \\"light\\": \\"_2H1jUQC4I1yE2c9CEwXfAS\\", - \\"on\\": \\"_3HDHfIW-5V2j3qdUcRiaMD\\", - \\"bulb\\": \\"_2eB5NM0D15e1HQWl3AHa8q\\", - \\"base64\\": \\"JNjvwXXuHnb_zjhkwPzBD\\" -};" -`; -exports[`loader should compile with \`css\` entry point (with \`modules\` and scope \`local\`): warnings 1`] = `Array []`; - -exports[`loader should compile with \`css\` entry point: api 1`] = ` -"/* - 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) { - const list = []; - - // return the list of modules as css string - list.toString = function toString() { - return this.map((item) => { - const content = cssWithMappingToString(item, useSourceMap); - - if (item[2]) { - return \`@media \${item[2]}{\${content}}\`; - } - - return content; - }).join(''); - }; +.class { + /*webpackIgnore: true*/ + background-image: image-set( + url(./url/img.png) 2x, + url(./url/img.png) 3x, + url(./url/img.png) 4x + ); +} - // import a list of modules into the list - // eslint-disable-next-line func-names - list.i = function(modules, mediaQuery) { - if (typeof modules === 'string') { - // eslint-disable-next-line no-param-reassign - modules = [[null, modules, '']]; - } - - const alreadyImportedModules = {}; - - for (let i = 0; i < this.length; i++) { - // eslint-disable-next-line prefer-destructuring - const id = this[i][0]; - - if (id != null) { - alreadyImportedModules[id] = true; - } - } - - for (let i = 0; i < modules.length; i++) { - const item = modules[i]; - - // skip already imported module - // this implementation is not 100% perfect for weird media query combinations - // when a module is imported multiple times with different media queries. - // I hope this will never occur (Hey this way we have smaller bundles) - if (item[0] == null || !alreadyImportedModules[item[0]]) { - if (mediaQuery && !item[2]) { - item[2] = mediaQuery; - } else if (mediaQuery) { - item[2] = \`(\${item[2]}) and (\${mediaQuery})\`; - } - - list.push(item); - } - } - }; +.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'); +} - return list; -}; +.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');; +} -function cssWithMappingToString(item, useSourceMap) { - const content = item[1] || ''; - // eslint-disable-next-line prefer-destructuring - const cssMapping = item[3]; +.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); +} - if (!cssMapping) { - return content; - } +.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 + ); +} - if (useSourceMap && typeof btoa === 'function') { - const sourceMapping = toComment(cssMapping); - const sourceURLs = cssMapping.sources.map( - (source) => \`/*# sourceURL=\${cssMapping.sourceRoot}\${source} */\` +.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 ); - - 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} */\`; +.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 + ); } -" -`; - -exports[`loader should compile with \`css\` entry point: errors 1`] = `Array []`; - -exports[`loader should compile with \`css\` entry point: escape 1`] = ` -"module.exports = (url, needQuotes) => { - // eslint-disable-next-line no-underscore-dangle, no-param-reassign - url = url.__esModule ? url.default : url; - - if (typeof url !== 'string') { - return 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); - } - // Should url be wrapped? - // See https://drafts.csswg.org/css-values-3/#urls - if (/[\\"'() \\\\t\\\\n]/.test(url) || needQuotes) { - return \`\\"\${url.replace(/\\"/g, '\\\\\\\\\\"').replace(/\\\\n/g, '\\\\\\\\n')}\\"\`; - } +.class { + color: red; + background: url(replaced_file_protocol_/webpack/public/path/img.png), /** webpackIgnore: true */url("./url/img.png"); +} - return url; -}; -" -`; +.class { + color: red; + background: url(replaced_file_protocol_/webpack/public/path/img.png), /** webpackIgnore: true */ url("./url/img.png"); +} -exports[`loader should compile with \`css\` entry point: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - ".foo { +.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"); } ", "", ], - Array [ - 1, - "@charset \\"UTF-8\\"; +] +`; + +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 { @@ -773,7 +3229,7 @@ Array [ .u-m\\\\+ { a: b c d; } -.class { content: \\"\\\\F10C\\" } +.class { content: "\\\\F10C" } @media only screen and (max-width: 600px) { body { @@ -782,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 {} @@ -831,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; @@ -853,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; } @@ -866,7 +3336,7 @@ body { } .base64 { - background: url(data:img/jpg;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAhxJREFUSA3tk71rU1EYxnMTEoJUkowWwdJ2akEHBfGjCiIF6ZylVUKSm2TqZLGI+A/oIu2UXm8C4lAyF4SWji0tdFLo1Eo7VN0SaBEhH7e/Nz0nPTfGOjiaCyfPc5734zlfCQT6X/8E/vUErL81KBaL9y3LSnued5PcITjUOwR3gsFg2bbtjYt6/NGgXC4P1et1l2aPLmpAbD0SidjpdPqgV15PA9d17zQajU8UxHQRK/4G35Q5pveAK8LlI1ZjPMnlcltnyvnvbwaO41xvtVqy7YHztMACq5xnlb9EY3dRdvcGo1kj5wR+t1AofDG0gM+A875E8DNjRCexsrV8Pj9ZqVQitVrtqejxePxjMpmss5hVTB4buXvMb2DyU2tBTRS+BjvNlVYUpPl7iuVO3Gq1uoQx1FtSOW1gPgp5ZWrdBtNmUDgv5asgxQ8F1af5vhY0YjyjuWC3wTszKJz7GBOkcFlQfW2ONq4FjWi+Hj6DRCKxQOK2TlY4x92EuYd5dvMAbYIzfikau3pu5tJ8KxaLLfo0cyKci7tK4TZjUMcoXAmHwzle0Q/RaC5P1GFMyVx9R9Fo9HYqlTrSgqDvFelAqVQa5hmuMR/WGtjAaBdjwBoDQ0ZsnwVMZjKZ9n0Zem8DSeDPdrnZbL6F2l3NOvUYNZk4oVDoRTabPe4EDNJzB0ZcjAYxeoZ2i3FNxQ7BHYw/cB/fldaH//UETgHHO8S44KbfXgAAAABJRU5ErkJggg==); + background: url(\${___CSS_LOADER_URL_REPLACEMENT_1___}); } a[href=''] { @@ -877,182 +3347,35 @@ a[href='' i] { color: red; } -a[href=\\"\\"] { +a[href=""] { color: blue; } -a[href=\\"\\" i] { +a[href="" i] { color: blue; } -", - "", - ], -] -`; - -exports[`loader should compile with \`css\` entry point: module 1`] = ` -"exports = module.exports = require(\\"../../src/runtime/api.js\\")(false); -// Imports -exports.i(require(\\"-!../../src/index.js??ref--4-0!./imported.css\\"), \\"\\"); -var getUrl = require(\\"../../src/runtime/getUrl.js\\"); -var ___CSS_LOADER_URL___0___ = getUrl(require(\\"./url/img.png\\")); -// Module -exports.push([module.id, \\"@charset \\\\\\"UTF-8\\\\\\";\\\\n\\\\n/* Comment */\\\\n\\\\n.class {\\\\n color: red;\\\\n background: url(\\" + ___CSS_LOADER_URL___0___ + \\");\\\\n}\\\\n\\\\n.class-duplicate-url {\\\\n background: url(\\" + ___CSS_LOADER_URL___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[`loader should compile with \`css\` entry point: warnings 1`] = `Array []`; - -exports[`loader should compile with \`js\` entry point: api 1`] = ` -"/* - 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) { - const list = []; - - // return the list of modules as css string - list.toString = function toString() { - return this.map((item) => { - const content = cssWithMappingToString(item, useSourceMap); - - if (item[2]) { - return \`@media \${item[2]}{\${content}}\`; - } - - return content; - }).join(''); - }; - - // import a list of modules into the list - // eslint-disable-next-line func-names - list.i = function(modules, mediaQuery) { - if (typeof modules === 'string') { - // eslint-disable-next-line no-param-reassign - modules = [[null, modules, '']]; - } - - const alreadyImportedModules = {}; - - for (let i = 0; i < this.length; i++) { - // eslint-disable-next-line prefer-destructuring - const id = this[i][0]; - - if (id != null) { - alreadyImportedModules[id] = true; - } - } - - for (let i = 0; i < modules.length; i++) { - const item = modules[i]; - - // skip already imported module - // this implementation is not 100% perfect for weird media query combinations - // when a module is imported multiple times with different media queries. - // I hope this will never occur (Hey this way we have smaller bundles) - if (item[0] == null || !alreadyImportedModules[item[0]]) { - if (mediaQuery && !item[2]) { - item[2] = mediaQuery; - } else if (mediaQuery) { - item[2] = \`(\${item[2]}) and (\${mediaQuery})\`; - } - - list.push(item); - } - } - }; - - 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} */\`; -} +\`, ""]); +// Exports +export default ___CSS_LOADER_EXPORT___; " `; -exports[`loader should compile with \`js\` entry point: errors 1`] = `Array []`; - -exports[`loader should compile with \`js\` entry point: escape 1`] = ` -"module.exports = (url, needQuotes) => { - // eslint-disable-next-line no-underscore-dangle, no-param-reassign - url = url.__esModule ? url.default : url; - - if (typeof url !== 'string') { - return 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); - } - - // Should url be wrapped? - // See https://drafts.csswg.org/css-values-3/#urls - if (/[\\"'() \\\\t\\\\n]/.test(url) || needQuotes) { - return \`\\"\${url.replace(/\\"/g, '\\\\\\\\\\"').replace(/\\\\n/g, '\\\\\\\\n')}\\"\`; - } - - return url; -}; -" -`; +exports[`loader should work: result 1`] = ` +[ + [ + "./basic.css", + "@charset "UTF-8"; -exports[`loader should compile with \`js\` entry point: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - ".foo { - color: red; -} -", - "", - ], - Array [ - 1, - "@charset \\"UTF-8\\"; /* Comment */ .class { color: red; - background: url(/webpack/public/path/img.png); + background: url(replaced_file_protocol_/webpack/public/path/img.png); } .class-duplicate-url { - background: url(/webpack/public/path/img.png); + background: url(replaced_file_protocol_/webpack/public/path/img.png); } :root { @@ -1064,9 +3387,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 { @@ -1075,60 +3398,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; @@ -1146,12 +3483,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{ @@ -1170,11 +3507,11 @@ a[href='' i] { color: red; } -a[href=\\"\\"] { +a[href=""] { color: blue; } -a[href=\\"\\" i] { +a[href="" i] { color: blue; } ", @@ -1183,191 +3520,4 @@ a[href=\\"\\" i] { ] `; -exports[`loader should compile with \`js\` entry point: module 1`] = ` -"exports = module.exports = require(\\"../../src/runtime/api.js\\")(false); -// Imports -exports.i(require(\\"-!../../src/index.js??ref--4-0!./imported.css\\"), \\"\\"); -var getUrl = require(\\"../../src/runtime/getUrl.js\\"); -var ___CSS_LOADER_URL___0___ = getUrl(require(\\"./url/img.png\\")); -// Module -exports.push([module.id, \\"@charset \\\\\\"UTF-8\\\\\\";\\\\n\\\\n/* Comment */\\\\n\\\\n.class {\\\\n color: red;\\\\n background: url(\\" + ___CSS_LOADER_URL___0___ + \\");\\\\n}\\\\n\\\\n.class-duplicate-url {\\\\n background: url(\\" + ___CSS_LOADER_URL___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[`loader should compile with \`js\` entry point: warnings 1`] = `Array []`; - -exports[`loader should compile with empty css entry point: errors 1`] = `Array []`; - -exports[`loader should compile with empty css entry point: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "", - "", - ], -] -`; - -exports[`loader should compile with empty css entry point: module 1`] = ` -"exports = module.exports = require(\\"../../src/runtime/api.js\\")(false); -// Module -exports.push([module.id, \\"\\", \\"\\"]); -" -`; - -exports[`loader should compile with empty css entry point: warnings 1`] = `Array []`; - -exports[`loader should compile with empty options: errors 1`] = `Array []`; - -exports[`loader should compile with empty options: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "", - "", - ], -] -`; - -exports[`loader should compile with empty options: module 1`] = ` -"exports = module.exports = require(\\"../../src/runtime/api.js\\")(false); -// Module -exports.push([module.id, \\"\\", \\"\\"]); -" -`; - -exports[`loader should compile with empty options: warnings 1`] = `Array []`; - -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 - - 1 | .some { -> 2 | invalid css; - | ^ - 3 | } - 4 | -", -] -`; - -exports[`loader should throw error on invalid css syntax: warnings 1`] = `Array []`; - -exports[`loader should throws error when no loader 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 for assets: warnings 1`] = `Array []`; - -exports[`loader using together with "postcss-loader" and reuse \`ast\`: errors 1`] = `Array []`; - -exports[`loader using together with "postcss-loader" and reuse \`ast\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ":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; -} - -main.hero, .hero.main { - background-image: url(/webpack/public/path/img1x.png); -} - -@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { - -main.hero, .hero.main { - background-image: url(/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) -} - -a:hover { - color: #639; - } -", - "", - ], -] -`; - -exports[`loader using together with "postcss-loader" and reuse \`ast\`: module 1`] = ` -"exports = module.exports = require(\\"../../../src/runtime/api.js\\")(false); -// Imports -var getUrl = require(\\"../../../src/runtime/getUrl.js\\"); -var ___CSS_LOADER_URL___0___ = getUrl(require(\\"./img1x.png\\")); -var ___CSS_LOADER_URL___1___ = getUrl(require(\\"./img2x.png\\")); -// 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___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___1___ + \\");\\\\n}\\\\n}\\\\n\\\\nmain.hero, .hero.main {\\\\n background-image: -webkit-image-set(url(\\" + ___CSS_LOADER_URL___0___ + \\") 1x, url(\\" + ___CSS_LOADER_URL___1___ + \\") 2x);\\\\n background-image: image-set(url(\\" + ___CSS_LOADER_URL___0___ + \\") 1x, url(\\" + ___CSS_LOADER_URL___1___ + \\") 2x);\\\\n}\\\\n\\\\na {\\\\n color: rgba(0, 0, 255, 0.9)\\\\n}\\\\n\\\\na:hover {\\\\n color: #639;\\\\n }\\\\n\\", \\"\\"]); -" -`; - -exports[`loader using together with "postcss-loader" and reuse \`ast\`: warnings 1`] = `Array []`; - -exports[`loader using together with "sass-loader": errors 1`] = `Array []`; - -exports[`loader using together with "sass-loader": module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "body { - font: 100% Helvetica, sans-serif; - color: #333; -}", - "", - ], -] -`; - -exports[`loader using together with "sass-loader": module 1`] = ` -"exports = module.exports = require(\\"../../../src/runtime/api.js\\")(false); -// Module -exports.push([module.id, \\"body {\\\\n font: 100% Helvetica, sans-serif;\\\\n color: #333;\\\\n}\\", \\"\\"]); -" -`; - -exports[`loader using together with "sass-loader": 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 4925e0ac..00000000 --- a/test/__snapshots__/localsConvention-option.test.js.snap +++ /dev/null @@ -1,241 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`localsConvention option asIs: errors 1`] = `Array []`; - -exports[`localsConvention option asIs: locals 1`] = ` -Object { - "btn--info_is-disabled_1": "aF9yrid0BHOaiL3bSWCyJ", - "btn-info_is-disabled": "_2HovG-ymIjf-Q-jdQr_LQ-", - "foo": "bar", - "my-btn-info_is-disabled": "value", - "simple": "_2UqJ0qi8H2Q5R46tr_dUvz", -} -`; - -exports[`localsConvention option asIs: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._2HovG-ymIjf-Q-jdQr_LQ- { - color: blue; -} - -.aF9yrid0BHOaiL3bSWCyJ { - color: blue; -} - -._2UqJ0qi8H2Q5R46tr_dUvz { - color: red; -} - -a { - color: yellow; -} -", - "", - ], -] -`; - -exports[`localsConvention option asIs: warnings 1`] = `Array []`; - -exports[`localsConvention option camelCase: errors 1`] = `Array []`; - -exports[`localsConvention option camelCase: locals 1`] = ` -Object { - "btn--info_is-disabled_1": "aF9yrid0BHOaiL3bSWCyJ", - "btn-info_is-disabled": "_2HovG-ymIjf-Q-jdQr_LQ-", - "btnInfoIsDisabled": "_2HovG-ymIjf-Q-jdQr_LQ-", - "btnInfoIsDisabled1": "aF9yrid0BHOaiL3bSWCyJ", - "foo": "bar", - "my-btn-info_is-disabled": "value", - "myBtnInfoIsDisabled": "value", - "simple": "_2UqJ0qi8H2Q5R46tr_dUvz", -} -`; - -exports[`localsConvention option camelCase: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._2HovG-ymIjf-Q-jdQr_LQ- { - color: blue; -} - -.aF9yrid0BHOaiL3bSWCyJ { - color: blue; -} - -._2UqJ0qi8H2Q5R46tr_dUvz { - color: red; -} - -a { - color: yellow; -} -", - "", - ], -] -`; - -exports[`localsConvention option camelCase: warnings 1`] = `Array []`; - -exports[`localsConvention option camelCaseOnly: errors 1`] = `Array []`; - -exports[`localsConvention option camelCaseOnly: locals 1`] = ` -Object { - "btnInfoIsDisabled": "_2HovG-ymIjf-Q-jdQr_LQ-", - "btnInfoIsDisabled1": "aF9yrid0BHOaiL3bSWCyJ", - "foo": "bar", - "myBtnInfoIsDisabled": "value", - "simple": "_2UqJ0qi8H2Q5R46tr_dUvz", -} -`; - -exports[`localsConvention option camelCaseOnly: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._2HovG-ymIjf-Q-jdQr_LQ- { - color: blue; -} - -.aF9yrid0BHOaiL3bSWCyJ { - color: blue; -} - -._2UqJ0qi8H2Q5R46tr_dUvz { - color: red; -} - -a { - color: yellow; -} -", - "", - ], -] -`; - -exports[`localsConvention option camelCaseOnly: warnings 1`] = `Array []`; - -exports[`localsConvention option dashes: errors 1`] = `Array []`; - -exports[`localsConvention option dashes: locals 1`] = ` -Object { - "btn--info_is-disabled_1": "aF9yrid0BHOaiL3bSWCyJ", - "btn-info_is-disabled": "_2HovG-ymIjf-Q-jdQr_LQ-", - "btnInfo_isDisabled": "_2HovG-ymIjf-Q-jdQr_LQ-", - "btnInfo_isDisabled_1": "aF9yrid0BHOaiL3bSWCyJ", - "foo": "bar", - "my-btn-info_is-disabled": "value", - "myBtnInfo_isDisabled": "value", - "simple": "_2UqJ0qi8H2Q5R46tr_dUvz", -} -`; - -exports[`localsConvention option dashes: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._2HovG-ymIjf-Q-jdQr_LQ- { - color: blue; -} - -.aF9yrid0BHOaiL3bSWCyJ { - color: blue; -} - -._2UqJ0qi8H2Q5R46tr_dUvz { - color: red; -} - -a { - color: yellow; -} -", - "", - ], -] -`; - -exports[`localsConvention option dashes: warnings 1`] = `Array []`; - -exports[`localsConvention option dashesOnly: errors 1`] = `Array []`; - -exports[`localsConvention option dashesOnly: locals 1`] = ` -Object { - "btnInfo_isDisabled": "_2HovG-ymIjf-Q-jdQr_LQ-", - "btnInfo_isDisabled_1": "aF9yrid0BHOaiL3bSWCyJ", - "foo": "bar", - "myBtnInfo_isDisabled": "value", - "simple": "_2UqJ0qi8H2Q5R46tr_dUvz", -} -`; - -exports[`localsConvention option dashesOnly: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._2HovG-ymIjf-Q-jdQr_LQ- { - color: blue; -} - -.aF9yrid0BHOaiL3bSWCyJ { - color: blue; -} - -._2UqJ0qi8H2Q5R46tr_dUvz { - color: red; -} - -a { - color: yellow; -} -", - "", - ], -] -`; - -exports[`localsConvention option dashesOnly: warnings 1`] = `Array []`; - -exports[`localsConvention option not specified: errors 1`] = `Array []`; - -exports[`localsConvention option not specified: locals 1`] = ` -Object { - "btn--info_is-disabled_1": "aF9yrid0BHOaiL3bSWCyJ", - "btn-info_is-disabled": "_2HovG-ymIjf-Q-jdQr_LQ-", - "foo": "bar", - "my-btn-info_is-disabled": "value", - "simple": "_2UqJ0qi8H2Q5R46tr_dUvz", -} -`; - -exports[`localsConvention option not specified: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._2HovG-ymIjf-Q-jdQr_LQ- { - color: blue; -} - -.aF9yrid0BHOaiL3bSWCyJ { - color: blue; -} - -._2UqJ0qi8H2Q5R46tr_dUvz { - color: red; -} - -a { - color: yellow; -} -", - "", - ], -] -`; - -exports[`localsConvention option not specified: warnings 1`] = `Array []`; diff --git a/test/__snapshots__/modules-option.test.js.snap b/test/__snapshots__/modules-option.test.js.snap index 2070086f..23e2b2b3 100644 --- a/test/__snapshots__/modules-option.test.js.snap +++ b/test/__snapshots__/modules-option.test.js.snap @@ -1,150 +1,149 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP +// Jest Snapshot v1, https://jestjs.io/docs/snapshot-testing -exports[`modules case \`animation\` (\`modules\` value is \`false)\`: errors 1`] = `Array []`; +exports[`"modules" option issue #286: errors 1`] = `[]`; -exports[`modules case \`animation\` (\`modules\` value is \`false)\`: locals 1`] = `undefined`; - -exports[`modules case \`animation\` (\`modules\` value is \`false)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "a { - animation: slide-right 300ms forwards ease-out, fade-in 300ms forwards ease-out; +exports[`"modules" option issue #286: 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 "./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 +___CSS_LOADER_EXPORT___.push([module.id, \`.b--main { } +\`, ""]); +// 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`] = ` +[ + [ + "./modules/issue-286/dep.css", + ".a--red { color: red } ", "", ], -] -`; - -exports[`modules case \`animation\` (\`modules\` value is \`false)\`: warnings 1`] = `Array []`; - -exports[`modules case \`animation\` (\`modules\` value is \`global)\`: errors 1`] = `Array []`; - -exports[`modules case \`animation\` (\`modules\` value is \`global)\`: locals 1`] = `undefined`; - -exports[`modules case \`animation\` (\`modules\` value is \`global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "a { - animation: slide-right 300ms forwards ease-out, fade-in 300ms forwards ease-out; - -} + [ + "./modules/issue-286/source.css", + ".b--main { } ", "", ], ] `; -exports[`modules case \`animation\` (\`modules\` value is \`global)\`: warnings 1`] = `Array []`; +exports[`"modules" option issue #286: warnings 1`] = `[]`; -exports[`modules case \`animation\` (\`modules\` value is \`local)\`: errors 1`] = `Array []`; +exports[`"modules" option issue #636: errors 1`] = `[]`; -exports[`modules case \`animation\` (\`modules\` value is \`local)\`: locals 1`] = ` -Object { - "fade-in": "_3XZSV759G141XcbTZgtQkF", - "slide-right": "_2jinakhsfBWcUNZSsOxUHz", -} +exports[`"modules" option issue #636: 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/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 +___CSS_LOADER_EXPORT___.push([module.id, \`.prefix-bar { +}\`, ""]); +// Exports +export var bar = \`prefix-bar \${___CSS_LOADER_ICSS_IMPORT_0____NAMED___["foo"]}\`; +export default ___CSS_LOADER_EXPORT___; +" `; -exports[`modules case \`animation\` (\`modules\` value is \`local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "a { - animation: _2jinakhsfBWcUNZSsOxUHz 300ms forwards ease-out, _3XZSV759G141XcbTZgtQkF 300ms forwards ease-out; - -} -", +exports[`"modules" option issue #636: result 1`] = ` +[ + [ + "../../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; +}", + "", + ], + [ + "./modules/issue-636/source.scss", + ".prefix-bar { +}", "", ], ] `; -exports[`modules case \`animation\` (\`modules\` value is \`local)\`: warnings 1`] = `Array []`; - -exports[`modules case \`animation\` (\`modules\` value is \`object with mode global)\`: errors 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. -exports[`modules case \`animation\` (\`modules\` value is \`object with mode global)\`: locals 1`] = `undefined`; - -exports[`modules case \`animation\` (\`modules\` value is \`object with mode global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "a { - animation: slide-right 300ms forwards ease-out, fade-in 300ms forwards ease-out; +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 case \`animation\` (\`modules\` value is \`object with mode global)\`: warnings 1`] = `Array []`; - -exports[`modules case \`animation\` (\`modules\` value is \`object with mode local)\`: errors 1`] = `Array []`; +exports[`"modules" option issue #861: errors 1`] = `[]`; -exports[`modules case \`animation\` (\`modules\` value is \`object with mode local)\`: locals 1`] = ` -Object { - "fade-in": "_fade-in", - "slide-right": "_slide-right", +exports[`"modules" option issue #861: 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/@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 +___CSS_LOADER_EXPORT___.push([module.id, \`.y19CYJvfPsY__wKRrRBJ { + color: \${ ___CSS_LOADER_ICSS_IMPORT_0____NAMED___["color-grey"] }; + margin: 0; + padding: 0; } +\`, ""]); +// 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 case \`animation\` (\`modules\` value is \`object with mode local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "a { - animation: _slide-right 300ms forwards ease-out, _fade-in 300ms forwards ease-out; - -} +exports[`"modules" option issue #861: result 1`] = ` +[ + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./modules/issue-861/node_modules/@localpackage/color.css", + " ", "", ], -] -`; - -exports[`modules case \`animation\` (\`modules\` value is \`object with mode local)\`: warnings 1`] = `Array []`; - -exports[`modules case \`animation\` (\`modules\` value is \`true)\`: errors 1`] = `Array []`; - -exports[`modules case \`animation\` (\`modules\` value is \`true)\`: locals 1`] = ` -Object { - "fade-in": "_3XZSV759G141XcbTZgtQkF", - "slide-right": "_2jinakhsfBWcUNZSsOxUHz", + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./modules/issue-861/node_modules/@otherlocalpackage/style.css", + ".RkMzgETKHXnuOl77obC2 { + display: flex; } -`; - -exports[`modules case \`animation\` (\`modules\` value is \`true)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "a { - animation: _2jinakhsfBWcUNZSsOxUHz 300ms forwards ease-out, _3XZSV759G141XcbTZgtQkF 300ms forwards ease-out; - +", + "", + ], + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./modules/issue-861/node_modules/@localpackage/style.css", + ".z7lux7p74VniQzqVx2Bi { + color: red; + margin: 0; + padding: 0; } ", "", ], -] -`; - -exports[`modules case \`animation\` (\`modules\` value is \`true)\`: warnings 1`] = `Array []`; - -exports[`modules case \`class-names\` (\`modules\` value is \`false)\`: errors 1`] = `Array []`; - -exports[`modules case \`class-names\` (\`modules\` value is \`false)\`: locals 1`] = `undefined`; - -exports[`modules case \`class-names\` (\`modules\` value is \`false)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ".class-1, .class-10 .bar-1 { - color: green; + [ + "./modules/issue-861/resolving-from-node_modules.css", + ".y19CYJvfPsY__wKRrRBJ { + color: gray; + margin: 0; + padding: 0; } ", "", @@ -152,62 +151,74 @@ Array [ ] `; -exports[`modules case \`class-names\` (\`modules\` value is \`false)\`: warnings 1`] = `Array []`; +exports[`"modules" option issue #861: warnings 1`] = `[]`; -exports[`modules case \`class-names\` (\`modules\` value is \`global)\`: errors 1`] = `Array []`; +exports[`"modules" option issue #966 - values in selectors aren't escaped properly: errors 1`] = `[]`; -exports[`modules case \`class-names\` (\`modules\` value is \`global)\`: locals 1`] = `undefined`; - -exports[`modules case \`class-names\` (\`modules\` value is \`global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ".class-1, .class-10 .bar-1 { - color: green; +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; } -", - "", - ], -] -`; -exports[`modules case \`class-names\` (\`modules\` value is \`global)\`: warnings 1`] = `Array []`; +.\\\\--bar-class { + color: red; +} -exports[`modules case \`class-names\` (\`modules\` value is \`local)\`: errors 1`] = `Array []`; +.\\\\--baz-class { + color: red; +} -exports[`modules case \`class-names\` (\`modules\` value is \`local)\`: locals 1`] = ` -Object { - "bar-1": "_3GpM4NK17tELexNK1Szvws", - "class-1": "_1GNZOTxutjEX7cZ3Ec7knU", - "class-10": "_15N9BXxWirSgwhYficwysK", +.fooBaz-class-continuation { + color: red; } -`; -exports[`modules case \`class-names\` (\`modules\` value is \`local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._1GNZOTxutjEX7cZ3Ec7knU, ._15N9BXxWirSgwhYficwysK ._3GpM4NK17tELexNK1Szvws { - color: green; +.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; } -", - "", - ], -] -`; -exports[`modules case \`class-names\` (\`modules\` value is \`local)\`: warnings 1`] = `Array []`; +.\\--bar-class { + color: red; +} -exports[`modules case \`class-names\` (\`modules\` value is \`object with mode global)\`: errors 1`] = `Array []`; +.\\--baz-class { + color: red; +} -exports[`modules case \`class-names\` (\`modules\` value is \`object with mode global)\`: locals 1`] = `undefined`; +.fooBaz-class-continuation { + color: red; +} -exports[`modules case \`class-names\` (\`modules\` value is \`object with mode global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ".class-1, .class-10 .bar-1 { - color: green; +.some.class { + color: red; } ", "", @@ -215,24 +226,32 @@ Array [ ] `; -exports[`modules case \`class-names\` (\`modules\` value is \`object with mode global)\`: warnings 1`] = `Array []`; +exports[`"modules" option issue #966 - values in selectors aren't escaped properly: warnings 1`] = `[]`; -exports[`modules case \`class-names\` (\`modules\` value is \`object with mode local)\`: errors 1`] = `Array []`; +exports[`"modules" option issue #966: errors 1`] = `[]`; -exports[`modules case \`class-names\` (\`modules\` value is \`object with mode local)\`: locals 1`] = ` -Object { - "bar-1": "_bar-1", - "class-1": "_class-1", - "class-10": "_class-10", +exports[`"modules" option issue #966: 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, \`.button-hey { + color: red; } +\`, ""]); +// Exports +export var button = \`button-hey\`; +export default ___CSS_LOADER_EXPORT___; +" `; -exports[`modules case \`class-names\` (\`modules\` value is \`object with mode local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._class-1, ._class-10 ._bar-1 { - color: green; +exports[`"modules" option issue #966: result 1`] = ` +[ + [ + "./modules/issue-966/button.css", + ".button-hey { + color: red; } ", "", @@ -240,1078 +259,986 @@ Array [ ] `; -exports[`modules case \`class-names\` (\`modules\` value is \`object with mode local)\`: warnings 1`] = `Array []`; +exports[`"modules" option issue #966: warnings 1`] = `[]`; -exports[`modules case \`class-names\` (\`modules\` value is \`true)\`: errors 1`] = `Array []`; +exports[`"modules" option issue #967: errors 1`] = `[]`; -exports[`modules case \`class-names\` (\`modules\` value is \`true)\`: locals 1`] = ` -Object { - "bar-1": "_3GpM4NK17tELexNK1Szvws", - "class-1": "_1GNZOTxutjEX7cZ3Ec7knU", - "class-10": "_15N9BXxWirSgwhYficwysK", +exports[`"modules" option issue #967: 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, \`.modules-issue-967-path-placeholder__foo__--sep---sep---sep---sep----sep---sep---sep---sep---sep-- { + color: red; } -`; -exports[`modules case \`class-names\` (\`modules\` value is \`true)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._1GNZOTxutjEX7cZ3Ec7knU, ._15N9BXxWirSgwhYficwysK ._3GpM4NK17tELexNK1Szvws { - color: green; +.modules-issue-967-path-placeholder__foo\\\\/bar__--sep---sep---sep---sep----sep---sep---sep---sep---sep-- { + color: blue; } -", - "", - ], -] -`; - -exports[`modules case \`class-names\` (\`modules\` value is \`true)\`: warnings 1`] = `Array []`; -exports[`modules case \`comment-in-local\` (\`modules\` value is \`false)\`: errors 1`] = `Array []`; +.modules-issue-967-path-placeholder__\\\\[\\\\/\\\\?\\\\<\\\\>\\\\\\\\\\\\\\\\\\\\3A \\\\*\\\\|\\\\"\\\\3A \\\\]__--sep---sep---sep---sep----sep---sep---sep---sep---sep-- { + color: yellow; +} +\`, ""]); +// 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`] = ` +[ + [ + "./modules/issue-967/path-placeholder.css", + ".modules-issue-967-path-placeholder__foo__--sep---sep---sep---sep----sep---sep---sep---sep---sep-- { + color: red; +} -exports[`modules case \`comment-in-local\` (\`modules\` value is \`false)\`: locals 1`] = `undefined`; +.modules-issue-967-path-placeholder__foo\\/bar__--sep---sep---sep---sep----sep---sep---sep---sep---sep-- { + color: blue; +} -exports[`modules case \`comment-in-local\` (\`modules\` value is \`false)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ":local(.c1/*.c2*/.c3) { background: red; } +.modules-issue-967-path-placeholder__\\[\\/\\?\\<\\>\\\\\\\\\\3A \\*\\|\\"\\3A \\]__--sep---sep---sep---sep----sep---sep---sep---sep---sep-- { + color: yellow; +} ", "", ], ] `; -exports[`modules case \`comment-in-local\` (\`modules\` value is \`false)\`: warnings 1`] = `Array []`; +exports[`"modules" option issue #967: warnings 1`] = `[]`; -exports[`modules case \`comment-in-local\` (\`modules\` value is \`global)\`: errors 1`] = `Array []`; +exports[`"modules" option issue #980: errors 1`] = `[]`; -exports[`modules case \`comment-in-local\` (\`modules\` value is \`global)\`: locals 1`] = ` -Object { - "c1": "_1xn1UbV-5a_s7ig53fR7Lz", - "c3": "_36mr1nZ1pdjd1s5j3RV-z7", +exports[`"modules" option issue #980: 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, \`.file-with-many-dots-in-name_a_KwVdi { + color: red; } +\`, ""]); +// Exports +export var a = \`file-with-many-dots-in-name_a_KwVdi\`; +export default ___CSS_LOADER_EXPORT___; +" `; -exports[`modules case \`comment-in-local\` (\`modules\` value is \`global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._1xn1UbV-5a_s7ig53fR7Lz/*.c2*/._36mr1nZ1pdjd1s5j3RV-z7 { background: red; } +exports[`"modules" option issue #980: result 1`] = ` +[ + [ + "./modules/issue-980/file.with.many.dots.in.name.css", + ".file-with-many-dots-in-name_a_KwVdi { + color: red; +} ", "", ], ] `; -exports[`modules case \`comment-in-local\` (\`modules\` value is \`global)\`: warnings 1`] = `Array []`; +exports[`"modules" option issue #980: warnings 1`] = `[]`; -exports[`modules case \`comment-in-local\` (\`modules\` value is \`local)\`: errors 1`] = `Array []`; +exports[`"modules" option issue #995 #2: errors 1`] = `[]`; -exports[`modules case \`comment-in-local\` (\`modules\` value is \`local)\`: locals 1`] = ` -Object { - "c1": "_1xn1UbV-5a_s7ig53fR7Lz", - "c3": "_36mr1nZ1pdjd1s5j3RV-z7", +exports[`"modules" option issue #995 #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, \`/* class="😀" */ +.a { + color: red; } -`; -exports[`modules case \`comment-in-local\` (\`modules\` value is \`local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._1xn1UbV-5a_s7ig53fR7Lz/*.c2*/._36mr1nZ1pdjd1s5j3RV-z7 { background: red; } -", - "", - ], -] -`; +/* class="😀 😓" */ +.a.b { + color: red; +} -exports[`modules case \`comment-in-local\` (\`modules\` value is \`local)\`: warnings 1`] = `Array []`; +/* class="😀" > class="😓" */ +.a .b { + color: red; +} -exports[`modules case \`comment-in-local\` (\`modules\` value is \`object with mode global)\`: errors 1`] = `Array []`; +/* class="😀" */ +.😀 { + color: red; +} -exports[`modules case \`comment-in-local\` (\`modules\` value is \`object with mode global)\`: locals 1`] = ` -Object { - "c1": "_c1", - "c3": "_c3", +/* class="😀 😓" */ +.😀.😓 { + color: red; } -`; -exports[`modules case \`comment-in-local\` (\`modules\` value is \`object with mode global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._c1/*.c2*/._c3 { background: red; } -", - "", - ], -] -`; +/* class="😀" > class="😓" */ +.😀 .😓 { + color: red; +} -exports[`modules case \`comment-in-local\` (\`modules\` value is \`object with mode global)\`: warnings 1`] = `Array []`; +/* class="😀" */ +.\\\\1F600 { + color: red; +} -exports[`modules case \`comment-in-local\` (\`modules\` value is \`object with mode local)\`: errors 1`] = `Array []`; +/* class="😀 😓" */ +.\\\\1F600.\\\\1F613 { + color: red; +} -exports[`modules case \`comment-in-local\` (\`modules\` value is \`object with mode local)\`: locals 1`] = ` -Object { - "c1": "_c1", - "c3": "_c3", +/* class="😀" > class="😓" */ +.\\\\1F600 .\\\\1F613 { + color: red; } -`; -exports[`modules case \`comment-in-local\` (\`modules\` value is \`object with mode local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._c1/*.c2*/._c3 { background: red; } -", - "", - ], -] -`; +/* Local */ -exports[`modules case \`comment-in-local\` (\`modules\` value is \`object with mode local)\`: warnings 1`] = `Array []`; +/* class="😀" */ +.\\\\ { + color: red; +} -exports[`modules case \`comment-in-local\` (\`modules\` value is \`true)\`: errors 1`] = `Array []`; +/* class="😀 😓" */ +.\\\\ .\\\\ { + color: red; +} -exports[`modules case \`comment-in-local\` (\`modules\` value is \`true)\`: locals 1`] = ` -Object { - "c1": "_1xn1UbV-5a_s7ig53fR7Lz", - "c3": "_36mr1nZ1pdjd1s5j3RV-z7", +/* class="😀" > class="😓" */ +.\\\\ .\\\\ { + color: red; } -`; -exports[`modules case \`comment-in-local\` (\`modules\` value is \`true)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._1xn1UbV-5a_s7ig53fR7Lz/*.c2*/._36mr1nZ1pdjd1s5j3RV-z7 { background: red; } -", - "", - ], -] -`; +.\\\\1F600 .a .\\\\1F600 { + color: red; +} -exports[`modules case \`comment-in-local\` (\`modules\` value is \`true)\`: warnings 1`] = `Array []`; +.\\\\ .\\\\ .\\\\ { + color: red; +} -exports[`modules case \`comments\` (\`modules\` value is \`false)\`: errors 1`] = `Array []`; +div:not(.\\\\ ) { + color: red; +} -exports[`modules case \`comments\` (\`modules\` value is \`false)\`: locals 1`] = `undefined`; +.\\\\ .b { + color: red; +} -exports[`modules case \`comments\` (\`modules\` value is \`false)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "/* - * a ' above - */ +.b .\\\\ { + color: red; +} -.bg { - background-image: url(/webpack/public/path/img.png); +.\\\\1F613 .\\\\ { + color: red; } -/* - * a ' below - */ -", - "", - ], -] -`; +.\\\\1F613 .\\\\ { + color: red; +} -exports[`modules case \`comments\` (\`modules\` value is \`false)\`: warnings 1`] = `Array []`; +.\\\\ > .\\\\ > .\\\\ { + color: red; +} +\`, ""]); +// Exports +export var a = \` \`; +export var b = \` \`; +export var c = \` \`; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option issue #995 #2: result 1`] = ` +[ + [ + "./modules/issue-995/issue-995.css", + "/* class="😀" */ +.a { + color: red; +} -exports[`modules case \`comments\` (\`modules\` value is \`global)\`: errors 1`] = `Array []`; +/* class="😀 😓" */ +.a.b { + color: red; +} -exports[`modules case \`comments\` (\`modules\` value is \`global)\`: locals 1`] = `undefined`; +/* class="😀" > class="😓" */ +.a .b { + color: red; +} -exports[`modules case \`comments\` (\`modules\` value is \`global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "/* - * a ' above - */ +/* class="😀" */ +.😀 { + color: red; +} -.bg { - background-image: url(/webpack/public/path/img.png); +/* class="😀 😓" */ +.😀.😓 { + color: red; } -/* - * a ' below - */ -", - "", - ], -] -`; +/* class="😀" > class="😓" */ +.😀 .😓 { + color: red; +} -exports[`modules case \`comments\` (\`modules\` value is \`global)\`: warnings 1`] = `Array []`; +/* class="😀" */ +.\\1F600 { + color: red; +} -exports[`modules case \`comments\` (\`modules\` value is \`local)\`: errors 1`] = `Array []`; +/* class="😀 😓" */ +.\\1F600.\\1F613 { + color: red; +} -exports[`modules case \`comments\` (\`modules\` value is \`local)\`: locals 1`] = ` -Object { - "bg": "_28-VAWbJ8gQCgX50Jcqtzs", +/* class="😀" > class="😓" */ +.\\1F600 .\\1F613 { + color: red; } -`; -exports[`modules case \`comments\` (\`modules\` value is \`local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "/* - * a ' above - */ +/* Local */ -._28-VAWbJ8gQCgX50Jcqtzs { - background-image: url(/webpack/public/path/img.png); +/* class="😀" */ +.\\ { + color: red; } -/* - * a ' below - */ -", - "", - ], -] -`; - -exports[`modules case \`comments\` (\`modules\` value is \`local)\`: warnings 1`] = `Array []`; - -exports[`modules case \`comments\` (\`modules\` value is \`object with mode global)\`: errors 1`] = `Array []`; - -exports[`modules case \`comments\` (\`modules\` value is \`object with mode global)\`: locals 1`] = `undefined`; +/* class="😀 😓" */ +.\\ .\\ { + color: red; +} -exports[`modules case \`comments\` (\`modules\` value is \`object with mode global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "/* - * a ' above - */ +/* class="😀" > class="😓" */ +.\\ .\\ { + color: red; +} -.bg { - background-image: url(/webpack/public/path/img.png); +.\\1F600 .a .\\1F600 { + color: red; } -/* - * a ' below - */ -", - "", - ], -] -`; +.\\ .\\ .\\ { + color: red; +} -exports[`modules case \`comments\` (\`modules\` value is \`object with mode global)\`: warnings 1`] = `Array []`; +div:not(.\\ ) { + color: red; +} -exports[`modules case \`comments\` (\`modules\` value is \`object with mode local)\`: errors 1`] = `Array []`; +.\\ .b { + color: red; +} -exports[`modules case \`comments\` (\`modules\` value is \`object with mode local)\`: locals 1`] = ` -Object { - "bg": "_bg", +.b .\\ { + color: red; } -`; -exports[`modules case \`comments\` (\`modules\` value is \`object with mode local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "/* - * a ' above - */ +.\\1F613 .\\ { + color: red; +} -._bg { - background-image: url(/webpack/public/path/img.png); +.\\1F613 .\\ { + color: red; } -/* - * a ' below - */ +.\\ > .\\ > .\\ { + color: red; +} ", "", ], ] `; -exports[`modules case \`comments\` (\`modules\` value is \`object with mode local)\`: warnings 1`] = `Array []`; +exports[`"modules" option issue #995 #2: warnings 1`] = `[]`; -exports[`modules case \`comments\` (\`modules\` value is \`true)\`: errors 1`] = `Array []`; +exports[`"modules" option issue #995: errors 1`] = `[]`; -exports[`modules case \`comments\` (\`modules\` value is \`true)\`: locals 1`] = ` -Object { - "bg": "_28-VAWbJ8gQCgX50Jcqtzs", +exports[`"modules" option issue #995: 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, \`/* class="😀" */ +.a { + color: red; } -`; - -exports[`modules case \`comments\` (\`modules\` value is \`true)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "/* - * a ' above - */ -._28-VAWbJ8gQCgX50Jcqtzs { - background-image: url(/webpack/public/path/img.png); +/* class="😀 😓" */ +.a.b { + color: red; } -/* - * a ' below - */ -", - "", - ], -] -`; - -exports[`modules case \`comments\` (\`modules\` value is \`true)\`: warnings 1`] = `Array []`; - -exports[`modules case \`composes\` (\`modules\` value is \`false)\`: errors 1`] = `Array []`; +/* class="😀" > class="😓" */ +.a .b { + color: red; +} -exports[`modules case \`composes\` (\`modules\` value is \`false)\`: locals 1`] = `undefined`; +/* class="😀" */ +.😀 { + color: red; +} -exports[`modules case \`composes\` (\`modules\` value is \`false)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ":local(.c1) { a: 1; } -:local(.c2) { composes: c1; b: 1; } -", - "", - ], -] -`; +/* class="😀 😓" */ +.😀.😓 { + color: red; +} -exports[`modules case \`composes\` (\`modules\` value is \`false)\`: warnings 1`] = `Array []`; +/* class="😀" > class="😓" */ +.😀 .😓 { + color: red; +} -exports[`modules case \`composes\` (\`modules\` value is \`global)\`: errors 1`] = `Array []`; +/* class="😀" */ +.\\\\1F600 { + color: red; +} -exports[`modules case \`composes\` (\`modules\` value is \`global)\`: locals 1`] = ` -Object { - "c1": "_2lVGKlfYXzywV6_acW1a3J", - "c2": "_2FPXZHdIWogtLWkFQcjYj7 _2lVGKlfYXzywV6_acW1a3J", +/* class="😀 😓" */ +.\\\\1F600.\\\\1F613 { + color: red; } -`; -exports[`modules case \`composes\` (\`modules\` value is \`global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._2lVGKlfYXzywV6_acW1a3J { a: 1; } -._2FPXZHdIWogtLWkFQcjYj7 { b: 1; } -", - "", - ], -] -`; +/* class="😀" > class="😓" */ +.\\\\1F600 .\\\\1F613 { + color: red; +} -exports[`modules case \`composes\` (\`modules\` value is \`global)\`: warnings 1`] = `Array []`; +/* Local */ -exports[`modules case \`composes\` (\`modules\` value is \`local)\`: errors 1`] = `Array []`; +/* class="😀" */ +.😀 { + color: red; +} -exports[`modules case \`composes\` (\`modules\` value is \`local)\`: locals 1`] = ` -Object { - "c1": "_2lVGKlfYXzywV6_acW1a3J", - "c2": "_2FPXZHdIWogtLWkFQcjYj7 _2lVGKlfYXzywV6_acW1a3J", +/* class="😀 😓" */ +.😀.😀 { + color: red; } -`; -exports[`modules case \`composes\` (\`modules\` value is \`local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._2lVGKlfYXzywV6_acW1a3J { a: 1; } -._2FPXZHdIWogtLWkFQcjYj7 { b: 1; } -", - "", - ], -] -`; +/* class="😀" > class="😓" */ +.😀 .😀 { + color: red; +} -exports[`modules case \`composes\` (\`modules\` value is \`local)\`: warnings 1`] = `Array []`; +.\\\\1F600 .a .\\\\1F600 { + color: red; +} -exports[`modules case \`composes\` (\`modules\` value is \`object with mode global)\`: errors 1`] = `Array []`; +.😀 .😀 .😀 { + color: red; +} -exports[`modules case \`composes\` (\`modules\` value is \`object with mode global)\`: locals 1`] = ` -Object { - "c1": "_c1", - "c2": "_c2 _c1", +div:not(.😀) { + color: red; } -`; -exports[`modules case \`composes\` (\`modules\` value is \`object with mode global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._c1 { a: 1; } -._c2 { b: 1; } -", - "", - ], -] -`; +.😀 .b { + color: red; +} -exports[`modules case \`composes\` (\`modules\` value is \`object with mode global)\`: warnings 1`] = `Array []`; +.b .😀 { + color: red; +} -exports[`modules case \`composes\` (\`modules\` value is \`object with mode local)\`: errors 1`] = `Array []`; +.\\\\1F613 .😀 { + color: red; +} -exports[`modules case \`composes\` (\`modules\` value is \`object with mode local)\`: locals 1`] = ` -Object { - "c1": "_c1", - "c2": "_c2 _c1", +.\\\\1F613 .😀 { + color: red; } -`; -exports[`modules case \`composes\` (\`modules\` value is \`object with mode local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._c1 { a: 1; } -._c2 { b: 1; } -", - "", - ], -] -`; +.😀 > .😀 > .😀 { + color: red; +} +\`, ""]); +// Exports +export var a = \`😀\`; +export var b = \`😀\`; +export var c = \`😀\`; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option issue #995: result 1`] = ` +[ + [ + "./modules/issue-995/issue-995.css", + "/* class="😀" */ +.a { + color: red; +} -exports[`modules case \`composes\` (\`modules\` value is \`object with mode local)\`: warnings 1`] = `Array []`; +/* class="😀 😓" */ +.a.b { + color: red; +} -exports[`modules case \`composes\` (\`modules\` value is \`true)\`: errors 1`] = `Array []`; +/* class="😀" > class="😓" */ +.a .b { + color: red; +} -exports[`modules case \`composes\` (\`modules\` value is \`true)\`: locals 1`] = ` -Object { - "c1": "_2lVGKlfYXzywV6_acW1a3J", - "c2": "_2FPXZHdIWogtLWkFQcjYj7 _2lVGKlfYXzywV6_acW1a3J", +/* class="😀" */ +.😀 { + color: red; } -`; -exports[`modules case \`composes\` (\`modules\` value is \`true)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._2lVGKlfYXzywV6_acW1a3J { a: 1; } -._2FPXZHdIWogtLWkFQcjYj7 { b: 1; } -", - "", - ], -] -`; +/* class="😀 😓" */ +.😀.😓 { + color: red; +} -exports[`modules case \`composes\` (\`modules\` value is \`true)\`: warnings 1`] = `Array []`; +/* class="😀" > class="😓" */ +.😀 .😓 { + color: red; +} -exports[`modules case \`composes-1\` (\`modules\` value is \`false)\`: errors 1`] = `Array []`; +/* class="😀" */ +.\\1F600 { + color: red; +} -exports[`modules case \`composes-1\` (\`modules\` value is \`false)\`: locals 1`] = `undefined`; +/* class="😀 😓" */ +.\\1F600.\\1F613 { + color: red; +} -exports[`modules case \`composes-1\` (\`modules\` value is \`false)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ":local(.c1) { composes: c2 from \\"./file.css\\"; b: 1; } -:local(.c3) { composes: c1; b: 3; } -:local(.c5) { composes: c2 c4 from \\"./file.css\\"; b: 5; } -", - "", - ], -] -`; +/* class="😀" > class="😓" */ +.\\1F600 .\\1F613 { + color: red; +} -exports[`modules case \`composes-1\` (\`modules\` value is \`false)\`: warnings 1`] = `Array []`; +/* Local */ -exports[`modules case \`composes-1\` (\`modules\` value is \`global)\`: errors 1`] = `Array []`; +/* class="😀" */ +.😀 { + color: red; +} -exports[`modules case \`composes-1\` (\`modules\` value is \`global)\`: locals 1`] = ` -Object { - "c1": "_1DZQbqp1oX8etdFa5oSOnV _1xYJRliqpSHYzUvktbdaCo", - "c3": "_1PKuwglb3xQB3gwJBZx6_G _1DZQbqp1oX8etdFa5oSOnV _1xYJRliqpSHYzUvktbdaCo", - "c5": "_1MtdK0_soIbU20fcYBbRAe _1xYJRliqpSHYzUvktbdaCo _1jdJRc6HaM3lHykxBSOeII", +/* class="😀 😓" */ +.😀.😀 { + color: red; } -`; -exports[`modules case \`composes-1\` (\`modules\` value is \`global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - "._1xYJRliqpSHYzUvktbdaCo { +/* class="😀" > class="😓" */ +.😀 .😀 { color: red; } -._1jdJRc6HaM3lHykxBSOeII { - color: blue; +.\\1F600 .a .\\1F600 { + color: red; } -.test{ - c: d +.😀 .😀 .😀 { + color: red; } -", - "", - ], - Array [ - 1, - "._1DZQbqp1oX8etdFa5oSOnV { b: 1; } -._1PKuwglb3xQB3gwJBZx6_G { b: 3; } -._1MtdK0_soIbU20fcYBbRAe { b: 5; } -", - "", - ], -] -`; -exports[`modules case \`composes-1\` (\`modules\` value is \`global)\`: warnings 1`] = `Array []`; +div:not(.😀) { + color: red; +} -exports[`modules case \`composes-1\` (\`modules\` value is \`local)\`: errors 1`] = `Array []`; +.😀 .b { + color: red; +} -exports[`modules case \`composes-1\` (\`modules\` value is \`local)\`: locals 1`] = ` -Object { - "c1": "_1DZQbqp1oX8etdFa5oSOnV _1xYJRliqpSHYzUvktbdaCo", - "c3": "_1PKuwglb3xQB3gwJBZx6_G _1DZQbqp1oX8etdFa5oSOnV _1xYJRliqpSHYzUvktbdaCo", - "c5": "_1MtdK0_soIbU20fcYBbRAe _1xYJRliqpSHYzUvktbdaCo _1jdJRc6HaM3lHykxBSOeII", +.b .😀 { + color: red; } -`; -exports[`modules case \`composes-1\` (\`modules\` value is \`local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - "._1xYJRliqpSHYzUvktbdaCo { +.\\1F613 .😀 { color: red; } -._1jdJRc6HaM3lHykxBSOeII { - color: blue; +.\\1F613 .😀 { + color: red; } -._3YdnDqqBfyyJ_9JKWIle3X{ - c: d +.😀 > .😀 > .😀 { + color: red; } -", - "", - ], - Array [ - 1, - "._1DZQbqp1oX8etdFa5oSOnV { b: 1; } -._1PKuwglb3xQB3gwJBZx6_G { b: 3; } -._1MtdK0_soIbU20fcYBbRAe { b: 5; } ", "", ], ] `; -exports[`modules case \`composes-1\` (\`modules\` value is \`local)\`: warnings 1`] = `Array []`; +exports[`"modules" option issue #995: warnings 1`] = `[]`; -exports[`modules case \`composes-1\` (\`modules\` value is \`object with mode global)\`: errors 1`] = `Array []`; - -exports[`modules case \`composes-1\` (\`modules\` value is \`object with mode global)\`: locals 1`] = ` -Object { - "c1": "_c1 _c2", - "c3": "_c3 _c1 _c2", - "c5": "_c5 _c2 _c4", -} +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 case \`composes-1\` (\`modules\` value is \`object with mode global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - "._c2 { - color: 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; } -._c4 { +:global(.otherClassLocalFile) { color: blue; } - -.test{ - c: d -} -", - "", - ], - Array [ - 1, - "._c1 { b: 1; } -._c3 { b: 3; } -._c5 { b: 5; } -", - "", - ], -] +\`, ""]); +// Exports +export default ___CSS_LOADER_EXPORT___; +" `; -exports[`modules case \`composes-1\` (\`modules\` value is \`object with mode global)\`: warnings 1`] = `Array []`; - -exports[`modules case \`composes-1\` (\`modules\` value is \`object with mode local)\`: errors 1`] = `Array []`; +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; +} -exports[`modules case \`composes-1\` (\`modules\` value is \`object with mode local)\`: locals 1`] = ` -Object { - "c1": "_c1 _c2", - "c3": "_c3 _c1 _c2", - "c5": "_c5 _c2 _c4", +:local(.otherClassGlobalFile) { + color: coral; } +\`, ""]); +// Exports +export default ___CSS_LOADER_EXPORT___; +" `; -exports[`modules case \`composes-1\` (\`modules\` value is \`object with mode local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - "._c2 { - color: red; +exports[`"modules" option issue #1063 throw error: result 1`] = ` +".classNameLocalFile { + color: green; } -._c4 { +:global(.otherClassLocalFile) { color: blue; } +.classNameGlobalFile { + color: black; +} -._test{ - c: d +:local(.otherClassGlobalFile) { + color: coral; } -", - "", - ], - Array [ - 1, - "._c1 { b: 1; } -._c3 { b: 3; } -._c5 { b: 5; } -", - "", - ], -] +.foo :local(.bar) { + color: red; +} +" `; -exports[`modules case \`composes-1\` (\`modules\` value is \`object with mode local)\`: warnings 1`] = `Array []`; +exports[`"modules" option issue #1063 throw error: warnings 1`] = `[]`; -exports[`modules case \`composes-1\` (\`modules\` value is \`true)\`: errors 1`] = `Array []`; +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; +} -exports[`modules case \`composes-1\` (\`modules\` value is \`true)\`: locals 1`] = ` -Object { - "c1": "_1DZQbqp1oX8etdFa5oSOnV _1xYJRliqpSHYzUvktbdaCo", - "c3": "_1PKuwglb3xQB3gwJBZx6_G _1DZQbqp1oX8etdFa5oSOnV _1xYJRliqpSHYzUvktbdaCo", - "c5": "_1MtdK0_soIbU20fcYBbRAe _1xYJRliqpSHYzUvktbdaCo _1jdJRc6HaM3lHykxBSOeII", +.OgdGONvTFtVRlDH24Xxl { + color: coral; } +\`, ""]); +// Exports +export var otherClassGlobalFile = \`OgdGONvTFtVRlDH24Xxl\`; +export default ___CSS_LOADER_EXPORT___; +" `; -exports[`modules case \`composes-1\` (\`modules\` value is \`true)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - "._1xYJRliqpSHYzUvktbdaCo { - color: red; +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; } -._1jdJRc6HaM3lHykxBSOeII { +.otherClassLocalFile { color: blue; } +\`, ""]); +// Exports +export var classNameLocalFile = \`XQP_Uob2ss9FjIlDgMOk\`; +export default ___CSS_LOADER_EXPORT___; +" +`; -._3YdnDqqBfyyJ_9JKWIle3X{ - c: d -} -", - "", - ], - Array [ - 1, - "._1DZQbqp1oX8etdFa5oSOnV { b: 1; } -._1PKuwglb3xQB3gwJBZx6_G { b: 3; } -._1MtdK0_soIbU20fcYBbRAe { b: 5; } -", - "", - ], -] -`; - -exports[`modules case \`composes-1\` (\`modules\` value is \`true)\`: warnings 1`] = `Array []`; - -exports[`modules case \`composes-2\` (\`modules\` value is \`false)\`: errors 1`] = `Array []`; - -exports[`modules case \`composes-2\` (\`modules\` value is \`false)\`: locals 1`] = `undefined`; - -exports[`modules case \`composes-2\` (\`modules\` value is \`false)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ":local(.c1) { composes: c-2 from \\"./file.css\\"; b: 1; } -:local(.c3) { composes: c1; b: 3; } -:local(.c5) { composes: c-2 c4 from \\"./file.css\\"; b: 5; } -", - "", - ], -] -`; - -exports[`modules case \`composes-2\` (\`modules\` value is \`false)\`: warnings 1`] = `Array []`; - -exports[`modules case \`composes-2\` (\`modules\` value is \`global)\`: errors 1`] = `Array []`; - -exports[`modules case \`composes-2\` (\`modules\` value is \`global)\`: locals 1`] = ` -Object { - "c1": "_2tj5Xzv7Ei8HGFvkrlGXyv _3CxjkH18CkEkRZ4FO4v-NQ", - "c3": "_1TPNBQGz_snQ6aGvXARYo0 _2tj5Xzv7Ei8HGFvkrlGXyv _3CxjkH18CkEkRZ4FO4v-NQ", - "c5": "rkDOmH5RkgZGaQ5Fey09Z _3CxjkH18CkEkRZ4FO4v-NQ G8VU3XI3HtOvZPlSEb9S3", +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___; +" `; -exports[`modules case \`composes-2\` (\`modules\` value is \`global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - "._3CxjkH18CkEkRZ4FO4v-NQ { - color: red; +exports[`"modules" option issue #1063: result 1`] = ` +".XQP_Uob2ss9FjIlDgMOk { + color: green; } -.G8VU3XI3HtOvZPlSEb9S3 { +.otherClassLocalFile { color: blue; } - -.test{ - c: d +.classNameGlobalFile { + color: black; } -", - "", - ], - Array [ - 1, - "._2tj5Xzv7Ei8HGFvkrlGXyv { b: 1; } -._1TPNBQGz_snQ6aGvXARYo0 { b: 3; } -.rkDOmH5RkgZGaQ5Fey09Z { b: 5; } -", - "", - ], -] -`; -exports[`modules case \`composes-2\` (\`modules\` value is \`global)\`: warnings 1`] = `Array []`; - -exports[`modules case \`composes-2\` (\`modules\` value is \`local)\`: errors 1`] = `Array []`; - -exports[`modules case \`composes-2\` (\`modules\` value is \`local)\`: locals 1`] = ` -Object { - "c1": "_2tj5Xzv7Ei8HGFvkrlGXyv _3CxjkH18CkEkRZ4FO4v-NQ", - "c3": "_1TPNBQGz_snQ6aGvXARYo0 _2tj5Xzv7Ei8HGFvkrlGXyv _3CxjkH18CkEkRZ4FO4v-NQ", - "c5": "rkDOmH5RkgZGaQ5Fey09Z _3CxjkH18CkEkRZ4FO4v-NQ G8VU3XI3HtOvZPlSEb9S3", +.OgdGONvTFtVRlDH24Xxl { + color: coral; } -`; - -exports[`modules case \`composes-2\` (\`modules\` value is \`local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - "._3CxjkH18CkEkRZ4FO4v-NQ { +.O3Bw7YaDjucmoBcLTWv6 .bsnf8w1D6AQzl0nVBMef { color: red; } - -.G8VU3XI3HtOvZPlSEb9S3 { - color: blue; -} - -._10rrqoQ7Mb3ZcY6LixlnpR{ - c: d -} -", - "", - ], - Array [ - 1, - "._2tj5Xzv7Ei8HGFvkrlGXyv { b: 1; } -._1TPNBQGz_snQ6aGvXARYo0 { b: 3; } -.rkDOmH5RkgZGaQ5Fey09Z { b: 5; } -", - "", - ], -] +" `; -exports[`modules case \`composes-2\` (\`modules\` value is \`local)\`: warnings 1`] = `Array []`; - -exports[`modules case \`composes-2\` (\`modules\` value is \`object with mode global)\`: errors 1`] = `Array []`; +exports[`"modules" option issue #1063: warnings 1`] = `[]`; -exports[`modules case \`composes-2\` (\`modules\` value is \`object with mode global)\`: locals 1`] = ` -Object { - "c1": "_c1 _c-2", - "c3": "_c3 _c1 _c-2", - "c5": "_c5 _c-2 _c4", -} -`; +exports[`"modules" option issue #1191 - fallback to default getLocalIdent: errors 1`] = `[]`; -exports[`modules case \`composes-2\` (\`modules\` value is \`object with mode global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - "._c-2 { +exports[`"modules" option issue #1191 - fallback to default getLocalIdent: 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, \`.some-class { color: red; } - -._c4 { - color: blue; -} - -.test{ - c: d +\`, ""]); +// Exports +var _1 = \`some-class\`; +export { _1 as "some-class" }; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option issue #1191 - fallback to default getLocalIdent: result 1`] = ` +{ + "css1": [ + [ + "./modules/issue-1191/issue-1191.css", + ".some-class { + color: red; } ", - "", + "", + ], ], - Array [ - 1, - "._c1 { b: 1; } -._c3 { b: 3; } -._c5 { b: 5; } + "css2": [ + [ + "./modules/issue-1191/issue-1191-custom.css", + ".custom-some-class { + color: red; +} ", - "", + "", + ], ], -] +} `; -exports[`modules case \`composes-2\` (\`modules\` value is \`object with mode global)\`: warnings 1`] = `Array []`; +exports[`"modules" option issue #1191 - fallback to default getLocalIdent: warnings 1`] = `[]`; -exports[`modules case \`composes-2\` (\`modules\` value is \`object with mode local)\`: errors 1`] = `Array []`; +exports[`"modules" option should avoid unnecessary "require": errors 1`] = `[]`; -exports[`modules case \`composes-2\` (\`modules\` value is \`object with mode local)\`: locals 1`] = ` -Object { - "c1": "_c1 _c-2", - "c3": "_c3 _c1 _c-2", - "c5": "_c5 _c-2 _c4", -} -`; - -exports[`modules case \`composes-2\` (\`modules\` value is \`object with mode local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - "._c-2 { +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; } -._c4 { - color: blue; +.RoQqX1UKTeWtDXMISYk9 { + color: red; } - -._test{ - c: d +\`, ""]); +// 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 [ - 1, - "._c1 { b: 1; } -._c3 { b: 3; } -._c5 { b: 5; } -", - "", - ], -] -`; - -exports[`modules case \`composes-2\` (\`modules\` value is \`object with mode local)\`: warnings 1`] = `Array []`; - -exports[`modules case \`composes-2\` (\`modules\` value is \`true)\`: errors 1`] = `Array []`; - -exports[`modules case \`composes-2\` (\`modules\` value is \`true)\`: locals 1`] = ` -Object { - "c1": "_2tj5Xzv7Ei8HGFvkrlGXyv _3CxjkH18CkEkRZ4FO4v-NQ", - "c3": "_1TPNBQGz_snQ6aGvXARYo0 _2tj5Xzv7Ei8HGFvkrlGXyv _3CxjkH18CkEkRZ4FO4v-NQ", - "c5": "rkDOmH5RkgZGaQ5Fey09Z _3CxjkH18CkEkRZ4FO4v-NQ G8VU3XI3HtOvZPlSEb9S3", -} -`; - -exports[`modules case \`composes-2\` (\`modules\` value is \`true)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - "._3CxjkH18CkEkRZ4FO4v-NQ { + [ + "./modules/composes/composes-duplicate.css", + ".Ps8VWEq9D6yYDbYD8Z74 { color: red; } -.G8VU3XI3HtOvZPlSEb9S3 { - color: blue; -} - -._10rrqoQ7Mb3ZcY6LixlnpR{ - c: d +.RoQqX1UKTeWtDXMISYk9 { + color: red; } -", - "", - ], - Array [ - 1, - "._2tj5Xzv7Ei8HGFvkrlGXyv { b: 1; } -._1TPNBQGz_snQ6aGvXARYo0 { b: 3; } -.rkDOmH5RkgZGaQ5Fey09Z { b: 5; } ", "", ], ] `; -exports[`modules case \`composes-2\` (\`modules\` value is \`true)\`: warnings 1`] = `Array []`; - -exports[`modules case \`composes-multiple\` (\`modules\` value is \`false)\`: errors 1`] = `Array []`; +exports[`"modules" option should avoid unnecessary "require": warnings 1`] = `[]`; -exports[`modules case \`composes-multiple\` (\`modules\` value is \`false)\`: locals 1`] = `undefined`; +exports[`"modules" option should dedupe same modules in one module (issue #1037): errors 1`] = `[]`; -exports[`modules case \`composes-multiple\` (\`modules\` value is \`false)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ":local(.abc) { - composes: def1 from \\"./file1.css\\"; - composes: def2 from \\"./file2.css\\"; +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 +{ } -", - "", - ], -] -`; - -exports[`modules case \`composes-multiple\` (\`modules\` value is \`false)\`: warnings 1`] = `Array []`; -exports[`modules case \`composes-multiple\` (\`modules\` value is \`global)\`: errors 1`] = `Array []`; - -exports[`modules case \`composes-multiple\` (\`modules\` value is \`global)\`: locals 1`] = ` -Object { - "abc": "_1bAv4bLL8-hE3a7MyZXrT- _3hEvHUTrMHercKPgTBsK6W _1UYEX_kWsPgokwmdBHI8pU", +.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 case \`composes-multiple\` (\`modules\` value is \`global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - "._3hEvHUTrMHercKPgTBsK6W { - color: red; +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 [ - 3, - "._1UYEX_kWsPgokwmdBHI8pU { - color: blue; + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./modules/dedupe/buttons/primary-button.css", + ".T3rsQRYGiFPb789T3nPW +{ + background-color:blue; + color:white; } ", "", ], - Array [ - 1, - "._1bAv4bLL8-hE3a7MyZXrT- { + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./modules/dedupe/buttons/secondary-button.css", + "._BsvPO61W5jn4UqX0Jck +{ + background-color:#555; + color:white; } ", "", ], -] -`; - -exports[`modules case \`composes-multiple\` (\`modules\` value is \`global)\`: warnings 1`] = `Array []`; - -exports[`modules case \`composes-multiple\` (\`modules\` value is \`local)\`: errors 1`] = `Array []`; - -exports[`modules case \`composes-multiple\` (\`modules\` value is \`local)\`: locals 1`] = ` -Object { - "abc": "_1bAv4bLL8-hE3a7MyZXrT- _3hEvHUTrMHercKPgTBsK6W _1UYEX_kWsPgokwmdBHI8pU", + [ + "./modules/dedupe/source.css", + ".cxBUjVsu_UGx0Xg0ywCw +{ } -`; -exports[`modules case \`composes-multiple\` (\`modules\` value is \`local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - "._3hEvHUTrMHercKPgTBsK6W { - color: red; -} -", - "", - ], - Array [ - 3, - "._1UYEX_kWsPgokwmdBHI8pU { - color: blue; +.mKgsL_hCxK21zxRDQMbn +{ } ", "", ], - Array [ - 1, - "._1bAv4bLL8-hE3a7MyZXrT- { -} -", - "", +] +`; + +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", + }, ], ] `; -exports[`modules case \`composes-multiple\` (\`modules\` value is \`local)\`: warnings 1`] = `Array []`; +exports[`"modules" option should invoke the custom getJSON function if provided: errors 1`] = `[]`; -exports[`modules case \`composes-multiple\` (\`modules\` value is \`object with mode global)\`: errors 1`] = `Array []`; +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 { -exports[`modules case \`composes-multiple\` (\`modules\` value is \`object with mode global)\`: locals 1`] = ` -Object { - "abc": "_abc _def1 _def2", + background-color: aliceblue; } -`; -exports[`modules case \`composes-multiple\` (\`modules\` value is \`object with mode global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - "._def1 { - color: red; -} -", - "", - ], - Array [ - 3, - "._def2 { - color: blue; -} -", - "", - ], - Array [ - 1, - "._abc { +.IZmhTnK9CIeu6ww6Zjbv { + + 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___; +" `; -exports[`modules case \`composes-multiple\` (\`modules\` value is \`object with mode global)\`: warnings 1`] = `Array []`; - -exports[`modules case \`composes-multiple\` (\`modules\` value is \`object with mode local)\`: errors 1`] = `Array []`; - -exports[`modules case \`composes-multiple\` (\`modules\` value is \`object with mode local)\`: locals 1`] = ` -Object { - "abc": "_abc _def1 _def2", +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; } -`; -exports[`modules case \`composes-multiple\` (\`modules\` value is \`object with mode local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - "._def1 { - color: red; +.hFeFcgvjCoj_9RRA4E59 { } ", "", ], - Array [ - 3, - "._def2 { - color: blue; + [ + "./modules/getJSON/source.css", + ".RT7ktT7mB7tfBR25sJDZ { + + background-color: aliceblue; } -", - "", - ], - Array [ - 1, - "._abc { + +.IZmhTnK9CIeu6ww6Zjbv { + + background-color: blanchedalmond; } ", "", @@ -1319,56 +1246,70 @@ Array [ ] `; -exports[`modules case \`composes-multiple\` (\`modules\` value is \`object with mode local)\`: warnings 1`] = `Array []`; +exports[`"modules" option should invoke the custom getJSON function if provided: warnings 1`] = `[]`; -exports[`modules case \`composes-multiple\` (\`modules\` value is \`true)\`: errors 1`] = `Array []`; +exports[`"modules" option should keep order: errors 1`] = `[]`; -exports[`modules case \`composes-multiple\` (\`modules\` value is \`true)\`: locals 1`] = ` -Object { - "abc": "_1bAv4bLL8-hE3a7MyZXrT- _3hEvHUTrMHercKPgTBsK6W _1UYEX_kWsPgokwmdBHI8pU", +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; } -`; -exports[`modules case \`composes-multiple\` (\`modules\` value is \`true)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - "._3hEvHUTrMHercKPgTBsK6W { +.BRalxsptB32EbO5CVyzm { + display: inline; +} +\`, ""]); +// 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___; +" +`; + +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; } + +.xIASfsMafltm9AZOHmbo { + color: aliceblue; +} ", "", ], - Array [ - 3, - "._1UYEX_kWsPgokwmdBHI8pU { + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./modules/order/order-2.css", + ".EPgSMUSXLA4RUVdEmb8f { color: blue; } -", - "", - ], - Array [ - 1, - "._1bAv4bLL8-hE3a7MyZXrT- { + +.WSVzOOOUl82t8IEBx9dS { + color: azure; } ", "", ], -] -`; - -exports[`modules case \`composes-multiple\` (\`modules\` value is \`true)\`: warnings 1`] = `Array []`; - -exports[`modules case \`composes-with-importing\` (\`modules\` value is \`false)\`: errors 1`] = `Array []`; - -exports[`modules case \`composes-with-importing\` (\`modules\` value is \`false)\`: locals 1`] = `undefined`; + [ + "./modules/order/index.css", + ".Q9ZbfN73CE9nTzgsOKaJ { + display: block; +} -exports[`modules case \`composes-with-importing\` (\`modules\` value is \`false)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ":local(.abc) { - composes: def from \\"./file.css\\"; +.BRalxsptB32EbO5CVyzm { + display: inline; } ", "", @@ -1376,288 +1317,427 @@ Array [ ] `; -exports[`modules case \`composes-with-importing\` (\`modules\` value is \`false)\`: warnings 1`] = `Array []`; +exports[`"modules" option should keep order: warnings 1`] = `[]`; -exports[`modules case \`composes-with-importing\` (\`modules\` value is \`global)\`: errors 1`] = `Array []`; +exports[`"modules" option should resolve absolute path in composes: errors 1`] = `[]`; -exports[`modules case \`composes-with-importing\` (\`modules\` value is \`global)\`: locals 1`] = ` -Object { - "abc": "_3sT-Lzs6aj6TM9J3mM7_Cj zu3DT3PNuTYdVravHX310", -} +exports[`"modules" option should resolve absolute path in 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]!./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 case \`composes-with-importing\` (\`modules\` value is \`global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - ".zu3DT3PNuTYdVravHX310 { - color: 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; } ", "", ], - Array [ - 1, - "._3sT-Lzs6aj6TM9J3mM7_Cj { -} -", + [ + "./modules/composes/composes-absolute.css", + ".kyvwkn92Lnd2EucgzJse { color: red; }", "", ], ] `; -exports[`modules case \`composes-with-importing\` (\`modules\` value is \`global)\`: warnings 1`] = `Array []`; +exports[`"modules" option should resolve absolute path in composes: warnings 1`] = `[]`; -exports[`modules case \`composes-with-importing\` (\`modules\` value is \`local)\`: errors 1`] = `Array []`; +exports[`"modules" option should resolve package from node_modules with and without tilde: errors 1`] = `[]`; -exports[`modules case \`composes-with-importing\` (\`modules\` value is \`local)\`: locals 1`] = ` -Object { - "abc": "_3sT-Lzs6aj6TM9J3mM7_Cj zu3DT3PNuTYdVravHX310", +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"] }; } + +\`, ""]); +// 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___; +" `; -exports[`modules case \`composes-with-importing\` (\`modules\` value is \`local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - ".zu3DT3PNuTYdVravHX310 { - color: red; -} +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", + " ", "", ], - Array [ - 1, - "._3sT-Lzs6aj6TM9J3mM7_Cj { + [ + "./modules/issue-914/source.css", + ".dplP4w4XMPrlPI5jKzht { + color: red; + background: green; } + ", "", ], ] `; -exports[`modules case \`composes-with-importing\` (\`modules\` value is \`local)\`: warnings 1`] = `Array []`; +exports[`"modules" option should resolve package from node_modules with and without tilde: warnings 1`] = `[]`; -exports[`modules case \`composes-with-importing\` (\`modules\` value is \`object with mode global)\`: errors 1`] = `Array []`; +exports[`"modules" option should should work with two leading hyphens: errors 1`] = `[]`; -exports[`modules case \`composes-with-importing\` (\`modules\` value is \`object with mode global)\`: locals 1`] = ` -Object { - "abc": "_abc _def", +exports[`"modules" option should should work with two leading hyphens: 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 { + background: red; } -`; -exports[`modules case \`composes-with-importing\` (\`modules\` value is \`object with mode global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - "._def { - color: red; +._--_test { + background: blue; } -", - "", - ], - Array [ - 1, - "._abc { + +._--className { + background: red; } -", - "", - ], -] -`; -exports[`modules case \`composes-with-importing\` (\`modules\` value is \`object with mode global)\`: warnings 1`] = `Array []`; +#_--someId { + background: green; +} -exports[`modules case \`composes-with-importing\` (\`modules\` value is \`object with mode local)\`: errors 1`] = `Array []`; +._--className ._--subClass { + color: green; +} -exports[`modules case \`composes-with-importing\` (\`modules\` value is \`object with mode local)\`: locals 1`] = ` -Object { - "abc": "_abc _def", +#_--someId ._--subClass { + color: blue; } -`; -exports[`modules case \`composes-with-importing\` (\`modules\` value is \`object with mode local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - "._def { +._---a0-34a___f { color: red; } -", - "", - ], - Array [ - 1, - "._abc { -} -", - "", - ], -] -`; -exports[`modules case \`composes-with-importing\` (\`modules\` value is \`object with mode local)\`: warnings 1`] = `Array []`; - -exports[`modules case \`composes-with-importing\` (\`modules\` value is \`true)\`: errors 1`] = `Array []`; +._--m_x_\\\\@ { + margin-left: auto !important; + margin-right: auto !important; +} -exports[`modules case \`composes-with-importing\` (\`modules\` value is \`true)\`: locals 1`] = ` -Object { - "abc": "_3sT-Lzs6aj6TM9J3mM7_Cj zu3DT3PNuTYdVravHX310", +._--B\\\\&W\\\\? { + margin-left: auto !important; + margin-right: auto !important; } -`; -exports[`modules case \`composes-with-importing\` (\`modules\` value is \`true)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - ".zu3DT3PNuTYdVravHX310 { - color: red; +/* matches elements with class=":\\\`(" */ +._--\\\\3A \\\\\\\`\\\\( { + color: aqua; } -", - "", - ], - Array [ - 1, - "._3sT-Lzs6aj6TM9J3mM7_Cj { + +/* matches elements with class="1a2b3c" */ +._--\\\\31 a2b3c { + color: aliceblue; } -", - "", - ], -] -`; -exports[`modules case \`composes-with-importing\` (\`modules\` value is \`true)\`: warnings 1`] = `Array []`; +/* matches the element with id="#fake-id" */ +#_--\\\\#fake-id { + color: antiquewhite; +} -exports[`modules case \`declaration-value\` (\`modules\` value is \`false)\`: errors 1`] = `Array []`; +/* matches the element with id="-a-b-c-" */ +#_---a-b-c- { + color: azure; +} -exports[`modules case \`declaration-value\` (\`modules\` value is \`false)\`: locals 1`] = `undefined`; +/* matches the element with id="©" */ +#_--© { + color: black; +} -exports[`modules case \`declaration-value\` (\`modules\` value is \`false)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "@value blue: red; +._--♥ { 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; } -.a { - border: 1px solid blue; +._--foo\\\\/bar { + background: hotpink; } -", - "", - ], -] -`; -exports[`modules case \`declaration-value\` (\`modules\` value is \`false)\`: warnings 1`] = `Array []`; +._--foo\\\\\\\\bar { + background: hotpink; +} -exports[`modules case \`declaration-value\` (\`modules\` value is \`global)\`: errors 1`] = `Array []`; +._--foo\\\\/bar\\\\/baz { + background: hotpink; +} -exports[`modules case \`declaration-value\` (\`modules\` value is \`global)\`: locals 1`] = ` -Object { - "blue": "red", +._--foo\\\\\\\\bar\\\\\\\\baz { + background: hotpink; +} +\`, ""]); +// 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 should work with two leading hyphens: result 1`] = ` +[ + [ + "./modules/localIdentName/localIdentName.css", + "._--test { + background: red; } -`; -exports[`modules case \`declaration-value\` (\`modules\` value is \`global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ".a { - border: 1px solid red; +._--_test { + background: blue; } -", - "", - ], -] -`; -exports[`modules case \`declaration-value\` (\`modules\` value is \`global)\`: warnings 1`] = `Array []`; +._--className { + background: red; +} -exports[`modules case \`declaration-value\` (\`modules\` value is \`local)\`: errors 1`] = `Array []`; +#_--someId { + background: green; +} -exports[`modules case \`declaration-value\` (\`modules\` value is \`local)\`: locals 1`] = ` -Object { - "a": "rUmYXW8EUSiAHIrtvLLrL", - "blue": "red", +._--className ._--subClass { + color: green; } -`; -exports[`modules case \`declaration-value\` (\`modules\` value is \`local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ".rUmYXW8EUSiAHIrtvLLrL { - border: 1px solid red; +#_--someId ._--subClass { + color: blue; } -", - "", - ], -] -`; -exports[`modules case \`declaration-value\` (\`modules\` value is \`local)\`: warnings 1`] = `Array []`; +._---a0-34a___f { + color: red; +} -exports[`modules case \`declaration-value\` (\`modules\` value is \`object with mode global)\`: errors 1`] = `Array []`; +._--m_x_\\@ { + margin-left: auto !important; + margin-right: auto !important; +} -exports[`modules case \`declaration-value\` (\`modules\` value is \`object with mode global)\`: locals 1`] = ` -Object { - "blue": "red", +._--B\\&W\\? { + margin-left: auto !important; + margin-right: auto !important; } -`; -exports[`modules case \`declaration-value\` (\`modules\` value is \`object with mode global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ".a { - border: 1px solid red; +/* matches elements with class=":\`(" */ +._--\\3A \\\`\\( { + color: aqua; } -", - "", - ], -] -`; -exports[`modules case \`declaration-value\` (\`modules\` value is \`object with mode global)\`: warnings 1`] = `Array []`; +/* matches elements with class="1a2b3c" */ +._--\\31 a2b3c { + color: aliceblue; +} -exports[`modules case \`declaration-value\` (\`modules\` value is \`object with mode local)\`: errors 1`] = `Array []`; +/* matches the element with id="#fake-id" */ +#_--\\#fake-id { + color: antiquewhite; +} -exports[`modules case \`declaration-value\` (\`modules\` value is \`object with mode local)\`: locals 1`] = ` -Object { - "a": "_a", - "blue": "red", +/* matches the element with id="-a-b-c-" */ +#_---a-b-c- { + color: azure; } -`; -exports[`modules case \`declaration-value\` (\`modules\` value is \`object with mode local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._a { - border: 1px solid red; +/* matches the element with id="©" */ +#_--© { + color: black; } -", - "", - ], -] -`; -exports[`modules case \`declaration-value\` (\`modules\` value is \`object with mode local)\`: warnings 1`] = `Array []`; +._--♥ { 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; +} -exports[`modules case \`declaration-value\` (\`modules\` value is \`true)\`: errors 1`] = `Array []`; +._--foo\\\\bar { + background: hotpink; +} -exports[`modules case \`declaration-value\` (\`modules\` value is \`true)\`: locals 1`] = ` -Object { - "a": "rUmYXW8EUSiAHIrtvLLrL", - "blue": "red", +._--foo\\/bar\\/baz { + background: hotpink; } -`; -exports[`modules case \`declaration-value\` (\`modules\` value is \`true)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ".rUmYXW8EUSiAHIrtvLLrL { - border: 1px solid red; +._--foo\\\\bar\\\\baz { + background: hotpink; } ", "", @@ -1665,247 +1745,343 @@ Array [ ] `; -exports[`modules case \`declaration-value\` (\`modules\` value is \`true)\`: warnings 1`] = `Array []`; - -exports[`modules case \`issue-589\` (\`modules\` value is \`false)\`: errors 1`] = `Array []`; +exports[`"modules" option should should work with two leading hyphens: warnings 1`] = `[]`; -exports[`modules case \`issue-589\` (\`modules\` value is \`false)\`: locals 1`] = `undefined`; +exports[`"modules" option should should work with two leading underscore: errors 1`] = `[]`; -exports[`modules case \`issue-589\` (\`modules\` value is \`false)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "body:before { - content: ''; - background: url(/webpack/public/path/5b1f36bc41ab31f5b801d48ba1d65781.png); +exports[`"modules" option should should work with two leading underscore: 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 { + background: red; } -", - "", - ], -] -`; -exports[`modules case \`issue-589\` (\`modules\` value is \`false)\`: warnings 1`] = `Array []`; +.___test { + background: blue; +} -exports[`modules case \`issue-589\` (\`modules\` value is \`global)\`: errors 1`] = `Array []`; +.__className { + background: red; +} -exports[`modules case \`issue-589\` (\`modules\` value is \`global)\`: locals 1`] = `undefined`; +#__someId { + background: green; +} -exports[`modules case \`issue-589\` (\`modules\` value is \`global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "body:before { - content: ''; - background: url(/webpack/public/path/5b1f36bc41ab31f5b801d48ba1d65781.png); +.__className .__subClass { + color: green; } -", - "", - ], -] -`; -exports[`modules case \`issue-589\` (\`modules\` value is \`global)\`: warnings 1`] = `Array []`; +#__someId .__subClass { + color: blue; +} -exports[`modules case \`issue-589\` (\`modules\` value is \`local)\`: errors 1`] = `Array []`; +.__-a0-34a___f { + color: red; +} -exports[`modules case \`issue-589\` (\`modules\` value is \`local)\`: locals 1`] = `undefined`; +.__m_x_\\\\@ { + margin-left: auto !important; + margin-right: auto !important; +} -exports[`modules case \`issue-589\` (\`modules\` value is \`local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "body:before { - content: ''; - background: url(/webpack/public/path/5b1f36bc41ab31f5b801d48ba1d65781.png); +.__B\\\\&W\\\\? { + margin-left: auto !important; + margin-right: auto !important; } -", - "", - ], -] -`; -exports[`modules case \`issue-589\` (\`modules\` value is \`local)\`: warnings 1`] = `Array []`; +/* matches elements with class=":\\\`(" */ +.__\\\\3A \\\\\\\`\\\\( { + color: aqua; +} -exports[`modules case \`issue-589\` (\`modules\` value is \`object with mode global)\`: errors 1`] = `Array []`; +/* matches elements with class="1a2b3c" */ +.__\\\\31 a2b3c { + color: aliceblue; +} -exports[`modules case \`issue-589\` (\`modules\` value is \`object with mode global)\`: locals 1`] = `undefined`; +/* matches the element with id="#fake-id" */ +#__\\\\#fake-id { + color: antiquewhite; +} -exports[`modules case \`issue-589\` (\`modules\` value is \`object with mode global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "body:before { - content: ''; - background: url(/webpack/public/path/5b1f36bc41ab31f5b801d48ba1d65781.png); +/* matches the element with id="-a-b-c-" */ +#__-a-b-c- { + color: azure; } -", - "", - ], -] -`; -exports[`modules case \`issue-589\` (\`modules\` value is \`object with mode global)\`: warnings 1`] = `Array []`; +/* matches the element with id="©" */ +#__© { + color: black; +} -exports[`modules case \`issue-589\` (\`modules\` value is \`object with mode local)\`: errors 1`] = `Array []`; +.__♥ { 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; +} -exports[`modules case \`issue-589\` (\`modules\` value is \`object with mode local)\`: locals 1`] = `undefined`; +.__foo\\\\\\\\bar { + background: hotpink; +} -exports[`modules case \`issue-589\` (\`modules\` value is \`object with mode local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "body:before { - content: ''; - background: url(/webpack/public/path/5b1f36bc41ab31f5b801d48ba1d65781.png); +.__foo\\\\/bar\\\\/baz { + background: hotpink; } -", - "", - ], -] -`; -exports[`modules case \`issue-589\` (\`modules\` value is \`object with mode local)\`: warnings 1`] = `Array []`; +.__foo\\\\\\\\bar\\\\\\\\baz { + background: hotpink; +} +\`, ""]); +// 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 should work with two leading underscore: result 1`] = ` +[ + [ + "./modules/localIdentName/localIdentName.css", + ".__test { + background: red; +} -exports[`modules case \`issue-589\` (\`modules\` value is \`true)\`: errors 1`] = `Array []`; +.___test { + background: blue; +} -exports[`modules case \`issue-589\` (\`modules\` value is \`true)\`: locals 1`] = `undefined`; +.__className { + background: red; +} -exports[`modules case \`issue-589\` (\`modules\` value is \`true)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "body:before { - content: ''; - background: url(/webpack/public/path/5b1f36bc41ab31f5b801d48ba1d65781.png); +#__someId { + background: green; } -", - "", - ], -] -`; -exports[`modules case \`issue-589\` (\`modules\` value is \`true)\`: warnings 1`] = `Array []`; +.__className .__subClass { + color: green; +} -exports[`modules case \`keyframes-and-animation\` (\`modules\` value is \`false)\`: errors 1`] = `Array []`; +#__someId .__subClass { + color: blue; +} -exports[`modules case \`keyframes-and-animation\` (\`modules\` value is \`false)\`: locals 1`] = `undefined`; +.__-a0-34a___f { + color: red; +} -exports[`modules case \`keyframes-and-animation\` (\`modules\` value is \`false)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ".a { - color: green; +.__m_x_\\@ { + margin-left: auto !important; + margin-right: auto !important; } -@keyframes bounce { - 0% { - transform: translateY(-100%); - opacity: 0; - } - 5% { - transform: translateY(-100%); - opacity: 0; - } -} - -@-webkit-keyframes bounce2 { - 0% { - transform: translateY(-100%); - opacity: 0; - } - 5% { - transform: translateY(-100%); - opacity: 0; - } -} - -.bounce { - animation-name: bounce; - animation: bounce2 1s ease; -} - -.bounce2 { - color: green; - animation: bounce 1s ease; - animation-name: bounce2; -} - -.bounce3 { - animation: bounce 1s ease, bounce2 -} - -.bounce4 { - animation: bounce 1s ease, bounce2; +.__B\\&W\\? { + margin-left: auto !important; + margin-right: auto !important; } -.b { - color: green; +/* matches elements with class=":\`(" */ +.__\\3A \\\`\\( { + color: aqua; } -", - "", - ], -] -`; - -exports[`modules case \`keyframes-and-animation\` (\`modules\` value is \`false)\`: warnings 1`] = `Array []`; - -exports[`modules case \`keyframes-and-animation\` (\`modules\` value is \`global)\`: errors 1`] = `Array []`; - -exports[`modules case \`keyframes-and-animation\` (\`modules\` value is \`global)\`: locals 1`] = `undefined`; -exports[`modules case \`keyframes-and-animation\` (\`modules\` value is \`global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ".a { - color: green; +/* matches elements with class="1a2b3c" */ +.__\\31 a2b3c { + color: aliceblue; } -@keyframes bounce { - 0% { - transform: translateY(-100%); - opacity: 0; - } - 5% { - transform: translateY(-100%); - opacity: 0; - } +/* matches the element with id="#fake-id" */ +#__\\#fake-id { + color: antiquewhite; } -@-webkit-keyframes bounce2 { - 0% { - transform: translateY(-100%); - opacity: 0; - } - 5% { - transform: translateY(-100%); - opacity: 0; - } +/* matches the element with id="-a-b-c-" */ +#__-a-b-c- { + color: azure; } -.bounce { - animation-name: bounce; - animation: bounce2 1s ease; +/* matches the element with id="©" */ +#__© { + color: black; } -.bounce2 { - color: green; - animation: bounce 1s ease; - animation-name: bounce2; +.__♥ { 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; } -.bounce3 { - animation: bounce 1s ease, bounce2 +.__foo\\\\bar { + background: hotpink; } -.bounce4 { - animation: bounce 1s ease, bounce2; +.__foo\\/bar\\/baz { + background: hotpink; } -.b { - color: green; +.__foo\\\\bar\\\\baz { + background: hotpink; } ", "", @@ -1913,136 +2089,106 @@ Array [ ] `; -exports[`modules case \`keyframes-and-animation\` (\`modules\` value is \`global)\`: warnings 1`] = `Array []`; - -exports[`modules case \`keyframes-and-animation\` (\`modules\` value is \`local)\`: errors 1`] = `Array []`; - -exports[`modules case \`keyframes-and-animation\` (\`modules\` value is \`local)\`: locals 1`] = ` -Object { - "a": "_1AzRoWem1zBzZ9hLlF5IJC", - "b": "_1eH5GHM6EfKYOklEd2mhle", - "bounce": "_355y8MvF-ilfLoMa6xQMuq", - "bounce2": "_20oF72x8NQuWNrNLEjvczE", - "bounce3": "_3OQHSo2d42CWSR-npTXaic", - "bounce4": "_3bL1lmhMKE-Qlk83VSMCHN", -} -`; - -exports[`modules case \`keyframes-and-animation\` (\`modules\` value is \`local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._1AzRoWem1zBzZ9hLlF5IJC { - color: green; -} - -@keyframes _355y8MvF-ilfLoMa6xQMuq { - 0% { - transform: translateY(-100%); - opacity: 0; - } - 5% { - transform: translateY(-100%); - opacity: 0; - } -} +exports[`"modules" option should should work with two leading underscore: warnings 1`] = `[]`; -@-webkit-keyframes _20oF72x8NQuWNrNLEjvczE { - 0% { - transform: translateY(-100%); - opacity: 0; - } - 5% { - transform: translateY(-100%); - opacity: 0; - } -} +exports[`"modules" option should support resolving in composes preprocessor files with extensions: errors 1`] = `[]`; -._355y8MvF-ilfLoMa6xQMuq { - animation-name: _355y8MvF-ilfLoMa6xQMuq; - animation: _20oF72x8NQuWNrNLEjvczE 1s ease; +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; } -._20oF72x8NQuWNrNLEjvczE { - color: green; - animation: _355y8MvF-ilfLoMa6xQMuq 1s ease; - animation-name: _20oF72x8NQuWNrNLEjvczE; +.jfnINdjNmjmNE30hJhM2 { + color: \${ ___CSS_LOADER_ICSS_IMPORT_0____NAMED___["v-def"] }; } -._3OQHSo2d42CWSR-npTXaic { - animation: _355y8MvF-ilfLoMa6xQMuq 1s ease, _20oF72x8NQuWNrNLEjvczE +.UIbsE5LKj9LULxJh5lui { + color: \${ ___CSS_LOADER_ICSS_IMPORT_1____NAMED___["v-foo"] }; } -._3bL1lmhMKE-Qlk83VSMCHN { - animation: _355y8MvF-ilfLoMa6xQMuq 1s ease, _20oF72x8NQuWNrNLEjvczE; +.IhDiFbofjUNbC6vdWN9Z { + color: \${ ___CSS_LOADER_ICSS_IMPORT_2____NAMED___["v-bar"] }; } -._1eH5GHM6EfKYOklEd2mhle { - color: green; +.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___; +" +`; + +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", + " ", "", ], -] -`; - -exports[`modules case \`keyframes-and-animation\` (\`modules\` value is \`local)\`: warnings 1`] = `Array []`; - -exports[`modules case \`keyframes-and-animation\` (\`modules\` value is \`object with mode global)\`: errors 1`] = `Array []`; - -exports[`modules case \`keyframes-and-animation\` (\`modules\` value is \`object with mode global)\`: locals 1`] = `undefined`; - -exports[`modules case \`keyframes-and-animation\` (\`modules\` value is \`object with mode global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ".a { - color: green; -} - -@keyframes bounce { - 0% { - transform: translateY(-100%); - opacity: 0; - } - 5% { - transform: translateY(-100%); - opacity: 0; - } + [ + "../../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; -@-webkit-keyframes bounce2 { - 0% { - transform: translateY(-100%); - opacity: 0; - } - 5% { - transform: translateY(-100%); - opacity: 0; - } +.oNU7JF6MtPAFrlrthaOD { + color: $color; + padding: 15px; } - -.bounce { - animation-name: bounce; - animation: bounce2 1s ease; +", + "", + ], + [ + "./modules/composes/composes-preprocessors.css", + ".globalClassName { + color: orange; } -.bounce2 { - color: green; - animation: bounce 1s ease; - animation-name: bounce2; +.jfnINdjNmjmNE30hJhM2 { + color: red; } -.bounce3 { - animation: bounce 1s ease, bounce2 +.UIbsE5LKj9LULxJh5lui { + color: green; } -.bounce4 { - animation: bounce 1s ease, bounce2; +.IhDiFbofjUNbC6vdWN9Z { + color: white; } -.b { - color: green; +.vtrwouBgSegFPwkaXOt_ { + background: #000; } ", "", @@ -2050,315 +2196,433 @@ Array [ ] `; -exports[`modules case \`keyframes-and-animation\` (\`modules\` value is \`object with mode global)\`: warnings 1`] = `Array []`; - -exports[`modules case \`keyframes-and-animation\` (\`modules\` value is \`object with mode local)\`: errors 1`] = `Array []`; - -exports[`modules case \`keyframes-and-animation\` (\`modules\` value is \`object with mode local)\`: locals 1`] = ` -Object { - "a": "_a", - "b": "_b", - "bounce": "_bounce", - "bounce2": "_bounce2", - "bounce3": "_bounce3", - "bounce4": "_bounce4", +exports[`"modules" option should support resolving in composes preprocessor files with extensions: warnings 1`] = `[]`; + +exports[`"modules" option should support resolving in composes: errors 1`] = `[]`; + +exports[`"modules" option should support resolving in 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]!./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"] }; } -`; -exports[`modules case \`keyframes-and-animation\` (\`modules\` value is \`object with mode local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._a { - color: green; +.zchqshjqLbPAHaRvIBET { + color: blue; } -@keyframes _bounce { - 0% { - transform: translateY(-100%); - opacity: 0; - } - 5% { - transform: translateY(-100%); - opacity: 0; - } +.WZBxXqS2GytaA3IBhhnd { + display: block; } -@-webkit-keyframes _bounce2 { - 0% { - transform: translateY(-100%); - opacity: 0; - } - 5% { - transform: translateY(-100%); - opacity: 0; - } +.W51zcAMuJMsNFi1CXgWr { + width: \${ ___CSS_LOADER_ICSS_IMPORT_1____NAMED___["v-something"] }; } -._bounce { - animation-name: _bounce; - animation: _bounce2 1s ease; +.KEl5ZxzNkpjfWorrBglC { + color: \${ ___CSS_LOADER_ICSS_IMPORT_0____NAMED___["v-other"] }; } -._bounce2 { - color: green; - animation: _bounce 1s ease; - animation-name: _bounce2; +.ecAEWh2vww9pNEdyj9Jn { + prop: \${ ___CSS_LOADER_ICSS_IMPORT_0____NAMED___["v-def"] }; + duplicate: \${ ___CSS_LOADER_ICSS_IMPORT_0____NAMED___["v-other"] }; } -._bounce3 { - animation: _bounce 1s ease, _bounce2 +.CBlowYk8qiAgWWzFeXRA { + color: red; } -._bounce4 { - animation: _bounce 1s ease, _bounce2; +.c_NHnDcX1bd_kuxgsuYi { + color: yellow; } -._b { - color: green; +.S0Kwou8pVmsENtBP3hYm { + color: gray; } -", - "", - ], -] -`; - -exports[`modules case \`keyframes-and-animation\` (\`modules\` value is \`object with mode local)\`: warnings 1`] = `Array []`; - -exports[`modules case \`keyframes-and-animation\` (\`modules\` value is \`true)\`: errors 1`] = `Array []`; -exports[`modules case \`keyframes-and-animation\` (\`modules\` value is \`true)\`: locals 1`] = ` -Object { - "a": "_1AzRoWem1zBzZ9hLlF5IJC", - "b": "_1eH5GHM6EfKYOklEd2mhle", - "bounce": "_355y8MvF-ilfLoMa6xQMuq", - "bounce2": "_20oF72x8NQuWNrNLEjvczE", - "bounce3": "_3OQHSo2d42CWSR-npTXaic", - "bounce4": "_3bL1lmhMKE-Qlk83VSMCHN", +.rq663Pq_zV0CjpwttvK4 { + color: gray; } -`; -exports[`modules case \`keyframes-and-animation\` (\`modules\` value is \`true)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._1AzRoWem1zBzZ9hLlF5IJC { - color: green; +.fadRMHArJofp7sWEbPVR { + color: gainsboro; } -@keyframes _355y8MvF-ilfLoMa6xQMuq { - 0% { - transform: translateY(-100%); - opacity: 0; - } - 5% { - transform: translateY(-100%); - opacity: 0; - } +.sg1HlXqlWy6l6_Wm5iA7 { + color: gainsboro; } -@-webkit-keyframes _20oF72x8NQuWNrNLEjvczE { - 0% { - transform: translateY(-100%); - opacity: 0; - } - 5% { - transform: translateY(-100%); - opacity: 0; - } +.bnRUswvicYag6u0SPnvI { + color: #BF4040; } -._355y8MvF-ilfLoMa6xQMuq { - animation-name: _355y8MvF-ilfLoMa6xQMuq; - animation: _20oF72x8NQuWNrNLEjvczE 1s ease; +.kEJRwpukB2OtmkGTknbU { + color: black; } -._20oF72x8NQuWNrNLEjvczE { - color: green; - animation: _355y8MvF-ilfLoMa6xQMuq 1s ease; - animation-name: _20oF72x8NQuWNrNLEjvczE; +@media (min-width: 960px) { + .hY2PI5vC9ABuJY1nkWnf { + padding: 0 20px; + } } -._3OQHSo2d42CWSR-npTXaic { - animation: _355y8MvF-ilfLoMa6xQMuq 1s ease, _20oF72x8NQuWNrNLEjvczE +.\${ ___CSS_LOADER_ICSS_IMPORT_0____NAMED___["s-white"] } { + color: white; } -._3bL1lmhMKE-Qlk83VSMCHN { - animation: _355y8MvF-ilfLoMa6xQMuq 1s ease, _20oF72x8NQuWNrNLEjvczE; +@media \${ ___CSS_LOADER_ICSS_IMPORT_0____NAMED___["m-small"] } { + .hY2PI5vC9ABuJY1nkWnf { + padding: 20px 20px; + } } -._1eH5GHM6EfKYOklEd2mhle { - color: green; -} -", - "", - ], -] -`; - -exports[`modules case \`keyframes-and-animation\` (\`modules\` value is \`true)\`: warnings 1`] = `Array []`; - -exports[`modules case \`leak-scope\` (\`modules\` value is \`false)\`: errors 1`] = `Array []`; +.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%; +} -exports[`modules case \`leak-scope\` (\`modules\` value is \`false)\`: locals 1`] = `undefined`; -exports[`modules case \`leak-scope\` (\`modules\` value is \`false)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ".a { - color: green; - animation: a; +a { + content: 'content'; } -@keyframes b { - 0% { left: 10px; } - 100% { left: 20px; } +@supports (content: 'content') { + a { + content: 'content'; + } } -.b { - animation: b; +[class~='content'] { + color:green; } -@keyframes :global(c) { - 0% { left: 10px; } - 100% { left: 20px; } +.xajoqP1d3SwrjJ4WEM8g { + background: url(\${___CSS_LOADER_URL_REPLACEMENT_0___}); } -.c { - animation: c1; - animation: c2, c3, c4; +.Ix5nEHiVOsWuWxdx0twz { + background: red; } - -@keyframes :global(d) { - 0% { left: 10px; } - 100% { left: 20px; } +\`, ""]); +// 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___; +" +`; + +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; } - -:global .d1 { - animation: d1; - animation: d2, d3, d4; +", + "(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; } - -:global(.d2) { - animation: d2; +", + "", + ], + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./modules/composes/relative.css", + ".o0pMg4suYQOIzdBIQJv1 { + display: inline; } ", "", ], -] -`; + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./modules/composes/top-relative.css", + ".l9CmW32NEl99tuNLdbzp { + display: flex; +} +", + "", + ], + [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./modules/issue-861/node_modules/package/style.css", + ".q49Ogfvno__tAgAiYJcD { + display: inline-block; +} +", + "", + ], + [ + "../../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; +} -exports[`modules case \`leak-scope\` (\`modules\` value is \`false)\`: warnings 1`] = `Array []`; +.zchqshjqLbPAHaRvIBET { + color: blue; +} -exports[`modules case \`leak-scope\` (\`modules\` value is \`global)\`: errors 1`] = `Array []`; +.WZBxXqS2GytaA3IBhhnd { + display: block; +} -exports[`modules case \`leak-scope\` (\`modules\` value is \`global)\`: locals 1`] = `undefined`; +.W51zcAMuJMsNFi1CXgWr { + width: 2112moon; +} -exports[`modules case \`leak-scope\` (\`modules\` value is \`global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ".a { - color: green; - animation: a; +.KEl5ZxzNkpjfWorrBglC { + color: green; } -@keyframes b { - 0% { left: 10px; } - 100% { left: 20px; } +.ecAEWh2vww9pNEdyj9Jn { + prop: red; + duplicate: green; } -.b { - animation: b; +.CBlowYk8qiAgWWzFeXRA { + color: red; } -@keyframes c { - 0% { left: 10px; } - 100% { left: 20px; } +.c_NHnDcX1bd_kuxgsuYi { + color: yellow; } -.c { - animation: c1; - animation: c2, c3, c4; +.S0Kwou8pVmsENtBP3hYm { + color: gray; } -@keyframes d { - 0% { left: 10px; } - 100% { left: 20px; } +.rq663Pq_zV0CjpwttvK4 { + color: gray; } -.d1 { - animation: d1; - animation: d2, d3, d4; +.fadRMHArJofp7sWEbPVR { + color: gainsboro; } -.d2 { - animation: d2; +.sg1HlXqlWy6l6_Wm5iA7 { + color: gainsboro; } -", - "", - ], -] -`; -exports[`modules case \`leak-scope\` (\`modules\` value is \`global)\`: warnings 1`] = `Array []`; +.bnRUswvicYag6u0SPnvI { + color: #BF4040; +} -exports[`modules case \`leak-scope\` (\`modules\` value is \`local)\`: errors 1`] = `Array []`; +.kEJRwpukB2OtmkGTknbU { + color: black; +} -exports[`modules case \`leak-scope\` (\`modules\` value is \`local)\`: locals 1`] = ` -Object { - "a": "_1OjK2G7L6Ypn9Qqa8lly-H", - "b": "_2cTRWn5QG4xtPeFL2wrKvv", - "c": "_3MHGI9_Tl4A_kJUxXx1q2j", - "c1": "_1PQ8UpcdVbFbAcYs6wdRXj", - "c2": "_3JhTjOsNov-pQXnd3o0JJ", - "c3": "_9skQ6KRXi6qCorV5zNSyV", - "c4": "_1Gh6Pqr28qXCExbnssOGX9", - "d2": "_35GAwk8Rb2LyIN0pSAXjyy", +@media (min-width: 960px) { + .hY2PI5vC9ABuJY1nkWnf { + padding: 0 20px; + } } -`; -exports[`modules case \`leak-scope\` (\`modules\` value is \`local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._1OjK2G7L6Ypn9Qqa8lly-H { - color: green; - animation: _1OjK2G7L6Ypn9Qqa8lly-H; +.white { + color: white; } -@keyframes _2cTRWn5QG4xtPeFL2wrKvv { - 0% { left: 10px; } - 100% { left: 20px; } +@media (min-width: 320px) { + .hY2PI5vC9ABuJY1nkWnf { + padding: 20px 20px; + } } -._2cTRWn5QG4xtPeFL2wrKvv { - animation: _2cTRWn5QG4xtPeFL2wrKvv; +.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%; } -@keyframes c { - 0% { left: 10px; } - 100% { left: 20px; } + +a { + content: 'content'; } -._3MHGI9_Tl4A_kJUxXx1q2j { - animation: _1PQ8UpcdVbFbAcYs6wdRXj; - animation: _3JhTjOsNov-pQXnd3o0JJ, _9skQ6KRXi6qCorV5zNSyV, _1Gh6Pqr28qXCExbnssOGX9; +@supports (content: 'content') { + a { + content: 'content'; + } } -@keyframes d { - 0% { left: 10px; } - 100% { left: 20px; } +[class~='content'] { + color:green; } -.d1 { - animation: d1; - animation: d2, d3, d4; +.xajoqP1d3SwrjJ4WEM8g { + background: url(replaced_file_protocol_/webpack/public/path/img.png); } -.d2 { - animation: _35GAwk8Rb2LyIN0pSAXjyy; +.Ix5nEHiVOsWuWxdx0twz { + background: red; } ", "", @@ -2366,262 +2630,389 @@ Array [ ] `; -exports[`modules case \`leak-scope\` (\`modules\` value is \`local)\`: warnings 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 case \`leak-scope\` (\`modules\` value is \`object with mode global)\`: errors 1`] = `Array []`; +More info: https://sass-lang.com/d/legacy-js-api", +] +`; -exports[`modules case \`leak-scope\` (\`modules\` value is \`object with mode global)\`: locals 1`] = `undefined`; +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'", +] +`; -exports[`modules case \`leak-scope\` (\`modules\` value is \`object with mode global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ".a { - color: green; - animation: a; -} +exports[`"modules" option should throw an error on unresolved import: warnings 1`] = `[]`; -@keyframes b { - 0% { left: 10px; } - 100% { left: 20px; } -} +exports[`"modules" option should throw an error when class has unsupported name (JavaScript reserved words): errors 1`] = `[]`; -.b { - animation: b; -} +exports[`"modules" option should throw an error when class has unsupported name (JavaScript reserved words): warnings 1`] = `[]`; -@keyframes c { - 0% { left: 10px; } - 100% { left: 20px; } -} +exports[`"modules" option should throw an error when the "namedExport" is enabled and the "exportLocalsConvention" options has not "camelCaseOnly" value: errors 1`] = `[]`; -.c { - animation: c1; - animation: c2, c3, c4; -} +exports[`"modules" option should throw an error when the "namedExport" is enabled and the "exportLocalsConvention" options has not "camelCaseOnly" value: warnings 1`] = `[]`; -@keyframes d { - 0% { left: 10px; } - 100% { left: 20px; } -} +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", +] +`; -.d1 { - animation: d1; - animation: d2, d3, d4; -} +exports[`"modules" option should throw an error when the "namedExport" option is "true", but the "esModule" is "false": warnings 1`] = `[]`; -.d2 { - animation: d2; -} -", - "", - ], +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 case \`leak-scope\` (\`modules\` value is \`object with mode global)\`: warnings 1`] = `Array []`; +exports[`"modules" option should throw error when the "exportLocalsConvention" function throw error: warnings 1`] = `[]`; -exports[`modules case \`leak-scope\` (\`modules\` value is \`object with mode local)\`: errors 1`] = `Array []`; +exports[`"modules" option should throw error with composes when the "namedExport" is enabled and "exportLocalsConvention" options has invalid value: errors 1`] = `[]`; -exports[`modules case \`leak-scope\` (\`modules\` value is \`object with mode local)\`: locals 1`] = ` -Object { - "a": "_a", - "b": "_b", - "c": "_c", - "c1": "_c1", - "c2": "_c2", - "c3": "_c3", - "c4": "_c4", - "d2": "_d2", +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; } -`; -exports[`modules case \`leak-scope\` (\`modules\` value is \`object with mode local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._a { - color: green; - animation: _a; +._test--Lb3f { + background: blue; } -@keyframes _b { - 0% { left: 10px; } - 100% { left: 20px; } +.className--Ldhp { + background: red; } -._b { - animation: _b; +#someId--b0rh { + background: green; } -@keyframes c { - 0% { left: 10px; } - 100% { left: 20px; } +.className--Ldhp .subClass--Mw9j { + color: green; } -._c { - animation: _c1; - animation: _c2, _c3, _c4; +#someId--b0rh .subClass--Mw9j { + color: blue; } -@keyframes d { - 0% { left: 10px; } - 100% { left: 20px; } +.-a0-34a___f--DdFW { + color: red; } -.d1 { - animation: d1; - animation: d2, d3, d4; +.m_x_\\\\@--OdAm { + margin-left: auto !important; + margin-right: auto !important; } -.d2 { - animation: _d2; +.B\\\\&W\\\\?--h4SE { + margin-left: auto !important; + margin-right: auto !important; } -", - "", - ], -] -`; -exports[`modules case \`leak-scope\` (\`modules\` value is \`object with mode local)\`: warnings 1`] = `Array []`; +/* matches elements with class=":\\\`(" */ +.\\\\3A \\\\\\\`\\\\(--fKJQ { + color: aqua; +} -exports[`modules case \`leak-scope\` (\`modules\` value is \`true)\`: errors 1`] = `Array []`; +/* matches elements with class="1a2b3c" */ +.\\\\31 a2b3c--YR1u { + color: aliceblue; +} -exports[`modules case \`leak-scope\` (\`modules\` value is \`true)\`: locals 1`] = ` -Object { - "a": "_1OjK2G7L6Ypn9Qqa8lly-H", - "b": "_2cTRWn5QG4xtPeFL2wrKvv", - "c": "_3MHGI9_Tl4A_kJUxXx1q2j", - "c1": "_1PQ8UpcdVbFbAcYs6wdRXj", - "c2": "_3JhTjOsNov-pQXnd3o0JJ", - "c3": "_9skQ6KRXi6qCorV5zNSyV", - "c4": "_1Gh6Pqr28qXCExbnssOGX9", - "d2": "_35GAwk8Rb2LyIN0pSAXjyy", +/* matches the element with id="#fake-id" */ +#\\\\#fake-id--AqiA { + color: antiquewhite; } -`; -exports[`modules case \`leak-scope\` (\`modules\` value is \`true)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._1OjK2G7L6Ypn9Qqa8lly-H { - color: green; - animation: _1OjK2G7L6Ypn9Qqa8lly-H; +/* matches the element with id="-a-b-c-" */ +#-a-b-c---CwXv { + color: azure; } -@keyframes _2cTRWn5QG4xtPeFL2wrKvv { - 0% { left: 10px; } - 100% { left: 20px; } +/* matches the element with id="©" */ +#©--jBj0 { + color: black; } -._2cTRWn5QG4xtPeFL2wrKvv { - animation: _2cTRWn5QG4xtPeFL2wrKvv; +.♥--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; } -@keyframes c { - 0% { left: 10px; } - 100% { left: 20px; } +.foo\\\\\\\\bar--IgSz { + background: hotpink; } -._3MHGI9_Tl4A_kJUxXx1q2j { - animation: _1PQ8UpcdVbFbAcYs6wdRXj; - animation: _3JhTjOsNov-pQXnd3o0JJ, _9skQ6KRXi6qCorV5zNSyV, _1Gh6Pqr28qXCExbnssOGX9; +.foo\\\\/bar\\\\/baz--p6KJ { + background: hotpink; } -@keyframes d { - 0% { left: 10px; } - 100% { left: 20px; } +.foo\\\\\\\\bar\\\\\\\\baz--HZer { + background: hotpink; +} +\`, ""]); +// 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 and correctly replace escaped symbols: result 1`] = ` +[ + [ + "./modules/localIdentName/localIdentName.css", + ".test--KuIS { + background: red; } -.d1 { - animation: d1; - animation: d2, d3, d4; +._test--Lb3f { + background: blue; } -.d2 { - animation: _35GAwk8Rb2LyIN0pSAXjyy; +.className--Ldhp { + background: red; } -", - "", - ], -] -`; -exports[`modules case \`leak-scope\` (\`modules\` value is \`true)\`: warnings 1`] = `Array []`; +#someId--b0rh { + background: green; +} -exports[`modules case \`local\` (\`modules\` value is \`false)\`: errors 1`] = `Array []`; +.className--Ldhp .subClass--Mw9j { + color: green; +} -exports[`modules case \`local\` (\`modules\` value is \`false)\`: locals 1`] = `undefined`; +#someId--b0rh .subClass--Mw9j { + color: blue; +} -exports[`modules case \`local\` (\`modules\` value is \`false)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ".abc :local(.def) { +.-a0-34a___f--DdFW { color: red; } -:local .ghi .jkl { - color: blue; +.m_x_\\@--OdAm { + margin-left: auto !important; + margin-right: auto !important; } -", - "", - ], -] -`; -exports[`modules case \`local\` (\`modules\` value is \`false)\`: warnings 1`] = `Array []`; +.B\\&W\\?--h4SE { + margin-left: auto !important; + margin-right: auto !important; +} -exports[`modules case \`local\` (\`modules\` value is \`global)\`: errors 1`] = `Array []`; +/* matches elements with class=":\`(" */ +.\\3A \\\`\\(--fKJQ { + color: aqua; +} -exports[`modules case \`local\` (\`modules\` value is \`global)\`: locals 1`] = ` -Object { - "def": "_1UnGDcMVVYIU_547CDqQJU", - "ghi": "_1k8c5svlAtK4vFkSsZdl4o", - "jkl": "pRQR9FSSkxNL6roex-uGp", +/* matches elements with class="1a2b3c" */ +.\\31 a2b3c--YR1u { + color: aliceblue; } -`; -exports[`modules case \`local\` (\`modules\` value is \`global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ".abc ._1UnGDcMVVYIU_547CDqQJU { - color: red; +/* matches the element with id="#fake-id" */ +#\\#fake-id--AqiA { + color: antiquewhite; } -._1k8c5svlAtK4vFkSsZdl4o .pRQR9FSSkxNL6roex-uGp { - color: blue; +/* matches the element with id="-a-b-c-" */ +#-a-b-c---CwXv { + color: azure; } -", - "", - ], -] -`; -exports[`modules case \`local\` (\`modules\` value is \`global)\`: warnings 1`] = `Array []`; +/* matches the element with id="©" */ +#©--jBj0 { + color: black; +} -exports[`modules case \`local\` (\`modules\` value is \`local)\`: 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 case \`local\` (\`modules\` value is \`local)\`: locals 1`] = ` -Object { - "abc": "_2EPIUiYqPKxP0HS9Vgqa8e", - "def": "_1UnGDcMVVYIU_547CDqQJU", - "ghi": "_1k8c5svlAtK4vFkSsZdl4o", - "jkl": "pRQR9FSSkxNL6roex-uGp", +.foo\\\\bar--IgSz { + background: hotpink; } -`; -exports[`modules case \`local\` (\`modules\` value is \`local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._2EPIUiYqPKxP0HS9Vgqa8e ._1UnGDcMVVYIU_547CDqQJU { - color: red; +.foo\\/bar\\/baz--p6KJ { + background: hotpink; } -._1k8c5svlAtK4vFkSsZdl4o .pRQR9FSSkxNL6roex-uGp { - color: blue; +.foo\\\\bar\\\\baz--HZer { + background: hotpink; } ", "", @@ -2629,465 +3020,1012 @@ Array [ ] `; -exports[`modules case \`local\` (\`modules\` value is \`local)\`: warnings 1`] = `Array []`; +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 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 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 and has "undefined" context if no context was given: 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; +} -exports[`modules case \`local\` (\`modules\` value is \`object with mode global)\`: errors 1`] = `Array []`; +.foo { + background: blue; +} -exports[`modules case \`local\` (\`modules\` value is \`object with mode global)\`: locals 1`] = ` -Object { - "def": "_def", - "ghi": "_ghi", - "jkl": "_jkl", +.foo { + background: red; } -`; -exports[`modules case \`local\` (\`modules\` value is \`object with mode global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ".abc ._def { - color: red; +#foo { + background: green; } -._ghi ._jkl { +.foo .foo { + color: green; +} + +#foo .foo { color: blue; } -", - "", - ], -] -`; -exports[`modules case \`local\` (\`modules\` value is \`object with mode global)\`: warnings 1`] = `Array []`; +.foo { + color: red; +} -exports[`modules case \`local\` (\`modules\` value is \`object with mode local)\`: errors 1`] = `Array []`; +.foo { + margin-left: auto !important; + margin-right: auto !important; +} -exports[`modules case \`local\` (\`modules\` value is \`object with mode local)\`: locals 1`] = ` -Object { - "abc": "_abc", - "def": "_def", - "ghi": "_ghi", - "jkl": "_jkl", +.foo { + margin-left: auto !important; + margin-right: auto !important; } -`; -exports[`modules case \`local\` (\`modules\` value is \`object with mode local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._abc ._def { - color: red; +/* matches elements with class=":\\\`(" */ +.foo { + color: aqua; } -._ghi ._jkl { - color: blue; +/* matches elements with class="1a2b3c" */ +.foo { + color: aliceblue; } -", - "", - ], -] -`; -exports[`modules case \`local\` (\`modules\` value is \`object with mode local)\`: warnings 1`] = `Array []`; +/* matches the element with id="#fake-id" */ +#foo { + color: antiquewhite; +} + +/* matches the element with id="-a-b-c-" */ +#foo { + color: azure; +} -exports[`modules case \`local\` (\`modules\` value is \`true)\`: errors 1`] = `Array []`; +/* matches the element with id="©" */ +#foo { + color: black; +} -exports[`modules case \`local\` (\`modules\` value is \`true)\`: locals 1`] = ` -Object { - "abc": "_2EPIUiYqPKxP0HS9Vgqa8e", - "def": "_1UnGDcMVVYIU_547CDqQJU", - "ghi": "_1k8c5svlAtK4vFkSsZdl4o", - "jkl": "pRQR9FSSkxNL6roex-uGp", +.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; } -`; -exports[`modules case \`local\` (\`modules\` value is \`true)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._2EPIUiYqPKxP0HS9Vgqa8e ._1UnGDcMVVYIU_547CDqQJU { - color: red; +.foo { + background: hotpink; } -._1k8c5svlAtK4vFkSsZdl4o .pRQR9FSSkxNL6roex-uGp { - color: blue; +.foo { + background: hotpink; } -", - "", - ], -] -`; -exports[`modules case \`local\` (\`modules\` value is \`true)\`: warnings 1`] = `Array []`; +.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; +} -exports[`modules case \`local-2\` (\`modules\` value is \`false)\`: errors 1`] = `Array []`; +.foo { + background: blue; +} -exports[`modules case \`local-2\` (\`modules\` value is \`false)\`: locals 1`] = `undefined`; +.foo { + background: red; +} -exports[`modules case \`local-2\` (\`modules\` value is \`false)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ":local(.className) { background: red; } -:local(#someId) { background: green; } -:local(.className .subClass) { color: green; } -:local(#someId .subClass) { color: blue; } -", - "", - ], -] -`; +#foo { + background: green; +} -exports[`modules case \`local-2\` (\`modules\` value is \`false)\`: warnings 1`] = `Array []`; +.foo .foo { + color: green; +} -exports[`modules case \`local-2\` (\`modules\` value is \`global)\`: errors 1`] = `Array []`; +#foo .foo { + color: blue; +} -exports[`modules case \`local-2\` (\`modules\` value is \`global)\`: locals 1`] = ` -Object { - "className": "PTH0TZDPxpREaV5cxtahd", - "someId": "_1XQl0Np_jYcDGudXKxmL8A", - "subClass": "_2MrzTmc8jtF-E5FfuMPQie", +.foo { + color: red; } -`; -exports[`modules case \`local-2\` (\`modules\` value is \`global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ".PTH0TZDPxpREaV5cxtahd { background: red; } -#_1XQl0Np_jYcDGudXKxmL8A { background: green; } -.PTH0TZDPxpREaV5cxtahd ._2MrzTmc8jtF-E5FfuMPQie { color: green; } -#_1XQl0Np_jYcDGudXKxmL8A ._2MrzTmc8jtF-E5FfuMPQie { color: blue; } -", - "", - ], -] -`; +.foo { + margin-left: auto !important; + margin-right: auto !important; +} -exports[`modules case \`local-2\` (\`modules\` value is \`global)\`: warnings 1`] = `Array []`; +.foo { + margin-left: auto !important; + margin-right: auto !important; +} -exports[`modules case \`local-2\` (\`modules\` value is \`local)\`: errors 1`] = `Array []`; +/* matches elements with class=":\`(" */ +.foo { + color: aqua; +} -exports[`modules case \`local-2\` (\`modules\` value is \`local)\`: locals 1`] = ` -Object { - "className": "PTH0TZDPxpREaV5cxtahd", - "someId": "_1XQl0Np_jYcDGudXKxmL8A", - "subClass": "_2MrzTmc8jtF-E5FfuMPQie", +/* matches elements with class="1a2b3c" */ +.foo { + color: aliceblue; } -`; -exports[`modules case \`local-2\` (\`modules\` value is \`local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ".PTH0TZDPxpREaV5cxtahd { background: red; } -#_1XQl0Np_jYcDGudXKxmL8A { background: green; } -.PTH0TZDPxpREaV5cxtahd ._2MrzTmc8jtF-E5FfuMPQie { color: green; } -#_1XQl0Np_jYcDGudXKxmL8A ._2MrzTmc8jtF-E5FfuMPQie { color: blue; } -", - "", - ], -] -`; +/* matches the element with id="#fake-id" */ +#foo { + color: antiquewhite; +} + +/* matches the element with id="-a-b-c-" */ +#foo { + color: azure; +} -exports[`modules case \`local-2\` (\`modules\` value is \`local)\`: warnings 1`] = `Array []`; +/* matches the element with id="©" */ +#foo { + color: black; +} -exports[`modules case \`local-2\` (\`modules\` value is \`object with mode global)\`: errors 1`] = `Array []`; +.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; +} -exports[`modules case \`local-2\` (\`modules\` value is \`object with mode global)\`: locals 1`] = ` -Object { - "className": "_className", - "someId": "_someId", - "subClass": "_subClass", +.foo { + background: hotpink; } -`; -exports[`modules case \`local-2\` (\`modules\` value is \`object with mode global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._className { background: red; } -#_someId { background: green; } -._className ._subClass { color: green; } -#_someId ._subClass { color: blue; } +.foo { + background: hotpink; +} + +.foo { + background: hotpink; +} ", "", ], ] `; -exports[`modules case \`local-2\` (\`modules\` value is \`object with mode global)\`: warnings 1`] = `Array []`; +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 case \`local-2\` (\`modules\` value is \`object with mode local)\`: errors 1`] = `Array []`; +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; +} -exports[`modules case \`local-2\` (\`modules\` value is \`object with mode local)\`: locals 1`] = ` -Object { - "className": "_className", - "someId": "_someId", - "subClass": "_subClass", +.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 case \`local-2\` (\`modules\` value is \`object with mode local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._className { background: red; } -#_someId { background: green; } -._className ._subClass { color: green; } -#_someId ._subClass { color: blue; } +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; +} ", "", ], -] -`; - -exports[`modules case \`local-2\` (\`modules\` value is \`object with mode local)\`: warnings 1`] = `Array []`; - -exports[`modules case \`local-2\` (\`modules\` value is \`true)\`: errors 1`] = `Array []`; - -exports[`modules case \`local-2\` (\`modules\` value is \`true)\`: locals 1`] = ` -Object { - "className": "PTH0TZDPxpREaV5cxtahd", - "someId": "_1XQl0Np_jYcDGudXKxmL8A", - "subClass": "_2MrzTmc8jtF-E5FfuMPQie", + [ + "../../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; } -`; -exports[`modules case \`local-2\` (\`modules\` value is \`true)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ".PTH0TZDPxpREaV5cxtahd { background: red; } -#_1XQl0Np_jYcDGudXKxmL8A { background: green; } -.PTH0TZDPxpREaV5cxtahd ._2MrzTmc8jtF-E5FfuMPQie { color: green; } -#_1XQl0Np_jYcDGudXKxmL8A ._2MrzTmc8jtF-E5FfuMPQie { color: blue; } +.cfTHoySzymaJQ150LQPh { + color: yellow; +} ", "", ], ] `; -exports[`modules case \`local-2\` (\`modules\` value is \`true)\`: warnings 1`] = `Array []`; +exports[`"modules" option should work and prefer relative for "composes": warnings 1`] = `[]`; -exports[`modules case \`local-and-composes\` (\`modules\` value is \`false)\`: errors 1`] = `Array []`; +exports[`"modules" option should work and prefix leading hyphen when digit is first: errors 1`] = `[]`; -exports[`modules case \`local-and-composes\` (\`modules\` value is \`false)\`: locals 1`] = `undefined`; +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; +} -exports[`modules case \`local-and-composes\` (\`modules\` value is \`false)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ":local(.abc) { - color: red; +._-1_test { + background: blue; } -:local(.def) { - composes: abc; - background: green; + +._-1className { + background: red; } -", - "", - ], -] -`; -exports[`modules case \`local-and-composes\` (\`modules\` value is \`false)\`: warnings 1`] = `Array []`; +#_-1someId { + background: green; +} -exports[`modules case \`local-and-composes\` (\`modules\` value is \`global)\`: errors 1`] = `Array []`; +._-1className ._-1subClass { + color: green; +} -exports[`modules case \`local-and-composes\` (\`modules\` value is \`global)\`: locals 1`] = ` -Object { - "abc": "_1wzWGMZGmVz3uhGAmwbXwR", - "def": "_3zcEXyCxYPLdb_6bVqY6Df _1wzWGMZGmVz3uhGAmwbXwR", +#_-1someId ._-1subClass { + color: blue; } -`; -exports[`modules case \`local-and-composes\` (\`modules\` value is \`global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._1wzWGMZGmVz3uhGAmwbXwR { +._-1-a0-34a___f { color: red; } -._3zcEXyCxYPLdb_6bVqY6Df { - background: green; + +._-1m_x_\\\\@ { + margin-left: auto !important; + margin-right: auto !important; } -", - "", - ], -] -`; -exports[`modules case \`local-and-composes\` (\`modules\` value is \`global)\`: warnings 1`] = `Array []`; +._-1B\\\\&W\\\\? { + margin-left: auto !important; + margin-right: auto !important; +} -exports[`modules case \`local-and-composes\` (\`modules\` value is \`local)\`: errors 1`] = `Array []`; +/* matches elements with class=":\\\`(" */ +._-1\\\\3A \\\\\\\`\\\\( { + color: aqua; +} -exports[`modules case \`local-and-composes\` (\`modules\` value is \`local)\`: locals 1`] = ` -Object { - "abc": "_1wzWGMZGmVz3uhGAmwbXwR", - "def": "_3zcEXyCxYPLdb_6bVqY6Df _1wzWGMZGmVz3uhGAmwbXwR", +/* matches elements with class="1a2b3c" */ +._-1\\\\31 a2b3c { + color: aliceblue; } -`; -exports[`modules case \`local-and-composes\` (\`modules\` value is \`local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._1wzWGMZGmVz3uhGAmwbXwR { - color: red; +/* matches the element with id="#fake-id" */ +#_-1\\\\#fake-id { + color: antiquewhite; } -._3zcEXyCxYPLdb_6bVqY6Df { - background: green; + +/* matches the element with id="-a-b-c-" */ +#_-1-a-b-c- { + color: azure; } -", - "", - ], -] -`; -exports[`modules case \`local-and-composes\` (\`modules\` value is \`local)\`: warnings 1`] = `Array []`; +/* matches the element with id="©" */ +#_-1© { + color: black; +} -exports[`modules case \`local-and-composes\` (\`modules\` value is \`object with mode global)\`: errors 1`] = `Array []`; +._-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; } -exports[`modules case \`local-and-composes\` (\`modules\` value is \`object with mode global)\`: locals 1`] = ` -Object { - "abc": "_abc", - "def": "_def _abc", +._-1foo\\\\/bar { + background: hotpink; } -`; -exports[`modules case \`local-and-composes\` (\`modules\` value is \`object with mode global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._abc { - color: red; -} -._def { - background: green; +._-1foo\\\\\\\\bar { + background: hotpink; } -", - "", - ], -] -`; -exports[`modules case \`local-and-composes\` (\`modules\` value is \`object with mode global)\`: warnings 1`] = `Array []`; +._-1foo\\\\/bar\\\\/baz { + background: hotpink; +} -exports[`modules case \`local-and-composes\` (\`modules\` value is \`object with mode local)\`: errors 1`] = `Array []`; +._-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; +} -exports[`modules case \`local-and-composes\` (\`modules\` value is \`object with mode local)\`: locals 1`] = ` -Object { - "abc": "_abc", - "def": "_def _abc", +._-1_test { + background: blue; } -`; -exports[`modules case \`local-and-composes\` (\`modules\` value is \`object with mode local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._abc { - color: red; +._-1className { + background: red; } -._def { + +#_-1someId { background: green; } -", - "", - ], -] -`; -exports[`modules case \`local-and-composes\` (\`modules\` value is \`object with mode local)\`: warnings 1`] = `Array []`; - -exports[`modules case \`local-and-composes\` (\`modules\` value is \`true)\`: errors 1`] = `Array []`; +._-1className ._-1subClass { + color: green; +} -exports[`modules case \`local-and-composes\` (\`modules\` value is \`true)\`: locals 1`] = ` -Object { - "abc": "_1wzWGMZGmVz3uhGAmwbXwR", - "def": "_3zcEXyCxYPLdb_6bVqY6Df _1wzWGMZGmVz3uhGAmwbXwR", +#_-1someId ._-1subClass { + color: blue; } -`; -exports[`modules case \`local-and-composes\` (\`modules\` value is \`true)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._1wzWGMZGmVz3uhGAmwbXwR { +._-1-a0-34a___f { color: red; } -._3zcEXyCxYPLdb_6bVqY6Df { - background: green; -} -", - "", - ], -] -`; - -exports[`modules case \`local-and-composes\` (\`modules\` value is \`true)\`: warnings 1`] = `Array []`; -exports[`modules case \`local-with-string\` (\`modules\` value is \`false)\`: errors 1`] = `Array []`; +._-1m_x_\\@ { + margin-left: auto !important; + margin-right: auto !important; +} -exports[`modules case \`local-with-string\` (\`modules\` value is \`false)\`: locals 1`] = `undefined`; +._-1B\\&W\\? { + margin-left: auto !important; + margin-right: auto !important; +} -exports[`modules case \`local-with-string\` (\`modules\` value is \`false)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ":local(.c1[data-attr=\\".c2)]'\\"]:not(.c3):not(.c4)) { - background: red; +/* matches elements with class=":\`(" */ +._-1\\3A \\\`\\( { + color: aqua; } -", - "", - ], -] -`; -exports[`modules case \`local-with-string\` (\`modules\` value is \`false)\`: warnings 1`] = `Array []`; +/* matches elements with class="1a2b3c" */ +._-1\\31 a2b3c { + color: aliceblue; +} -exports[`modules case \`local-with-string\` (\`modules\` value is \`global)\`: errors 1`] = `Array []`; +/* matches the element with id="#fake-id" */ +#_-1\\#fake-id { + color: antiquewhite; +} -exports[`modules case \`local-with-string\` (\`modules\` value is \`global)\`: locals 1`] = ` -Object { - "c1": "_1sz8PE1ejGPcGRSnIAWKZt", - "c3": "_2DFDxRic974g-wJ7S9rbP1", - "c4": "xo8O_am1gQUkHa-_J-WSe", +/* matches the element with id="-a-b-c-" */ +#_-1-a-b-c- { + color: azure; } -`; -exports[`modules case \`local-with-string\` (\`modules\` value is \`global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._1sz8PE1ejGPcGRSnIAWKZt[data-attr=\\".c2)]'\\"]:not(._2DFDxRic974g-wJ7S9rbP1):not(.xo8O_am1gQUkHa-_J-WSe) { - background: red; +/* matches the element with id="©" */ +#_-1© { + color: black; } -", - "", - ], -] -`; -exports[`modules case \`local-with-string\` (\`modules\` value is \`global)\`: warnings 1`] = `Array []`; +._-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; +} -exports[`modules case \`local-with-string\` (\`modules\` value is \`local)\`: errors 1`] = `Array []`; +._-1foo\\\\bar { + background: hotpink; +} -exports[`modules case \`local-with-string\` (\`modules\` value is \`local)\`: locals 1`] = ` -Object { - "c1": "_1sz8PE1ejGPcGRSnIAWKZt", - "c3": "_2DFDxRic974g-wJ7S9rbP1", - "c4": "xo8O_am1gQUkHa-_J-WSe", +._-1foo\\/bar\\/baz { + background: hotpink; } -`; -exports[`modules case \`local-with-string\` (\`modules\` value is \`local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._1sz8PE1ejGPcGRSnIAWKZt[data-attr=\\".c2)]'\\"]:not(._2DFDxRic974g-wJ7S9rbP1):not(.xo8O_am1gQUkHa-_J-WSe) { - background: red; +._-1foo\\\\bar\\\\baz { + background: hotpink; } ", "", @@ -3095,225 +4033,343 @@ Array [ ] `; -exports[`modules case \`local-with-string\` (\`modules\` value is \`local)\`: warnings 1`] = `Array []`; +exports[`"modules" option should work and prefix leading hyphen when digit is first: warnings 1`] = `[]`; -exports[`modules case \`local-with-string\` (\`modules\` value is \`object with mode global)\`: errors 1`] = `Array []`; +exports[`"modules" option should work and respect the "context" option: errors 1`] = `[]`; -exports[`modules case \`local-with-string\` (\`modules\` value is \`object with mode global)\`: locals 1`] = ` -Object { - "c1": "_c1", - "c3": "_c3", - "c4": "_c4", +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; } -`; -exports[`modules case \`local-with-string\` (\`modules\` value is \`object with mode global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._c1[data-attr=\\".c2)]'\\"]:not(._c3):not(._c4) { +.V3rkzYqn { background: red; } -", - "", - ], -] -`; -exports[`modules case \`local-with-string\` (\`modules\` value is \`object with mode global)\`: warnings 1`] = `Array []`; +#p0emrDgk { + background: green; +} -exports[`modules case \`local-with-string\` (\`modules\` value is \`object with mode local)\`: errors 1`] = `Array []`; +.V3rkzYqn .v0YwV1mq { + color: green; +} -exports[`modules case \`local-with-string\` (\`modules\` value is \`object with mode local)\`: locals 1`] = ` -Object { - "c1": "_c1", - "c3": "_c3", - "c4": "_c4", +#p0emrDgk .v0YwV1mq { + color: blue; } -`; -exports[`modules case \`local-with-string\` (\`modules\` value is \`object with mode local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._c1[data-attr=\\".c2)]'\\"]:not(._c3):not(._c4) { - background: red; +.iD7O58t6 { + color: red; } -", - "", - ], -] -`; -exports[`modules case \`local-with-string\` (\`modules\` value is \`object with mode local)\`: warnings 1`] = `Array []`; +.RH_w1QEb { + margin-left: auto !important; + margin-right: auto !important; +} -exports[`modules case \`local-with-string\` (\`modules\` value is \`true)\`: errors 1`] = `Array []`; +.Ag92YvL3 { + margin-left: auto !important; + margin-right: auto !important; +} -exports[`modules case \`local-with-string\` (\`modules\` value is \`true)\`: locals 1`] = ` -Object { - "c1": "_1sz8PE1ejGPcGRSnIAWKZt", - "c3": "_2DFDxRic974g-wJ7S9rbP1", - "c4": "xo8O_am1gQUkHa-_J-WSe", +/* matches elements with class=":\\\`(" */ +.ETB9N0Rx { + color: aqua; } -`; -exports[`modules case \`local-with-string\` (\`modules\` value is \`true)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._1sz8PE1ejGPcGRSnIAWKZt[data-attr=\\".c2)]'\\"]:not(._2DFDxRic974g-wJ7S9rbP1):not(.xo8O_am1gQUkHa-_J-WSe) { - background: red; +/* matches elements with class="1a2b3c" */ +.LEy8bpHz { + color: aliceblue; } -", - "", - ], -] -`; -exports[`modules case \`local-with-string\` (\`modules\` value is \`true)\`: warnings 1`] = `Array []`; +/* matches the element with id="#fake-id" */ +#JOQqQG3P { + color: antiquewhite; +} -exports[`modules case \`media\` (\`modules\` value is \`false)\`: errors 1`] = `Array []`; +/* matches the element with id="-a-b-c-" */ +#LD6vZ0vn { + color: azure; +} -exports[`modules case \`media\` (\`modules\` value is \`false)\`: locals 1`] = `undefined`; +/* matches the element with id="©" */ +#bD4iEyBe { + color: black; +} -exports[`modules case \`media\` (\`modules\` value is \`false)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "@value small: (max-width: 599px); +.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; +} -@media small { - .header { - box-shadow: 0 0 4px #1F4F7F; - } +.chesbSdq { + background: hotpink; } -", - "", - ], -] -`; -exports[`modules case \`media\` (\`modules\` value is \`false)\`: warnings 1`] = `Array []`; +.QMeNd406 { + background: hotpink; +} -exports[`modules case \`media\` (\`modules\` value is \`global)\`: errors 1`] = `Array []`; +.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; +} -exports[`modules case \`media\` (\`modules\` value is \`global)\`: locals 1`] = ` -Object { - "small": "(max-width: 599px)", +.TGo4Rmnn { + background: blue; } -`; -exports[`modules case \`media\` (\`modules\` value is \`global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "@media (max-width: 599px) { - .header { - box-shadow: 0 0 4px #1F4F7F; - } +.V3rkzYqn { + background: red; } -", - "", - ], -] -`; -exports[`modules case \`media\` (\`modules\` value is \`global)\`: warnings 1`] = `Array []`; - -exports[`modules case \`media\` (\`modules\` value is \`local)\`: errors 1`] = `Array []`; +#p0emrDgk { + background: green; +} -exports[`modules case \`media\` (\`modules\` value is \`local)\`: locals 1`] = ` -Object { - "header": "_1wyVAJXtjGZLoQNO_yG8b3", - "small": "(max-width: 599px)", +.V3rkzYqn .v0YwV1mq { + color: green; } -`; -exports[`modules case \`media\` (\`modules\` value is \`local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "@media (max-width: 599px) { - ._1wyVAJXtjGZLoQNO_yG8b3 { - box-shadow: 0 0 4px #1F4F7F; - } +#p0emrDgk .v0YwV1mq { + color: blue; } -", - "", - ], -] -`; -exports[`modules case \`media\` (\`modules\` value is \`local)\`: warnings 1`] = `Array []`; +.iD7O58t6 { + color: red; +} -exports[`modules case \`media\` (\`modules\` value is \`object with mode global)\`: errors 1`] = `Array []`; +.RH_w1QEb { + margin-left: auto !important; + margin-right: auto !important; +} -exports[`modules case \`media\` (\`modules\` value is \`object with mode global)\`: locals 1`] = ` -Object { - "small": "(max-width: 599px)", +.Ag92YvL3 { + margin-left: auto !important; + margin-right: auto !important; } -`; -exports[`modules case \`media\` (\`modules\` value is \`object with mode global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "@media (max-width: 599px) { - .header { - box-shadow: 0 0 4px #1F4F7F; - } +/* matches elements with class=":\`(" */ +.ETB9N0Rx { + color: aqua; } -", - "", - ], -] -`; -exports[`modules case \`media\` (\`modules\` value is \`object with mode global)\`: warnings 1`] = `Array []`; +/* matches elements with class="1a2b3c" */ +.LEy8bpHz { + color: aliceblue; +} -exports[`modules case \`media\` (\`modules\` value is \`object with mode local)\`: errors 1`] = `Array []`; +/* matches the element with id="#fake-id" */ +#JOQqQG3P { + color: antiquewhite; +} -exports[`modules case \`media\` (\`modules\` value is \`object with mode local)\`: locals 1`] = ` -Object { - "header": "_header", - "small": "(max-width: 599px)", +/* matches the element with id="-a-b-c-" */ +#LD6vZ0vn { + color: azure; } -`; -exports[`modules case \`media\` (\`modules\` value is \`object with mode local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "@media (max-width: 599px) { - ._header { - box-shadow: 0 0 4px #1F4F7F; - } +/* matches the element with id="©" */ +#bD4iEyBe { + color: black; } -", - "", - ], -] -`; -exports[`modules case \`media\` (\`modules\` value is \`object with mode local)\`: warnings 1`] = `Array []`; +.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; +} -exports[`modules case \`media\` (\`modules\` value is \`true)\`: errors 1`] = `Array []`; +.chesbSdq { + background: hotpink; +} -exports[`modules case \`media\` (\`modules\` value is \`true)\`: locals 1`] = ` -Object { - "header": "_1wyVAJXtjGZLoQNO_yG8b3", - "small": "(max-width: 599px)", +.QMeNd406 { + background: hotpink; } -`; -exports[`modules case \`media\` (\`modules\` value is \`true)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "@media (max-width: 599px) { - ._1wyVAJXtjGZLoQNO_yG8b3 { - box-shadow: 0 0 4px #1F4F7F; - } +.jXaakDKS { + background: hotpink; } ", "", @@ -3321,147 +4377,105 @@ Array [ ] `; -exports[`modules case \`media\` (\`modules\` value is \`true)\`: warnings 1`] = `Array []`; - -exports[`modules case \`media-2\` (\`modules\` value is \`false)\`: errors 1`] = `Array []`; +exports[`"modules" option should work and respect the "context" option: warnings 1`] = `[]`; -exports[`modules case \`media-2\` (\`modules\` value is \`false)\`: locals 1`] = `undefined`; +exports[`"modules" option should work and respect the "exportLocalsConvention" option with the "function" type and returns array names: errors 1`] = `[]`; -exports[`modules case \`media-2\` (\`modules\` value is \`false)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "@value small from './file.css'; -@media small { - .header { - box-shadow: 0 0 4px #1F4F7F; - } +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; } -", - "", - ], -] -`; -exports[`modules case \`media-2\` (\`modules\` value is \`false)\`: warnings 1`] = `Array []`; - -exports[`modules case \`media-2\` (\`modules\` value is \`global)\`: errors 1`] = `Array []`; - -exports[`modules case \`media-2\` (\`modules\` value is \`global)\`: locals 1`] = ` -Object { - "small": "(max-width: 599px)", +.AooVHuvzAIGXWngdfslc { + color: blue; } -`; -exports[`modules case \`media-2\` (\`modules\` value is \`global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - " -", - "", - ], - Array [ - 1, - "@media (max-width: 599px) { - .header { - box-shadow: 0 0 4px #1F4F7F; - } +.snmJCrfw3LVnrlx87XVC { + color: red; } -", - "", - ], -] -`; -exports[`modules case \`media-2\` (\`modules\` value is \`global)\`: warnings 1`] = `Array []`; +a { + color: yellow; +} -exports[`modules case \`media-2\` (\`modules\` value is \`local)\`: errors 1`] = `Array []`; +.vA4oeh0XymefKJVIJyg1 { + color: red; +} -exports[`modules case \`media-2\` (\`modules\` value is \`local)\`: locals 1`] = ` -Object { - "header": "UbDEjEuweJXO7yHMpC8qp", - "small": "(max-width: 599px)", +.mDiC1MIOTWjgsd86woaJ { + color: red; } -`; -exports[`modules case \`media-2\` (\`modules\` value is \`local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - " -", - "", - ], - Array [ - 1, - "@media (max-width: 599px) { - .UbDEjEuweJXO7yHMpC8qp { - box-shadow: 0 0 4px #1F4F7F; - } +.kY3VVFqpzmTiFlxOd9KU { + color: red; } -", - "", - ], -] -`; -exports[`modules case \`media-2\` (\`modules\` value is \`local)\`: warnings 1`] = `Array []`; +.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; +} -exports[`modules case \`media-2\` (\`modules\` value is \`object with mode global)\`: errors 1`] = `Array []`; +.AooVHuvzAIGXWngdfslc { + color: blue; +} -exports[`modules case \`media-2\` (\`modules\` value is \`object with mode global)\`: locals 1`] = ` -Object { - "small": "(max-width: 599px)", +.snmJCrfw3LVnrlx87XVC { + color: red; } -`; -exports[`modules case \`media-2\` (\`modules\` value is \`object with mode global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - " -", - "", - ], - Array [ - 1, - "@media (max-width: 599px) { - .header { - box-shadow: 0 0 4px #1F4F7F; - } +a { + color: yellow; } -", - "", - ], -] -`; -exports[`modules case \`media-2\` (\`modules\` value is \`object with mode global)\`: warnings 1`] = `Array []`; +.vA4oeh0XymefKJVIJyg1 { + color: red; +} -exports[`modules case \`media-2\` (\`modules\` value is \`object with mode local)\`: errors 1`] = `Array []`; +.mDiC1MIOTWjgsd86woaJ { + color: red; +} -exports[`modules case \`media-2\` (\`modules\` value is \`object with mode local)\`: locals 1`] = ` -Object { - "header": "_header", - "small": "(max-width: 599px)", +.kY3VVFqpzmTiFlxOd9KU { + color: red; } -`; -exports[`modules case \`media-2\` (\`modules\` value is \`object with mode local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - " -", - "", - ], - Array [ - 1, - "@media (max-width: 599px) { - ._header { - box-shadow: 0 0 4px #1F4F7F; - } +.eiLdMC_n9TCXQ0oPIJyI { + color: red; } ", "", @@ -3469,302 +4483,600 @@ Array [ ] `; -exports[`modules case \`media-2\` (\`modules\` value is \`object with mode local)\`: warnings 1`] = `Array []`; +exports[`"modules" option should work and respect the "exportLocalsConvention" option with the "function" type and returns array names: warnings 1`] = `[]`; -exports[`modules case \`media-2\` (\`modules\` value is \`true)\`: errors 1`] = `Array []`; +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; +} -exports[`modules case \`media-2\` (\`modules\` value is \`true)\`: locals 1`] = ` -Object { - "header": "UbDEjEuweJXO7yHMpC8qp", - "small": "(max-width: 599px)", +.AooVHuvzAIGXWngdfslc { + color: blue; } -`; -exports[`modules case \`media-2\` (\`modules\` value is \`true)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - " -", - "", - ], - Array [ - 1, - "@media (max-width: 599px) { - .UbDEjEuweJXO7yHMpC8qp { - box-shadow: 0 0 4px #1F4F7F; - } +.snmJCrfw3LVnrlx87XVC { + color: red; } -", - "", - ], -] -`; -exports[`modules case \`media-2\` (\`modules\` value is \`true)\`: warnings 1`] = `Array []`; +a { + color: yellow; +} -exports[`modules case \`mode-switching\` (\`modules\` value is \`false)\`: errors 1`] = `Array []`; +.vA4oeh0XymefKJVIJyg1 { + color: red; +} -exports[`modules case \`mode-switching\` (\`modules\` value is \`false)\`: locals 1`] = `undefined`; +.mDiC1MIOTWjgsd86woaJ { + color: red; +} -exports[`modules case \`mode-switching\` (\`modules\` value is \`false)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ".c1 :local .c2 .c3 :global .c4 :local .c5, .c6 :local .c7 { background: red; } -.c8 { background: red; } -", - "", - ], -] -`; +.kY3VVFqpzmTiFlxOd9KU { + color: red; +} -exports[`modules case \`mode-switching\` (\`modules\` value is \`false)\`: warnings 1`] = `Array []`; +.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; +} -exports[`modules case \`mode-switching\` (\`modules\` value is \`global)\`: errors 1`] = `Array []`; +.AooVHuvzAIGXWngdfslc { + color: blue; +} -exports[`modules case \`mode-switching\` (\`modules\` value is \`global)\`: locals 1`] = ` -Object { - "c2": "LgC5kpXZK3IOCPWWctF7f", - "c3": "_2ZTY7KJ2nkQND4VqlaSz9a", - "c5": "tEu6_PTqhxImp1tyYQTWz", - "c7": "FBEuAfqI8VKhU-w-9RNH", +.snmJCrfw3LVnrlx87XVC { + color: red; } -`; -exports[`modules case \`mode-switching\` (\`modules\` value is \`global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ".c1 .LgC5kpXZK3IOCPWWctF7f ._2ZTY7KJ2nkQND4VqlaSz9a .c4 .tEu6_PTqhxImp1tyYQTWz, .c6 .FBEuAfqI8VKhU-w-9RNH { background: red; } -.c8 { background: red; } -", - "", - ], -] -`; +a { + color: yellow; +} -exports[`modules case \`mode-switching\` (\`modules\` value is \`global)\`: warnings 1`] = `Array []`; +.vA4oeh0XymefKJVIJyg1 { + color: red; +} -exports[`modules case \`mode-switching\` (\`modules\` value is \`local)\`: errors 1`] = `Array []`; +.mDiC1MIOTWjgsd86woaJ { + color: red; +} -exports[`modules case \`mode-switching\` (\`modules\` value is \`local)\`: locals 1`] = ` -Object { - "c1": "_sSeqF3tTS8i-oJLOiW66", - "c2": "LgC5kpXZK3IOCPWWctF7f", - "c3": "_2ZTY7KJ2nkQND4VqlaSz9a", - "c5": "tEu6_PTqhxImp1tyYQTWz", - "c6": "sUDXsigYAAb8sNlOMs_Oc", - "c7": "FBEuAfqI8VKhU-w-9RNH", - "c8": "_1JUWq0LIxk9cx-H1cbqyAD", +.kY3VVFqpzmTiFlxOd9KU { + color: red; } -`; -exports[`modules case \`mode-switching\` (\`modules\` value is \`local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._sSeqF3tTS8i-oJLOiW66 .LgC5kpXZK3IOCPWWctF7f ._2ZTY7KJ2nkQND4VqlaSz9a .c4 .tEu6_PTqhxImp1tyYQTWz, .sUDXsigYAAb8sNlOMs_Oc .FBEuAfqI8VKhU-w-9RNH { background: red; } -._1JUWq0LIxk9cx-H1cbqyAD { background: red; } +.eiLdMC_n9TCXQ0oPIJyI { + color: red; +} ", "", ], ] `; -exports[`modules case \`mode-switching\` (\`modules\` value is \`local)\`: warnings 1`] = `Array []`; +exports[`"modules" option should work and respect the "exportLocalsConvention" option with the "function" type: warnings 1`] = `[]`; -exports[`modules case \`mode-switching\` (\`modules\` value is \`object with mode global)\`: errors 1`] = `Array []`; +exports[`"modules" option should work and respect the "exportOnlyLocals" option: errors 1`] = `[]`; -exports[`modules case \`mode-switching\` (\`modules\` value is \`object with mode global)\`: locals 1`] = ` -Object { - "c2": "_c2", - "c3": "_c3", - "c5": "_c5", - "c7": "_c7", +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 case \`mode-switching\` (\`modules\` value is \`object with mode global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ".c1 ._c2 ._c3 .c4 ._c5, .c6 ._c7 { background: red; } -.c8 { background: red; } -", - "", - ], +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 case \`mode-switching\` (\`modules\` value is \`object with mode global)\`: warnings 1`] = `Array []`; +exports[`"modules" option should work and respect the "getLocalIdent" option: errors 1`] = `[]`; -exports[`modules case \`mode-switching\` (\`modules\` value is \`object with mode local)\`: errors 1`] = `Array []`; +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; +} -exports[`modules case \`mode-switching\` (\`modules\` value is \`object with mode local)\`: locals 1`] = ` -Object { - "c1": "_c1", - "c2": "_c2", - "c3": "_c3", - "c5": "_c5", - "c6": "_c6", - "c7": "_c7", - "c8": "_c8", +.foo { + background: blue; } -`; -exports[`modules case \`mode-switching\` (\`modules\` value is \`object with mode local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._c1 ._c2 ._c3 .c4 ._c5, ._c6 ._c7 { background: red; } -._c8 { background: red; } -", - "", - ], -] -`; +.foo { + background: red; +} -exports[`modules case \`mode-switching\` (\`modules\` value is \`object with mode local)\`: warnings 1`] = `Array []`; +#foo { + background: green; +} -exports[`modules case \`mode-switching\` (\`modules\` value is \`true)\`: errors 1`] = `Array []`; +.foo .foo { + color: green; +} -exports[`modules case \`mode-switching\` (\`modules\` value is \`true)\`: locals 1`] = ` -Object { - "c1": "_sSeqF3tTS8i-oJLOiW66", - "c2": "LgC5kpXZK3IOCPWWctF7f", - "c3": "_2ZTY7KJ2nkQND4VqlaSz9a", - "c5": "tEu6_PTqhxImp1tyYQTWz", - "c6": "sUDXsigYAAb8sNlOMs_Oc", - "c7": "FBEuAfqI8VKhU-w-9RNH", - "c8": "_1JUWq0LIxk9cx-H1cbqyAD", +#foo .foo { + color: blue; } -`; -exports[`modules case \`mode-switching\` (\`modules\` value is \`true)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._sSeqF3tTS8i-oJLOiW66 .LgC5kpXZK3IOCPWWctF7f ._2ZTY7KJ2nkQND4VqlaSz9a .c4 .tEu6_PTqhxImp1tyYQTWz, .sUDXsigYAAb8sNlOMs_Oc .FBEuAfqI8VKhU-w-9RNH { background: red; } -._1JUWq0LIxk9cx-H1cbqyAD { background: red; } -", - "", - ], -] -`; +.foo { + color: red; +} -exports[`modules case \`mode-switching\` (\`modules\` value is \`true)\`: warnings 1`] = `Array []`; +.foo { + margin-left: auto !important; + margin-right: auto !important; +} -exports[`modules case \`simple\` (\`modules\` value is \`false)\`: errors 1`] = `Array []`; +.foo { + margin-left: auto !important; + margin-right: auto !important; +} -exports[`modules case \`simple\` (\`modules\` value is \`false)\`: locals 1`] = `undefined`; +/* matches elements with class=":\\\`(" */ +.foo { + color: aqua; +} -exports[`modules case \`simple\` (\`modules\` value is \`false)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ".a .b, .c .d, #id { - color: green; - font-size: 1.5pt; +/* matches elements with class="1a2b3c" */ +.foo { + color: aliceblue; } -a[href=\\"#b.c\\"].x.y { - color: green; - font-size: 1.5pt; + +/* matches the element with id="#fake-id" */ +#foo { + color: antiquewhite; } -@keyframes z { - 2.5% {color: green;} + +/* matches the element with id="-a-b-c-" */ +#foo { + color: azure; } -", - "", - ], -] -`; -exports[`modules case \`simple\` (\`modules\` value is \`false)\`: warnings 1`] = `Array []`; +/* matches the element with id="©" */ +#foo { + color: black; +} -exports[`modules case \`simple\` (\`modules\` value is \`global)\`: errors 1`] = `Array []`; +.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; +} -exports[`modules case \`simple\` (\`modules\` value is \`global)\`: locals 1`] = `undefined`; +.foo { + background: hotpink; +} -exports[`modules case \`simple\` (\`modules\` value is \`global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ".a .b, .c .d, #id { - color: green; - font-size: 1.5pt; +.foo { + background: hotpink; } -a[href=\\"#b.c\\"].x.y { - color: green; - font-size: 1.5pt; + +.foo { + background: hotpink; } -@keyframes z { - 2.5% {color: green;} +\`, ""]); +// 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; } -", - "", - ], -] -`; -exports[`modules case \`simple\` (\`modules\` value is \`global)\`: warnings 1`] = `Array []`; +.foo { + background: blue; +} -exports[`modules case \`simple\` (\`modules\` value is \`local)\`: errors 1`] = `Array []`; +.foo { + background: red; +} -exports[`modules case \`simple\` (\`modules\` value is \`local)\`: locals 1`] = ` -Object { - "a": "_3Usq4DWpHHUfARGj76o2W1", - "b": "_2sE42PHfIbHjbGigpdA5M2", - "c": "_3JN7IxYrHx5fpD-QuNH8Vg", - "d": "_169FAY78xdP6MpwfqxWVlS", - "id": "_2w6DrNK6drHoI8na0s2YJu", - "x": "_3jqDKJEcQhMnSj5LXFzCMT", - "y": "_2CdavzdbxA-_uaXjgT2eG", - "z": "eawDxhAAUQ-HvrUhhwSML", +#foo { + background: green; } -`; -exports[`modules case \`simple\` (\`modules\` value is \`local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._3Usq4DWpHHUfARGj76o2W1 ._2sE42PHfIbHjbGigpdA5M2, ._3JN7IxYrHx5fpD-QuNH8Vg ._169FAY78xdP6MpwfqxWVlS, #_2w6DrNK6drHoI8na0s2YJu { - color: green; - font-size: 1.5pt; +.foo .foo { + color: green; } -a[href=\\"#b.c\\"]._3jqDKJEcQhMnSj5LXFzCMT._2CdavzdbxA-_uaXjgT2eG { - color: green; - font-size: 1.5pt; + +#foo .foo { + color: blue; } -@keyframes eawDxhAAUQ-HvrUhhwSML { - 2.5% {color: green;} + +.foo { + color: red; +} + +.foo { + margin-left: auto !important; + margin-right: auto !important; } -", - "", - ], -] -`; -exports[`modules case \`simple\` (\`modules\` value is \`local)\`: warnings 1`] = `Array []`; +.foo { + margin-left: auto !important; + margin-right: auto !important; +} -exports[`modules case \`simple\` (\`modules\` value is \`object with mode global)\`: errors 1`] = `Array []`; +/* matches elements with class=":\`(" */ +.foo { + color: aqua; +} -exports[`modules case \`simple\` (\`modules\` value is \`object with mode global)\`: locals 1`] = `undefined`; +/* matches elements with class="1a2b3c" */ +.foo { + color: aliceblue; +} -exports[`modules case \`simple\` (\`modules\` value is \`object with mode global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ".a .b, .c .d, #id { - color: green; - font-size: 1.5pt; +/* matches the element with id="#fake-id" */ +#foo { + color: antiquewhite; } -a[href=\\"#b.c\\"].x.y { - color: green; - font-size: 1.5pt; + +/* matches the element with id="-a-b-c-" */ +#foo { + color: azure; } -@keyframes z { - 2.5% {color: green;} + +/* 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; } ", "", @@ -3772,267 +5084,343 @@ a[href=\\"#b.c\\"].x.y { ] `; -exports[`modules case \`simple\` (\`modules\` value is \`object with mode global)\`: warnings 1`] = `Array []`; +exports[`"modules" option should work and respect the "getLocalIdent" option: warnings 1`] = `[]`; -exports[`modules case \`simple\` (\`modules\` value is \`object with mode local)\`: errors 1`] = `Array []`; +exports[`"modules" option should work and respect the "hashSalt" option: errors 1`] = `[]`; -exports[`modules case \`simple\` (\`modules\` value is \`object with mode local)\`: locals 1`] = ` -Object { - "a": "_a", - "b": "_b", - "c": "_c", - "d": "_d", - "id": "_id", - "x": "_x", - "y": "_y", - "z": "_z", +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; } -`; -exports[`modules case \`simple\` (\`modules\` value is \`object with mode local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._a ._b, ._c ._d, #_id { - color: green; - font-size: 1.5pt; +._test--df4a97df5d4981c18fd3 { + background: blue; } -a[href=\\"#b.c\\"]._x._y { - color: green; - font-size: 1.5pt; + +.className--f51a39697d46ec360e5d { + background: red; } -@keyframes _z { - 2.5% {color: green;} + +#someId--a66e8413a3c261c3b5db { + background: green; } -", - "", - ], -] -`; -exports[`modules case \`simple\` (\`modules\` value is \`object with mode local)\`: warnings 1`] = `Array []`; +.className--f51a39697d46ec360e5d .subClass--a2c5762a1671ee02d495 { + color: green; +} -exports[`modules case \`simple\` (\`modules\` value is \`true)\`: errors 1`] = `Array []`; +#someId--a66e8413a3c261c3b5db .subClass--a2c5762a1671ee02d495 { + color: blue; +} -exports[`modules case \`simple\` (\`modules\` value is \`true)\`: locals 1`] = ` -Object { - "a": "_3Usq4DWpHHUfARGj76o2W1", - "b": "_2sE42PHfIbHjbGigpdA5M2", - "c": "_3JN7IxYrHx5fpD-QuNH8Vg", - "d": "_169FAY78xdP6MpwfqxWVlS", - "id": "_2w6DrNK6drHoI8na0s2YJu", - "x": "_3jqDKJEcQhMnSj5LXFzCMT", - "y": "_2CdavzdbxA-_uaXjgT2eG", - "z": "eawDxhAAUQ-HvrUhhwSML", +.-a0-34a___f--bcceae76b21ea32837d1 { + color: red; } -`; -exports[`modules case \`simple\` (\`modules\` value is \`true)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._3Usq4DWpHHUfARGj76o2W1 ._2sE42PHfIbHjbGigpdA5M2, ._3JN7IxYrHx5fpD-QuNH8Vg ._169FAY78xdP6MpwfqxWVlS, #_2w6DrNK6drHoI8na0s2YJu { - color: green; - font-size: 1.5pt; +.m_x_\\\\@--bf8f3ed982973d67547f { + margin-left: auto !important; + margin-right: auto !important; } -a[href=\\"#b.c\\"]._3jqDKJEcQhMnSj5LXFzCMT._2CdavzdbxA-_uaXjgT2eG { - color: green; - font-size: 1.5pt; + +.B\\\\&W\\\\?--fdee73d5165bc2acf73d { + margin-left: auto !important; + margin-right: auto !important; } -@keyframes eawDxhAAUQ-HvrUhhwSML { - 2.5% {color: green;} + +/* matches elements with class=":\\\`(" */ +.\\\\3A \\\\\\\`\\\\(--daecad79b824a8ae7e46 { + color: aqua; } -", - "", - ], -] -`; -exports[`modules case \`simple\` (\`modules\` value is \`true)\`: warnings 1`] = `Array []`; +/* matches elements with class="1a2b3c" */ +.\\\\31 a2b3c--d785e50a661529be89f2 { + color: aliceblue; +} -exports[`modules case \`urls\` (\`modules\` value is \`false)\`: errors 1`] = `Array []`; +/* matches the element with id="#fake-id" */ +#\\\\#fake-id--a2d7428449895097291a { + color: antiquewhite; +} -exports[`modules case \`urls\` (\`modules\` value is \`false)\`: locals 1`] = `undefined`; +/* matches the element with id="-a-b-c-" */ +#-a-b-c---ccf3274dd45a8534913a { + color: azure; +} -exports[`modules case \`urls\` (\`modules\` value is \`false)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ".a { - background: url(/webpack/public/path/img.png); - background: url(/webpack/public/path/img.png); - background: url(\\"/webpack/public/path/img img.png\\"); - background: url(\\"/webpack/public/path/img img.png\\"); - background: url(/webpack/public/path/img.png); - background: url(/webpack/public/path/img.png#?iefix); - background: url(\\"#hash\\"); - background: url(\\"#\\"); - background: url(data:image/png;base64,AAA); - background: url(http://example.com/image.jpg); - background: url(//example.com/image.png); - background: green url(data:image/png;base64,AAA) url(http://example.com/image.jpg) url(//example.com/image.png) url(/webpack/public/path/img.png) url(\\"/webpack/public/path/img img.png\\") xyz; +/* matches the element with id="©" */ +#©--adb36177ba3316dd9afb { + color: black; } -", - "", - ], -] -`; -exports[`modules case \`urls\` (\`modules\` value is \`false)\`: warnings 1`] = `Array []`; +.♥--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; +} -exports[`modules case \`urls\` (\`modules\` value is \`global)\`: errors 1`] = `Array []`; +.foo\\\\\\\\bar--e8ba4f9a74f8b7fa8361 { + background: hotpink; +} -exports[`modules case \`urls\` (\`modules\` value is \`global)\`: locals 1`] = `undefined`; +.foo\\\\/bar\\\\/baz--b5eb40201778b94976f0 { + background: hotpink; +} -exports[`modules case \`urls\` (\`modules\` value is \`global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ".a { - background: url(/webpack/public/path/img.png); - background: url(/webpack/public/path/img.png); - background: url(\\"/webpack/public/path/img img.png\\"); - background: url(\\"/webpack/public/path/img img.png\\"); - background: url(/webpack/public/path/img.png); - background: url(/webpack/public/path/img.png#?iefix); - background: url(\\"#hash\\"); - background: url(\\"#\\"); - background: url(data:image/png;base64,AAA); - background: url(http://example.com/image.jpg); - background: url(//example.com/image.png); - background: green url(data:image/png;base64,AAA) url(http://example.com/image.jpg) url(//example.com/image.png) url(/webpack/public/path/img.png) url(\\"/webpack/public/path/img img.png\\") xyz; +.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; } -", - "", - ], -] -`; -exports[`modules case \`urls\` (\`modules\` value is \`global)\`: warnings 1`] = `Array []`; +.className--f51a39697d46ec360e5d { + background: red; +} -exports[`modules case \`urls\` (\`modules\` value is \`local)\`: errors 1`] = `Array []`; +#someId--a66e8413a3c261c3b5db { + background: green; +} -exports[`modules case \`urls\` (\`modules\` value is \`local)\`: locals 1`] = ` -Object { - "a": "_1goi1QVFtUMjX82JoFfLLJ", +.className--f51a39697d46ec360e5d .subClass--a2c5762a1671ee02d495 { + color: green; } -`; -exports[`modules case \`urls\` (\`modules\` value is \`local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._1goi1QVFtUMjX82JoFfLLJ { - background: url(/webpack/public/path/img.png); - background: url(/webpack/public/path/img.png); - background: url(\\"/webpack/public/path/img img.png\\"); - background: url(\\"/webpack/public/path/img img.png\\"); - background: url(/webpack/public/path/img.png); - background: url(/webpack/public/path/img.png#?iefix); - background: url(\\"#hash\\"); - background: url(\\"#\\"); - background: url(data:image/png;base64,AAA); - background: url(http://example.com/image.jpg); - background: url(//example.com/image.png); - background: green url(data:image/png;base64,AAA) url(http://example.com/image.jpg) url(//example.com/image.png) url(/webpack/public/path/img.png) url(\\"/webpack/public/path/img img.png\\") xyz; +#someId--a66e8413a3c261c3b5db .subClass--a2c5762a1671ee02d495 { + color: blue; } -", - "", - ], -] -`; -exports[`modules case \`urls\` (\`modules\` value is \`local)\`: warnings 1`] = `Array []`; +.-a0-34a___f--bcceae76b21ea32837d1 { + color: red; +} -exports[`modules case \`urls\` (\`modules\` value is \`object with mode global)\`: errors 1`] = `Array []`; +.m_x_\\@--bf8f3ed982973d67547f { + margin-left: auto !important; + margin-right: auto !important; +} -exports[`modules case \`urls\` (\`modules\` value is \`object with mode global)\`: locals 1`] = `undefined`; +.B\\&W\\?--fdee73d5165bc2acf73d { + margin-left: auto !important; + margin-right: auto !important; +} -exports[`modules case \`urls\` (\`modules\` value is \`object with mode global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ".a { - background: url(/webpack/public/path/img.png); - background: url(/webpack/public/path/img.png); - background: url(\\"/webpack/public/path/img img.png\\"); - background: url(\\"/webpack/public/path/img img.png\\"); - background: url(/webpack/public/path/img.png); - background: url(/webpack/public/path/img.png#?iefix); - background: url(\\"#hash\\"); - background: url(\\"#\\"); - background: url(data:image/png;base64,AAA); - background: url(http://example.com/image.jpg); - background: url(//example.com/image.png); - background: green url(data:image/png;base64,AAA) url(http://example.com/image.jpg) url(//example.com/image.png) url(/webpack/public/path/img.png) url(\\"/webpack/public/path/img img.png\\") xyz; +/* matches elements with class=":\`(" */ +.\\3A \\\`\\(--daecad79b824a8ae7e46 { + color: aqua; } -", - "", - ], -] -`; -exports[`modules case \`urls\` (\`modules\` value is \`object with mode global)\`: warnings 1`] = `Array []`; +/* matches elements with class="1a2b3c" */ +.\\31 a2b3c--d785e50a661529be89f2 { + color: aliceblue; +} -exports[`modules case \`urls\` (\`modules\` value is \`object with mode local)\`: errors 1`] = `Array []`; +/* matches the element with id="#fake-id" */ +#\\#fake-id--a2d7428449895097291a { + color: antiquewhite; +} -exports[`modules case \`urls\` (\`modules\` value is \`object with mode local)\`: locals 1`] = ` -Object { - "a": "_a", +/* matches the element with id="-a-b-c-" */ +#-a-b-c---ccf3274dd45a8534913a { + color: azure; } -`; -exports[`modules case \`urls\` (\`modules\` value is \`object with mode local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._a { - background: url(/webpack/public/path/img.png); - background: url(/webpack/public/path/img.png); - background: url(\\"/webpack/public/path/img img.png\\"); - background: url(\\"/webpack/public/path/img img.png\\"); - background: url(/webpack/public/path/img.png); - background: url(/webpack/public/path/img.png#?iefix); - background: url(\\"#hash\\"); - background: url(\\"#\\"); - background: url(data:image/png;base64,AAA); - background: url(http://example.com/image.jpg); - background: url(//example.com/image.png); - background: green url(data:image/png;base64,AAA) url(http://example.com/image.jpg) url(//example.com/image.png) url(/webpack/public/path/img.png) url(\\"/webpack/public/path/img img.png\\") xyz; +/* matches the element with id="©" */ +#©--adb36177ba3316dd9afb { + color: black; } -", - "", - ], -] -`; -exports[`modules case \`urls\` (\`modules\` value is \`object with mode local)\`: warnings 1`] = `Array []`; +.♥--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; +} -exports[`modules case \`urls\` (\`modules\` value is \`true)\`: errors 1`] = `Array []`; +.foo\\\\bar--e8ba4f9a74f8b7fa8361 { + background: hotpink; +} -exports[`modules case \`urls\` (\`modules\` value is \`true)\`: locals 1`] = ` -Object { - "a": "_1goi1QVFtUMjX82JoFfLLJ", +.foo\\/bar\\/baz--b5eb40201778b94976f0 { + background: hotpink; } -`; -exports[`modules case \`urls\` (\`modules\` value is \`true)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._1goi1QVFtUMjX82JoFfLLJ { - background: url(/webpack/public/path/img.png); - background: url(/webpack/public/path/img.png); - background: url(\\"/webpack/public/path/img img.png\\"); - background: url(\\"/webpack/public/path/img img.png\\"); - background: url(/webpack/public/path/img.png); - background: url(/webpack/public/path/img.png#?iefix); - background: url(\\"#hash\\"); - background: url(\\"#\\"); - background: url(data:image/png;base64,AAA); - background: url(http://example.com/image.jpg); - background: url(//example.com/image.png); - background: green url(data:image/png;base64,AAA) url(http://example.com/image.jpg) url(//example.com/image.png) url(/webpack/public/path/img.png) url(\\"/webpack/public/path/img img.png\\") xyz; +.foo\\\\bar\\\\baz--b178648b8128f2bbc548 { + background: hotpink; } ", "", @@ -4040,1296 +5428,1818 @@ Array [ ] `; -exports[`modules case \`urls\` (\`modules\` value is \`true)\`: warnings 1`] = `Array []`; - -exports[`modules case \`values\` (\`modules\` value is \`false)\`: errors 1`] = `Array []`; +exports[`"modules" option should work and respect the "hashSalt" option: warnings 1`] = `[]`; -exports[`modules case \`values\` (\`modules\` value is \`false)\`: locals 1`] = `undefined`; +exports[`"modules" option should work and respect the "hashStrategy" = "minimal-subset" and [local]: errors 1`] = `[]`; -exports[`modules case \`values\` (\`modules\` value is \`false)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "@value aaa: red; -@value bbb: green; -@value ccc: aaa; +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; +} -.a { - background: aaa; - background: bbb; - background: ccc; +._test__iHMJbI42 { + background: blue; } -", - "", - ], -] -`; - -exports[`modules case \`values\` (\`modules\` value is \`false)\`: warnings 1`] = `Array []`; - -exports[`modules case \`values\` (\`modules\` value is \`global)\`: errors 1`] = `Array []`; -exports[`modules case \`values\` (\`modules\` value is \`global)\`: locals 1`] = ` -Object { - "aaa": "red", - "bbb": "green", - "ccc": "red", +.className__iHMJbI42 { + background: red; } -`; -exports[`modules case \`values\` (\`modules\` value is \`global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ".a { - background: red; - background: green; - background: red; +#someId__iHMJbI42 { + background: green; } -", - "", - ], -] -`; -exports[`modules case \`values\` (\`modules\` value is \`global)\`: warnings 1`] = `Array []`; - -exports[`modules case \`values\` (\`modules\` value is \`local)\`: errors 1`] = `Array []`; +.className__iHMJbI42 .subClass__iHMJbI42 { + color: green; +} -exports[`modules case \`values\` (\`modules\` value is \`local)\`: locals 1`] = ` -Object { - "a": "_18yRHBx_s3xK1t_zOjEfo", - "aaa": "red", - "bbb": "green", - "ccc": "red", +#someId__iHMJbI42 .subClass__iHMJbI42 { + color: blue; } -`; -exports[`modules case \`values\` (\`modules\` value is \`local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._18yRHBx_s3xK1t_zOjEfo { - background: red; - background: green; - background: red; +.-a0-34a___f__iHMJbI42 { + color: red; } -", - "", - ], -] -`; -exports[`modules case \`values\` (\`modules\` value is \`local)\`: warnings 1`] = `Array []`; +.m_x_\\\\@__iHMJbI42 { + margin-left: auto !important; + margin-right: auto !important; +} -exports[`modules case \`values\` (\`modules\` value is \`object with mode global)\`: errors 1`] = `Array []`; +.B\\\\&W\\\\?__iHMJbI42 { + margin-left: auto !important; + margin-right: auto !important; +} -exports[`modules case \`values\` (\`modules\` value is \`object with mode global)\`: locals 1`] = ` -Object { - "aaa": "red", - "bbb": "green", - "ccc": "red", +/* matches elements with class=":\\\`(" */ +.\\\\3A \\\\\\\`\\\\(__iHMJbI42 { + color: aqua; } -`; -exports[`modules case \`values\` (\`modules\` value is \`object with mode global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ".a { - background: red; - background: green; - background: red; +/* matches elements with class="1a2b3c" */ +.\\\\31 a2b3c__iHMJbI42 { + color: aliceblue; } -", - "", - ], -] -`; -exports[`modules case \`values\` (\`modules\` value is \`object with mode global)\`: warnings 1`] = `Array []`; +/* matches the element with id="#fake-id" */ +#\\\\#fake-id__iHMJbI42 { + color: antiquewhite; +} -exports[`modules case \`values\` (\`modules\` value is \`object with mode local)\`: errors 1`] = `Array []`; +/* matches the element with id="-a-b-c-" */ +#-a-b-c-__iHMJbI42 { + color: azure; +} -exports[`modules case \`values\` (\`modules\` value is \`object with mode local)\`: locals 1`] = ` -Object { - "a": "_a", - "aaa": "red", - "bbb": "green", - "ccc": "red", +/* matches the element with id="©" */ +#©__iHMJbI42 { + color: black; } -`; -exports[`modules case \`values\` (\`modules\` value is \`object with mode local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._a { - background: red; - background: green; - background: red; +.♥__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; } -", - "", - ], -] -`; -exports[`modules case \`values\` (\`modules\` value is \`object with mode local)\`: warnings 1`] = `Array []`; +.foo\\\\\\\\bar__iHMJbI42 { + background: hotpink; +} -exports[`modules case \`values\` (\`modules\` value is \`true)\`: errors 1`] = `Array []`; +.foo\\\\/bar\\\\/baz__iHMJbI42 { + background: hotpink; +} -exports[`modules case \`values\` (\`modules\` value is \`true)\`: locals 1`] = ` -Object { - "a": "_18yRHBx_s3xK1t_zOjEfo", - "aaa": "red", - "bbb": "green", - "ccc": "red", +.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; } -`; -exports[`modules case \`values\` (\`modules\` value is \`true)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._18yRHBx_s3xK1t_zOjEfo { - background: red; - background: green; - background: red; +._test__iHMJbI42 { + background: blue; } -", - "", - ], -] -`; -exports[`modules case \`values\` (\`modules\` value is \`true)\`: warnings 1`] = `Array []`; +.className__iHMJbI42 { + background: red; +} -exports[`modules case \`values-1\` (\`modules\` value is \`false)\`: errors 1`] = `Array []`; +#someId__iHMJbI42 { + background: green; +} -exports[`modules case \`values-1\` (\`modules\` value is \`false)\`: locals 1`] = `undefined`; +.className__iHMJbI42 .subClass__iHMJbI42 { + color: green; +} -exports[`modules case \`values-1\` (\`modules\` value is \`false)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "@value def: red; -@value ghi: 1px solid black; -", - "", - ], -] -`; +#someId__iHMJbI42 .subClass__iHMJbI42 { + color: blue; +} -exports[`modules case \`values-1\` (\`modules\` value is \`false)\`: warnings 1`] = `Array []`; +.-a0-34a___f__iHMJbI42 { + color: red; +} -exports[`modules case \`values-1\` (\`modules\` value is \`global)\`: errors 1`] = `Array []`; +.m_x_\\@__iHMJbI42 { + margin-left: auto !important; + margin-right: auto !important; +} -exports[`modules case \`values-1\` (\`modules\` value is \`global)\`: locals 1`] = ` -Object { - "def": "red", - "ghi": "1px solid black", +.B\\&W\\?__iHMJbI42 { + margin-left: auto !important; + margin-right: auto !important; } -`; -exports[`modules case \`values-1\` (\`modules\` value is \`global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - " -", - "", - ], -] -`; +/* matches elements with class=":\`(" */ +.\\3A \\\`\\(__iHMJbI42 { + color: aqua; +} -exports[`modules case \`values-1\` (\`modules\` value is \`global)\`: warnings 1`] = `Array []`; +/* matches elements with class="1a2b3c" */ +.\\31 a2b3c__iHMJbI42 { + color: aliceblue; +} -exports[`modules case \`values-1\` (\`modules\` value is \`local)\`: errors 1`] = `Array []`; +/* matches the element with id="#fake-id" */ +#\\#fake-id__iHMJbI42 { + color: antiquewhite; +} -exports[`modules case \`values-1\` (\`modules\` value is \`local)\`: locals 1`] = ` -Object { - "def": "red", - "ghi": "1px solid black", +/* matches the element with id="-a-b-c-" */ +#-a-b-c-__iHMJbI42 { + color: azure; } -`; -exports[`modules case \`values-1\` (\`modules\` value is \`local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - " -", - "", - ], -] -`; +/* matches the element with id="©" */ +#©__iHMJbI42 { + color: black; +} -exports[`modules case \`values-1\` (\`modules\` value is \`local)\`: warnings 1`] = `Array []`; +.♥__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; +} -exports[`modules case \`values-1\` (\`modules\` value is \`object with mode global)\`: errors 1`] = `Array []`; +.foo\\\\bar__iHMJbI42 { + background: hotpink; +} -exports[`modules case \`values-1\` (\`modules\` value is \`object with mode global)\`: locals 1`] = ` -Object { - "def": "red", - "ghi": "1px solid black", +.foo\\/bar\\/baz__iHMJbI42 { + background: hotpink; } -`; -exports[`modules case \`values-1\` (\`modules\` value is \`object with mode global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - " +.foo\\\\bar\\\\baz__iHMJbI42 { + background: hotpink; +} ", "", ], ] `; -exports[`modules case \`values-1\` (\`modules\` value is \`object with mode global)\`: warnings 1`] = `Array []`; +exports[`"modules" option should work and respect the "hashStrategy" = "minimal-subset" and [local]: warnings 1`] = `[]`; -exports[`modules case \`values-1\` (\`modules\` value is \`object with mode local)\`: errors 1`] = `Array []`; +exports[`"modules" option should work and respect the "hashStrategy" = "minimal-subset" and no [local]: errors 1`] = `[]`; -exports[`modules case \`values-1\` (\`modules\` value is \`object with mode local)\`: locals 1`] = ` -Object { - "def": "red", - "ghi": "1px solid black", +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; } -`; -exports[`modules case \`values-1\` (\`modules\` value is \`object with mode local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - " -", - "", - ], -] -`; +.Lb3fhDAu { + background: blue; +} -exports[`modules case \`values-1\` (\`modules\` value is \`object with mode local)\`: warnings 1`] = `Array []`; +.LdhpkZRW { + background: red; +} -exports[`modules case \`values-1\` (\`modules\` value is \`true)\`: errors 1`] = `Array []`; +#b0rhwJSt { + background: green; +} -exports[`modules case \`values-1\` (\`modules\` value is \`true)\`: locals 1`] = ` -Object { - "def": "red", - "ghi": "1px solid black", +.LdhpkZRW .Mw9j4nId { + color: green; } -`; -exports[`modules case \`values-1\` (\`modules\` value is \`true)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - " -", - "", - ], -] -`; +#b0rhwJSt .Mw9j4nId { + color: blue; +} -exports[`modules case \`values-1\` (\`modules\` value is \`true)\`: warnings 1`] = `Array []`; +.DdFWMPol { + color: red; +} -exports[`modules case \`values-2\` (\`modules\` value is \`false)\`: errors 1`] = `Array []`; +.OdAmghrm { + margin-left: auto !important; + margin-right: auto !important; +} -exports[`modules case \`values-2\` (\`modules\` value is \`false)\`: locals 1`] = `undefined`; +.h4SEF34C { + margin-left: auto !important; + margin-right: auto !important; +} -exports[`modules case \`values-2\` (\`modules\` value is \`false)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "@value def: red; -.ghi { color: def; } -", - "", - ], -] -`; +/* matches elements with class=":\\\`(" */ +.fKJQkLar { + color: aqua; +} -exports[`modules case \`values-2\` (\`modules\` value is \`false)\`: warnings 1`] = `Array []`; +/* matches elements with class="1a2b3c" */ +.YR1u_buY { + color: aliceblue; +} -exports[`modules case \`values-2\` (\`modules\` value is \`global)\`: errors 1`] = `Array []`; +/* matches the element with id="#fake-id" */ +#AqiAGSfn { + color: antiquewhite; +} -exports[`modules case \`values-2\` (\`modules\` value is \`global)\`: locals 1`] = ` -Object { - "def": "red", +/* matches the element with id="-a-b-c-" */ +#CwXv27VM { + color: azure; } -`; -exports[`modules case \`values-2\` (\`modules\` value is \`global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ".ghi { color: red; } -", - "", - ], -] -`; +/* matches the element with id="©" */ +#jBj0sZiW { + color: black; +} -exports[`modules case \`values-2\` (\`modules\` value is \`global)\`: warnings 1`] = `Array []`; +.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; +} -exports[`modules case \`values-2\` (\`modules\` value is \`local)\`: errors 1`] = `Array []`; +.IgSzmmsC { + background: hotpink; +} -exports[`modules case \`values-2\` (\`modules\` value is \`local)\`: locals 1`] = ` -Object { - "def": "red", - "ghi": "_2aKAT4pAinaabqEIFgdhTC", +.p6KJMhNW { + background: hotpink; } -`; -exports[`modules case \`values-2\` (\`modules\` value is \`local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._2aKAT4pAinaabqEIFgdhTC { color: red; } -", - "", - ], -] -`; +.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; +} -exports[`modules case \`values-2\` (\`modules\` value is \`local)\`: warnings 1`] = `Array []`; +.Lb3fhDAu { + background: blue; +} -exports[`modules case \`values-2\` (\`modules\` value is \`object with mode global)\`: errors 1`] = `Array []`; +.LdhpkZRW { + background: red; +} -exports[`modules case \`values-2\` (\`modules\` value is \`object with mode global)\`: locals 1`] = ` -Object { - "def": "red", +#b0rhwJSt { + background: green; } -`; -exports[`modules case \`values-2\` (\`modules\` value is \`object with mode global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ".ghi { color: red; } -", - "", - ], -] -`; +.LdhpkZRW .Mw9j4nId { + color: green; +} -exports[`modules case \`values-2\` (\`modules\` value is \`object with mode global)\`: warnings 1`] = `Array []`; +#b0rhwJSt .Mw9j4nId { + color: blue; +} -exports[`modules case \`values-2\` (\`modules\` value is \`object with mode local)\`: errors 1`] = `Array []`; +.DdFWMPol { + color: red; +} -exports[`modules case \`values-2\` (\`modules\` value is \`object with mode local)\`: locals 1`] = ` -Object { - "def": "red", - "ghi": "_ghi", +.OdAmghrm { + margin-left: auto !important; + margin-right: auto !important; } -`; -exports[`modules case \`values-2\` (\`modules\` value is \`object with mode local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._ghi { color: red; } -", - "", - ], -] -`; +.h4SEF34C { + margin-left: auto !important; + margin-right: auto !important; +} -exports[`modules case \`values-2\` (\`modules\` value is \`object with mode local)\`: warnings 1`] = `Array []`; +/* matches elements with class=":\`(" */ +.fKJQkLar { + color: aqua; +} -exports[`modules case \`values-2\` (\`modules\` value is \`true)\`: errors 1`] = `Array []`; +/* matches elements with class="1a2b3c" */ +.YR1u_buY { + color: aliceblue; +} -exports[`modules case \`values-2\` (\`modules\` value is \`true)\`: locals 1`] = ` -Object { - "def": "red", - "ghi": "_2aKAT4pAinaabqEIFgdhTC", +/* matches the element with id="#fake-id" */ +#AqiAGSfn { + color: antiquewhite; } -`; -exports[`modules case \`values-2\` (\`modules\` value is \`true)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._2aKAT4pAinaabqEIFgdhTC { color: red; } -", - "", - ], -] -`; +/* matches the element with id="-a-b-c-" */ +#CwXv27VM { + color: azure; +} -exports[`modules case \`values-2\` (\`modules\` value is \`true)\`: warnings 1`] = `Array []`; +/* 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; +} -exports[`modules case \`values-3\` (\`modules\` value is \`false)\`: errors 1`] = `Array []`; +.IgSzmmsC { + background: hotpink; +} -exports[`modules case \`values-3\` (\`modules\` value is \`false)\`: locals 1`] = `undefined`; +.p6KJMhNW { + background: hotpink; +} -exports[`modules case \`values-3\` (\`modules\` value is \`false)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "@value def from './file.css'; -.ghi { color: def; } +.HZerWgmU { + background: hotpink; +} ", "", ], ] `; -exports[`modules case \`values-3\` (\`modules\` value is \`false)\`: warnings 1`] = `Array []`; +exports[`"modules" option should work and respect the "hashStrategy" = "minimal-subset" and no [local]: warnings 1`] = `[]`; -exports[`modules case \`values-3\` (\`modules\` value is \`global)\`: errors 1`] = `Array []`; +exports[`"modules" option should work and respect the "hashStrategy" = "resource-path-and-local-name": errors 1`] = `[]`; -exports[`modules case \`values-3\` (\`modules\` value is \`global)\`: locals 1`] = ` -Object { - "def": "red", +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; } -`; -exports[`modules case \`values-3\` (\`modules\` value is \`global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - " -", - "", - ], - Array [ - 1, - ".ghi { color: red; } -", - "", - ], -] -`; +._test__Lb3fhDAu { + background: blue; +} -exports[`modules case \`values-3\` (\`modules\` value is \`global)\`: warnings 1`] = `Array []`; +.className__LdhpkZRW { + background: red; +} -exports[`modules case \`values-3\` (\`modules\` value is \`local)\`: errors 1`] = `Array []`; +#someId__b0rhwJSt { + background: green; +} -exports[`modules case \`values-3\` (\`modules\` value is \`local)\`: locals 1`] = ` -Object { - "def": "red", - "ghi": "_29ART3-NNe4DU1X-5_7419", +.className__LdhpkZRW .subClass__Mw9j4nId { + color: green; } -`; -exports[`modules case \`values-3\` (\`modules\` value is \`local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - " -", - "", - ], - Array [ - 1, - "._29ART3-NNe4DU1X-5_7419 { color: red; } -", - "", - ], -] -`; +#someId__b0rhwJSt .subClass__Mw9j4nId { + color: blue; +} -exports[`modules case \`values-3\` (\`modules\` value is \`local)\`: warnings 1`] = `Array []`; +.-a0-34a___f__DdFWMPol { + color: red; +} -exports[`modules case \`values-3\` (\`modules\` value is \`object with mode global)\`: errors 1`] = `Array []`; +.m_x_\\\\@__OdAmghrm { + margin-left: auto !important; + margin-right: auto !important; +} -exports[`modules case \`values-3\` (\`modules\` value is \`object with mode global)\`: locals 1`] = ` -Object { - "def": "red", +.B\\\\&W\\\\?__h4SEF34C { + margin-left: auto !important; + margin-right: auto !important; } -`; -exports[`modules case \`values-3\` (\`modules\` value is \`object with mode global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - " -", - "", - ], - Array [ - 1, - ".ghi { color: red; } -", - "", - ], -] -`; +/* matches elements with class=":\\\`(" */ +.\\\\3A \\\\\\\`\\\\(__fKJQkLar { + color: aqua; +} -exports[`modules case \`values-3\` (\`modules\` value is \`object with mode global)\`: warnings 1`] = `Array []`; +/* matches elements with class="1a2b3c" */ +.\\\\31 a2b3c__YR1u_buY { + color: aliceblue; +} -exports[`modules case \`values-3\` (\`modules\` value is \`object with mode local)\`: errors 1`] = `Array []`; +/* matches the element with id="#fake-id" */ +#\\\\#fake-id__AqiAGSfn { + color: antiquewhite; +} -exports[`modules case \`values-3\` (\`modules\` value is \`object with mode local)\`: locals 1`] = ` -Object { - "def": "red", - "ghi": "_ghi", +/* matches the element with id="-a-b-c-" */ +#-a-b-c-__CwXv27VM { + color: azure; } -`; -exports[`modules case \`values-3\` (\`modules\` value is \`object with mode local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - " -", - "", - ], - Array [ - 1, - "._ghi { color: red; } -", - "", - ], -] -`; +/* matches the element with id="©" */ +#©__jBj0sZiW { + color: black; +} -exports[`modules case \`values-3\` (\`modules\` value is \`object with mode local)\`: warnings 1`] = `Array []`; +.♥__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; +} -exports[`modules case \`values-3\` (\`modules\` value is \`true)\`: errors 1`] = `Array []`; +.foo\\\\\\\\bar__IgSzmmsC { + background: hotpink; +} -exports[`modules case \`values-3\` (\`modules\` value is \`true)\`: locals 1`] = ` -Object { - "def": "red", - "ghi": "_29ART3-NNe4DU1X-5_7419", +.foo\\\\/bar\\\\/baz__p6KJMhNW { + background: hotpink; } -`; -exports[`modules case \`values-3\` (\`modules\` value is \`true)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - " -", - "", - ], - Array [ - 1, - "._29ART3-NNe4DU1X-5_7419 { color: red; } -", - "", - ], -] -`; +.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; +} -exports[`modules case \`values-3\` (\`modules\` value is \`true)\`: warnings 1`] = `Array []`; +._test__Lb3fhDAu { + background: blue; +} + +.className__LdhpkZRW { + background: red; +} -exports[`modules case \`values-4\` (\`modules\` value is \`false)\`: errors 1`] = `Array []`; +#someId__b0rhwJSt { + background: green; +} -exports[`modules case \`values-4\` (\`modules\` value is \`false)\`: locals 1`] = `undefined`; +.className__LdhpkZRW .subClass__Mw9j4nId { + color: green; +} -exports[`modules case \`values-4\` (\`modules\` value is \`false)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "@value def as aaa from './file1.css'; -@value def as bbb from './file2.css'; -.ghi { background: aaa, bbb, def; } -", - "", - ], -] -`; +#someId__b0rhwJSt .subClass__Mw9j4nId { + color: blue; +} -exports[`modules case \`values-4\` (\`modules\` value is \`false)\`: warnings 1`] = `Array []`; +.-a0-34a___f__DdFWMPol { + color: red; +} -exports[`modules case \`values-4\` (\`modules\` value is \`global)\`: errors 1`] = `Array []`; +.m_x_\\@__OdAmghrm { + margin-left: auto !important; + margin-right: auto !important; +} -exports[`modules case \`values-4\` (\`modules\` value is \`global)\`: locals 1`] = ` -Object { - "aaa": "red", - "bbb": "green", +.B\\&W\\?__h4SEF34C { + margin-left: auto !important; + margin-right: auto !important; } -`; -exports[`modules case \`values-4\` (\`modules\` value is \`global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - " -", - "", - ], - Array [ - 3, - " -", - "", - ], - Array [ - 1, - ".ghi { background: red, green, def; } -", - "", - ], -] -`; +/* matches elements with class=":\`(" */ +.\\3A \\\`\\(__fKJQkLar { + color: aqua; +} -exports[`modules case \`values-4\` (\`modules\` value is \`global)\`: warnings 1`] = `Array []`; +/* matches elements with class="1a2b3c" */ +.\\31 a2b3c__YR1u_buY { + color: aliceblue; +} -exports[`modules case \`values-4\` (\`modules\` value is \`local)\`: errors 1`] = `Array []`; +/* matches the element with id="#fake-id" */ +#\\#fake-id__AqiAGSfn { + color: antiquewhite; +} -exports[`modules case \`values-4\` (\`modules\` value is \`local)\`: locals 1`] = ` -Object { - "aaa": "red", - "bbb": "green", - "ghi": "_1vGjNPdz_qWrUvzTY2pCsS", +/* matches the element with id="-a-b-c-" */ +#-a-b-c-__CwXv27VM { + color: azure; } -`; -exports[`modules case \`values-4\` (\`modules\` value is \`local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - " -", - "", - ], - Array [ - 3, - " -", - "", - ], - Array [ - 1, - "._1vGjNPdz_qWrUvzTY2pCsS { background: red, green, def; } -", - "", - ], -] -`; +/* matches the element with id="©" */ +#©__jBj0sZiW { + color: black; +} -exports[`modules case \`values-4\` (\`modules\` value is \`local)\`: warnings 1`] = `Array []`; +.♥__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; +} -exports[`modules case \`values-4\` (\`modules\` value is \`object with mode global)\`: errors 1`] = `Array []`; +.foo\\\\bar__IgSzmmsC { + background: hotpink; +} -exports[`modules case \`values-4\` (\`modules\` value is \`object with mode global)\`: locals 1`] = ` -Object { - "aaa": "red", - "bbb": "green", +.foo\\/bar\\/baz__p6KJMhNW { + background: hotpink; } -`; -exports[`modules case \`values-4\` (\`modules\` value is \`object with mode global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - " -", - "", - ], - Array [ - 3, - " -", - "", - ], - Array [ - 1, - ".ghi { background: red, green, def; } +.foo\\\\bar\\\\baz__HZerWgmU { + background: hotpink; +} ", "", ], ] `; -exports[`modules case \`values-4\` (\`modules\` value is \`object with mode global)\`: warnings 1`] = `Array []`; +exports[`"modules" option should work and respect the "hashStrategy" = "resource-path-and-local-name": warnings 1`] = `[]`; -exports[`modules case \`values-4\` (\`modules\` value is \`object with mode local)\`: errors 1`] = `Array []`; +exports[`"modules" option should work and respect the "localConvention" option with the "asIs" value: errors 1`] = `[]`; -exports[`modules case \`values-4\` (\`modules\` value is \`object with mode local)\`: locals 1`] = ` -Object { - "aaa": "red", - "bbb": "green", - "ghi": "_ghi", +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; } -`; - -exports[`modules case \`values-4\` (\`modules\` value is \`object with mode local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - " -", - "", - ], - Array [ - 3, - " -", - "", - ], - Array [ - 1, - "._ghi { background: red, green, def; } -", - "", - ], -] -`; -exports[`modules case \`values-4\` (\`modules\` value is \`object with mode local)\`: warnings 1`] = `Array []`; +.AooVHuvzAIGXWngdfslc { + color: blue; +} -exports[`modules case \`values-4\` (\`modules\` value is \`true)\`: errors 1`] = `Array []`; +.snmJCrfw3LVnrlx87XVC { + color: red; +} -exports[`modules case \`values-4\` (\`modules\` value is \`true)\`: locals 1`] = ` -Object { - "aaa": "red", - "bbb": "green", - "ghi": "_1vGjNPdz_qWrUvzTY2pCsS", +a { + color: yellow; } -`; -exports[`modules case \`values-4\` (\`modules\` value is \`true)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - " -", - "", - ], - Array [ - 3, - " -", - "", - ], - Array [ - 1, - "._1vGjNPdz_qWrUvzTY2pCsS { background: red, green, def; } -", - "", - ], -] -`; +.vA4oeh0XymefKJVIJyg1 { + color: red; +} -exports[`modules case \`values-4\` (\`modules\` value is \`true)\`: warnings 1`] = `Array []`; +.mDiC1MIOTWjgsd86woaJ { + color: red; +} -exports[`modules case \`values-5\` (\`modules\` value is \`false)\`: errors 1`] = `Array []`; +.kY3VVFqpzmTiFlxOd9KU { + color: red; +} -exports[`modules case \`values-5\` (\`modules\` value is \`false)\`: locals 1`] = `undefined`; +.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; +} -exports[`modules case \`values-5\` (\`modules\` value is \`false)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "@value color from './file1.css'; -@value shadow: 0 0 color,0 0 color; -.ghi { box-shadow: shadow; } -", - "", - ], -] -`; +.AooVHuvzAIGXWngdfslc { + color: blue; +} -exports[`modules case \`values-5\` (\`modules\` value is \`false)\`: warnings 1`] = `Array []`; +.snmJCrfw3LVnrlx87XVC { + color: red; +} -exports[`modules case \`values-5\` (\`modules\` value is \`global)\`: errors 1`] = `Array []`; +a { + color: yellow; +} -exports[`modules case \`values-5\` (\`modules\` value is \`global)\`: locals 1`] = ` -Object { - "color": "red", - "shadow": "0 0 red,0 0 red", +.vA4oeh0XymefKJVIJyg1 { + color: red; } -`; -exports[`modules case \`values-5\` (\`modules\` value is \`global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - " -", - "", - ], - Array [ - 1, - ".ghi { box-shadow: 0 0 red,0 0 red; } +.mDiC1MIOTWjgsd86woaJ { + color: red; +} + +.kY3VVFqpzmTiFlxOd9KU { + color: red; +} + +.eiLdMC_n9TCXQ0oPIJyI { + color: red; +} ", "", ], ] `; -exports[`modules case \`values-5\` (\`modules\` value is \`global)\`: warnings 1`] = `Array []`; +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 case \`values-5\` (\`modules\` value is \`local)\`: errors 1`] = `Array []`; +exports[`"modules" option should work and respect the "localIdentHashFunction" option: errors 2`] = `[]`; -exports[`modules case \`values-5\` (\`modules\` value is \`local)\`: locals 1`] = ` -Object { - "color": "red", - "ghi": "_3Uw-A6Tr2LkIED6NTqwFvj", - "shadow": "0 0 red,0 0 red", +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; } -`; -exports[`modules case \`values-5\` (\`modules\` value is \`local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - " -", - "", - ], - Array [ - 1, - "._3Uw-A6Tr2LkIED6NTqwFvj { box-shadow: 0 0 red,0 0 red; } -", - "", - ], -] -`; +._test--e91d3d0c5fd37cd4b01b { + background: blue; +} -exports[`modules case \`values-5\` (\`modules\` value is \`local)\`: warnings 1`] = `Array []`; +.className--e02e6f829b2bee39d627 { + background: red; +} -exports[`modules case \`values-5\` (\`modules\` value is \`object with mode global)\`: errors 1`] = `Array []`; +#someId--de52fa8c46db92b11447 { + background: green; +} -exports[`modules case \`values-5\` (\`modules\` value is \`object with mode global)\`: locals 1`] = ` -Object { - "color": "red", - "shadow": "0 0 red,0 0 red", +.className--e02e6f829b2bee39d627 .subClass--be91981b36e10e364e4c { + color: green; } -`; -exports[`modules case \`values-5\` (\`modules\` value is \`object with mode global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - " -", - "", - ], - Array [ - 1, - ".ghi { box-shadow: 0 0 red,0 0 red; } -", - "", - ], -] -`; +#someId--de52fa8c46db92b11447 .subClass--be91981b36e10e364e4c { + color: blue; +} -exports[`modules case \`values-5\` (\`modules\` value is \`object with mode global)\`: warnings 1`] = `Array []`; +.-a0-34a___f--da00a255d4f26816d790 { + color: red; +} -exports[`modules case \`values-5\` (\`modules\` value is \`object with mode local)\`: errors 1`] = `Array []`; +.m_x_\\\\@--bfd2a88024baab94215a { + margin-left: auto !important; + margin-right: auto !important; +} -exports[`modules case \`values-5\` (\`modules\` value is \`object with mode local)\`: locals 1`] = ` -Object { - "color": "red", - "ghi": "_ghi", - "shadow": "0 0 red,0 0 red", +.B\\\\&W\\\\?--bdeaa204fa06e193156e { + margin-left: auto !important; + margin-right: auto !important; } -`; -exports[`modules case \`values-5\` (\`modules\` value is \`object with mode local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - " -", - "", - ], - Array [ - 1, - "._ghi { box-shadow: 0 0 red,0 0 red; } -", - "", - ], -] -`; +/* matches elements with class=":\\\`(" */ +.\\\\3A \\\\\\\`\\\\(--ca761b17eca1ae06d42e { + color: aqua; +} -exports[`modules case \`values-5\` (\`modules\` value is \`object with mode local)\`: warnings 1`] = `Array []`; +/* matches elements with class="1a2b3c" */ +.\\\\31 a2b3c--a35141d9affd245508ec { + color: aliceblue; +} -exports[`modules case \`values-5\` (\`modules\` value is \`true)\`: errors 1`] = `Array []`; +/* matches the element with id="#fake-id" */ +#\\\\#fake-id--ad040e49adcf9ebf2b28 { + color: antiquewhite; +} -exports[`modules case \`values-5\` (\`modules\` value is \`true)\`: locals 1`] = ` -Object { - "color": "red", - "ghi": "_3Uw-A6Tr2LkIED6NTqwFvj", - "shadow": "0 0 red,0 0 red", +/* matches the element with id="-a-b-c-" */ +#-a-b-c---e778be7522ccfc908a7f { + color: azure; } -`; -exports[`modules case \`values-5\` (\`modules\` value is \`true)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - " -", - "", - ], - Array [ - 1, - "._3Uw-A6Tr2LkIED6NTqwFvj { box-shadow: 0 0 red,0 0 red; } -", - "", - ], -] -`; +/* matches the element with id="©" */ +#©--e0f3ca20d394f3e4c0c4 { + color: black; +} -exports[`modules case \`values-5\` (\`modules\` value is \`true)\`: warnings 1`] = `Array []`; +.♥--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; +} -exports[`modules case \`values-6\` (\`modules\` value is \`false)\`: errors 1`] = `Array []`; +.foo\\\\\\\\bar--c17737aec664275b67b0 { + background: hotpink; +} -exports[`modules case \`values-6\` (\`modules\` value is \`false)\`: locals 1`] = `undefined`; +.foo\\\\/bar\\\\/baz--c948ac137924110011f2 { + background: hotpink; +} -exports[`modules case \`values-6\` (\`modules\` value is \`false)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "@value color from './file1.css'; -@value shadow: 0 0 color ,0 0 color; -.ghi { box-shadow: shadow; } -", - "", - ], -] -`; +.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; +} -exports[`modules case \`values-6\` (\`modules\` value is \`false)\`: warnings 1`] = `Array []`; +._test--Lb3fhDAuJv { + background: blue; +} -exports[`modules case \`values-6\` (\`modules\` value is \`global)\`: errors 1`] = `Array []`; +.className--LdhpkZRWyK { + background: red; +} -exports[`modules case \`values-6\` (\`modules\` value is \`global)\`: locals 1`] = ` -Object { - "color": "red", - "shadow": "0 0 red ,0 0 red", +#someId--b0rhwJStMR { + background: green; } -`; -exports[`modules case \`values-6\` (\`modules\` value is \`global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - " -", - "", - ], - Array [ - 1, - ".ghi { box-shadow: 0 0 red ,0 0 red; } -", - "", - ], -] -`; +.className--LdhpkZRWyK .subClass--Mw9j4nIdjx { + color: green; +} + +#someId--b0rhwJStMR .subClass--Mw9j4nIdjx { + color: blue; +} + +.-a0-34a___f--DdFWMPoluI { + color: red; +} -exports[`modules case \`values-6\` (\`modules\` value is \`global)\`: warnings 1`] = `Array []`; +.m_x_\\\\@--OdAmghrme3 { + margin-left: auto !important; + margin-right: auto !important; +} -exports[`modules case \`values-6\` (\`modules\` value is \`local)\`: errors 1`] = `Array []`; +.B\\\\&W\\\\?--h4SEF34CLw { + margin-left: auto !important; + margin-right: auto !important; +} -exports[`modules case \`values-6\` (\`modules\` value is \`local)\`: locals 1`] = ` -Object { - "color": "red", - "ghi": "_2qKjolC-wu9Dp8-RCkWiLN", - "shadow": "0 0 red ,0 0 red", +/* matches elements with class=":\\\`(" */ +.\\\\3A \\\\\\\`\\\\(--fKJQkLarfQ { + color: aqua; } -`; -exports[`modules case \`values-6\` (\`modules\` value is \`local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - " -", - "", - ], - Array [ - 1, - "._2qKjolC-wu9Dp8-RCkWiLN { box-shadow: 0 0 red ,0 0 red; } -", - "", - ], -] -`; +/* matches elements with class="1a2b3c" */ +.\\\\31 a2b3c--YR1u_buYf6 { + color: aliceblue; +} -exports[`modules case \`values-6\` (\`modules\` value is \`local)\`: warnings 1`] = `Array []`; +/* matches the element with id="#fake-id" */ +#\\\\#fake-id--AqiAGSfnwa { + color: antiquewhite; +} -exports[`modules case \`values-6\` (\`modules\` value is \`object with mode global)\`: errors 1`] = `Array []`; +/* matches the element with id="-a-b-c-" */ +#-a-b-c---CwXv27VMwy { + color: azure; +} -exports[`modules case \`values-6\` (\`modules\` value is \`object with mode global)\`: locals 1`] = ` -Object { - "color": "red", - "shadow": "0 0 red ,0 0 red", +/* matches the element with id="©" */ +#©--jBj0sZiWBy { + color: black; } -`; -exports[`modules case \`values-6\` (\`modules\` value is \`object with mode global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - " -", - "", - ], - Array [ - 1, - ".ghi { box-shadow: 0 0 red ,0 0 red; } -", - "", - ], -] -`; +.♥--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; +} -exports[`modules case \`values-6\` (\`modules\` value is \`object with mode global)\`: warnings 1`] = `Array []`; +.foo\\\\\\\\bar--IgSzmmsCqi { + background: hotpink; +} -exports[`modules case \`values-6\` (\`modules\` value is \`object with mode local)\`: errors 1`] = `Array []`; +.foo\\\\/bar\\\\/baz--p6KJMhNWwm { + background: hotpink; +} -exports[`modules case \`values-6\` (\`modules\` value is \`object with mode local)\`: locals 1`] = ` -Object { - "color": "red", - "ghi": "_ghi", - "shadow": "0 0 red ,0 0 red", +.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; } -`; -exports[`modules case \`values-6\` (\`modules\` value is \`object with mode local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - " -", - "", - ], - Array [ - 1, - "._ghi { box-shadow: 0 0 red ,0 0 red; } -", - "", - ], -] -`; +._test--e91d3d0c5fd37cd4b01b { + background: blue; +} -exports[`modules case \`values-6\` (\`modules\` value is \`object with mode local)\`: warnings 1`] = `Array []`; +.className--e02e6f829b2bee39d627 { + background: red; +} -exports[`modules case \`values-6\` (\`modules\` value is \`true)\`: errors 1`] = `Array []`; +#someId--de52fa8c46db92b11447 { + background: green; +} -exports[`modules case \`values-6\` (\`modules\` value is \`true)\`: locals 1`] = ` -Object { - "color": "red", - "ghi": "_2qKjolC-wu9Dp8-RCkWiLN", - "shadow": "0 0 red ,0 0 red", +.className--e02e6f829b2bee39d627 .subClass--be91981b36e10e364e4c { + color: green; } -`; -exports[`modules case \`values-6\` (\`modules\` value is \`true)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - " -", - "", - ], - Array [ - 1, - "._2qKjolC-wu9Dp8-RCkWiLN { box-shadow: 0 0 red ,0 0 red; } -", - "", - ], -] -`; +#someId--de52fa8c46db92b11447 .subClass--be91981b36e10e364e4c { + color: blue; +} -exports[`modules case \`values-6\` (\`modules\` value is \`true)\`: warnings 1`] = `Array []`; +.-a0-34a___f--da00a255d4f26816d790 { + color: red; +} -exports[`modules case \`values-7\` (\`modules\` value is \`false)\`: errors 1`] = `Array []`; +.m_x_\\@--bfd2a88024baab94215a { + margin-left: auto !important; + margin-right: auto !important; +} -exports[`modules case \`values-7\` (\`modules\` value is \`false)\`: locals 1`] = `undefined`; +.B\\&W\\?--bdeaa204fa06e193156e { + margin-left: auto !important; + margin-right: auto !important; +} -exports[`modules case \`values-7\` (\`modules\` value is \`false)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "@value color from './file1.css'; -@value shadow: 0 0 color, 0 0 color; -.ghi { box-shadow: shadow; } -", - "", - ], -] -`; +/* matches elements with class=":\`(" */ +.\\3A \\\`\\(--ca761b17eca1ae06d42e { + color: aqua; +} -exports[`modules case \`values-7\` (\`modules\` value is \`false)\`: warnings 1`] = `Array []`; +/* matches elements with class="1a2b3c" */ +.\\31 a2b3c--a35141d9affd245508ec { + color: aliceblue; +} -exports[`modules case \`values-7\` (\`modules\` value is \`global)\`: errors 1`] = `Array []`; +/* matches the element with id="#fake-id" */ +#\\#fake-id--ad040e49adcf9ebf2b28 { + color: antiquewhite; +} -exports[`modules case \`values-7\` (\`modules\` value is \`global)\`: locals 1`] = ` -Object { - "color": "red", - "shadow": "0 0 red, 0 0 red", +/* matches the element with id="-a-b-c-" */ +#-a-b-c---e778be7522ccfc908a7f { + color: azure; } -`; -exports[`modules case \`values-7\` (\`modules\` value is \`global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - " -", - "", - ], - Array [ - 1, - ".ghi { box-shadow: 0 0 red, 0 0 red; } -", - "", - ], -] -`; +/* matches the element with id="©" */ +#©--e0f3ca20d394f3e4c0c4 { + color: black; +} -exports[`modules case \`values-7\` (\`modules\` value is \`global)\`: warnings 1`] = `Array []`; +.♥--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; +} -exports[`modules case \`values-7\` (\`modules\` value is \`local)\`: errors 1`] = `Array []`; +.foo\\\\bar--c17737aec664275b67b0 { + background: hotpink; +} -exports[`modules case \`values-7\` (\`modules\` value is \`local)\`: locals 1`] = ` -Object { - "color": "red", - "ghi": "_1SVUxnI1T0vYEcq2VXU5pr", - "shadow": "0 0 red, 0 0 red", +.foo\\/bar\\/baz--c948ac137924110011f2 { + background: hotpink; } -`; -exports[`modules case \`values-7\` (\`modules\` value is \`local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - " -", - "", - ], - Array [ - 1, - "._1SVUxnI1T0vYEcq2VXU5pr { box-shadow: 0 0 red, 0 0 red; } +.foo\\\\bar\\\\baz--ee89c9e938e6eb8df43d { + background: hotpink; +} ", "", ], ] `; -exports[`modules case \`values-7\` (\`modules\` value is \`local)\`: warnings 1`] = `Array []`; - -exports[`modules case \`values-7\` (\`modules\` value is \`object with mode global)\`: errors 1`] = `Array []`; - -exports[`modules case \`values-7\` (\`modules\` value is \`object with mode global)\`: locals 1`] = ` -Object { - "color": "red", - "shadow": "0 0 red, 0 0 red", +exports[`"modules" option should work and respect the "localIdentHashFunction" option: result 2`] = ` +[ + [ + "./modules/localIdentName/localIdentName.css", + ".test--KuIShlgsYf { + background: red; } -`; -exports[`modules case \`values-7\` (\`modules\` value is \`object with mode global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - " -", - "", - ], - Array [ - 1, - ".ghi { box-shadow: 0 0 red, 0 0 red; } -", - "", - ], -] -`; - -exports[`modules case \`values-7\` (\`modules\` value is \`object with mode global)\`: warnings 1`] = `Array []`; +._test--Lb3fhDAuJv { + background: blue; +} -exports[`modules case \`values-7\` (\`modules\` value is \`object with mode local)\`: errors 1`] = `Array []`; +.className--LdhpkZRWyK { + background: red; +} -exports[`modules case \`values-7\` (\`modules\` value is \`object with mode local)\`: locals 1`] = ` -Object { - "color": "red", - "ghi": "_ghi", - "shadow": "0 0 red, 0 0 red", +#someId--b0rhwJStMR { + background: green; } -`; -exports[`modules case \`values-7\` (\`modules\` value is \`object with mode local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - " -", - "", - ], - Array [ - 1, - "._ghi { box-shadow: 0 0 red, 0 0 red; } -", - "", - ], -] -`; +.className--LdhpkZRWyK .subClass--Mw9j4nIdjx { + color: green; +} -exports[`modules case \`values-7\` (\`modules\` value is \`object with mode local)\`: warnings 1`] = `Array []`; +#someId--b0rhwJStMR .subClass--Mw9j4nIdjx { + color: blue; +} -exports[`modules case \`values-7\` (\`modules\` value is \`true)\`: errors 1`] = `Array []`; +.-a0-34a___f--DdFWMPoluI { + color: red; +} -exports[`modules case \`values-7\` (\`modules\` value is \`true)\`: locals 1`] = ` -Object { - "color": "red", - "ghi": "_1SVUxnI1T0vYEcq2VXU5pr", - "shadow": "0 0 red, 0 0 red", +.m_x_\\@--OdAmghrme3 { + margin-left: auto !important; + margin-right: auto !important; } -`; -exports[`modules case \`values-7\` (\`modules\` value is \`true)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - " -", - "", - ], - Array [ - 1, - "._1SVUxnI1T0vYEcq2VXU5pr { box-shadow: 0 0 red, 0 0 red; } -", - "", - ], -] -`; +.B\\&W\\?--h4SEF34CLw { + margin-left: auto !important; + margin-right: auto !important; +} -exports[`modules case \`values-7\` (\`modules\` value is \`true)\`: warnings 1`] = `Array []`; +/* matches elements with class=":\`(" */ +.\\3A \\\`\\(--fKJQkLarfQ { + color: aqua; +} -exports[`modules case \`values-8\` (\`modules\` value is \`false)\`: errors 1`] = `Array []`; +/* matches elements with class="1a2b3c" */ +.\\31 a2b3c--YR1u_buYf6 { + color: aliceblue; +} -exports[`modules case \`values-8\` (\`modules\` value is \`false)\`: locals 1`] = `undefined`; +/* matches the element with id="#fake-id" */ +#\\#fake-id--AqiAGSfnwa { + color: antiquewhite; +} -exports[`modules case \`values-8\` (\`modules\` value is \`false)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "@value shadow-color: rgba(0, 0, 0, 0.5); +/* matches the element with id="-a-b-c-" */ +#-a-b-c---CwXv27VMwy { + color: azure; +} -.shadow { - box-shadow: 0 10px 10px shadow-color, - 10px 0px 5px shadow-color; +/* matches the element with id="©" */ +#©--jBj0sZiWBy { + color: black; } -", - "", - ], -] -`; -exports[`modules case \`values-8\` (\`modules\` value is \`false)\`: warnings 1`] = `Array []`; +.♥--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; +} -exports[`modules case \`values-8\` (\`modules\` value is \`global)\`: errors 1`] = `Array []`; +.foo\\\\bar--IgSzmmsCqi { + background: hotpink; +} -exports[`modules case \`values-8\` (\`modules\` value is \`global)\`: locals 1`] = ` -Object { - "shadow-color": "rgba(0, 0, 0, 0.5)", +.foo\\/bar\\/baz--p6KJMhNWwm { + background: hotpink; } -`; -exports[`modules case \`values-8\` (\`modules\` value is \`global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ".shadow { - box-shadow: 0 10px 10px rgba(0, 0, 0, 0.5), - 10px 0px 5px rgba(0, 0, 0, 0.5); +.foo\\\\bar\\\\baz--HZerWgmU0f { + background: hotpink; } ", "", @@ -5337,190 +7247,345 @@ Array [ ] `; -exports[`modules case \`values-8\` (\`modules\` value is \`global)\`: warnings 1`] = `Array []`; +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 case \`values-8\` (\`modules\` value is \`local)\`: errors 1`] = `Array []`; +exports[`"modules" option should work and respect the "localIdentName" option 2: errors 1`] = `[]`; -exports[`modules case \`values-8\` (\`modules\` value is \`local)\`: locals 1`] = ` -Object { - "shadow": "_3fhB2YwAmhjTmtcd6ofBQH", - "shadow-color": "rgba(0, 0, 0, 0.5)", +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; } -`; -exports[`modules case \`values-8\` (\`modules\` value is \`local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._3fhB2YwAmhjTmtcd6ofBQH { - box-shadow: 0 10px 10px rgba(0, 0, 0, 0.5), - 10px 0px 5px rgba(0, 0, 0, 0.5); +.localIdentName--_test--c6a38 { + background: blue; } -", - "", - ], -] -`; -exports[`modules case \`values-8\` (\`modules\` value is \`local)\`: warnings 1`] = `Array []`; +.localIdentName--className--ae4cd { + background: red; +} -exports[`modules case \`values-8\` (\`modules\` value is \`object with mode global)\`: errors 1`] = `Array []`; +#localIdentName--someId--a747a { + background: green; +} -exports[`modules case \`values-8\` (\`modules\` value is \`object with mode global)\`: locals 1`] = ` -Object { - "shadow-color": "rgba(0, 0, 0, 0.5)", +.localIdentName--className--ae4cd .localIdentName--subClass--bf463 { + color: green; } -`; -exports[`modules case \`values-8\` (\`modules\` value is \`object with mode global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ".shadow { - box-shadow: 0 10px 10px rgba(0, 0, 0, 0.5), - 10px 0px 5px rgba(0, 0, 0, 0.5); +#localIdentName--someId--a747a .localIdentName--subClass--bf463 { + color: blue; } -", - "", - ], -] -`; -exports[`modules case \`values-8\` (\`modules\` value is \`object with mode global)\`: warnings 1`] = `Array []`; +.localIdentName---a0-34a___f--d3488 { + color: red; +} -exports[`modules case \`values-8\` (\`modules\` value is \`object with mode local)\`: errors 1`] = `Array []`; +.localIdentName--m_x_\\\\@--ff0d5 { + margin-left: auto !important; + margin-right: auto !important; +} -exports[`modules case \`values-8\` (\`modules\` value is \`object with mode local)\`: locals 1`] = ` -Object { - "shadow": "_shadow", - "shadow-color": "rgba(0, 0, 0, 0.5)", +.localIdentName--B\\\\&W\\\\?--f7662 { + margin-left: auto !important; + margin-right: auto !important; } -`; -exports[`modules case \`values-8\` (\`modules\` value is \`object with mode local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._shadow { - box-shadow: 0 10px 10px rgba(0, 0, 0, 0.5), - 10px 0px 5px rgba(0, 0, 0, 0.5); +/* matches elements with class=":\\\`(" */ +.localIdentName--\\\\3A \\\\\\\`\\\\(--d3744 { + color: aqua; } -", - "", - ], -] -`; -exports[`modules case \`values-8\` (\`modules\` value is \`object with mode local)\`: warnings 1`] = `Array []`; +/* matches elements with class="1a2b3c" */ +.localIdentName--\\\\31 a2b3c--c4cbc { + color: aliceblue; +} -exports[`modules case \`values-8\` (\`modules\` value is \`true)\`: errors 1`] = `Array []`; +/* matches the element with id="#fake-id" */ +#localIdentName--\\\\#fake-id--e42a4 { + color: antiquewhite; +} -exports[`modules case \`values-8\` (\`modules\` value is \`true)\`: locals 1`] = ` -Object { - "shadow": "_3fhB2YwAmhjTmtcd6ofBQH", - "shadow-color": "rgba(0, 0, 0, 0.5)", +/* matches the element with id="-a-b-c-" */ +#localIdentName---a-b-c---e4b0f { + color: azure; } -`; -exports[`modules case \`values-8\` (\`modules\` value is \`true)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._3fhB2YwAmhjTmtcd6ofBQH { - box-shadow: 0 10px 10px rgba(0, 0, 0, 0.5), - 10px 0px 5px rgba(0, 0, 0, 0.5); +/* matches the element with id="©" */ +#localIdentName--©--c3e22 { + color: black; } -", - "", - ], -] -`; -exports[`modules case \`values-8\` (\`modules\` value is \`true)\`: warnings 1`] = `Array []`; +.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; +} -exports[`modules case \`values-9\` (\`modules\` value is \`false)\`: errors 1`] = `Array []`; +.localIdentName--foo\\\\\\\\bar--ac6d2 { + background: hotpink; +} -exports[`modules case \`values-9\` (\`modules\` value is \`false)\`: locals 1`] = `undefined`; +.localIdentName--foo\\\\/bar\\\\/baz--c78d7 { + background: hotpink; +} -exports[`modules case \`values-9\` (\`modules\` value is \`false)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "@value def: red; +.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; +} -.foo1 { - prop: func(def); +.localIdentName--_test--c6a38 { + background: blue; } -.foo2 { - prop: func(10px def); +.localIdentName--className--ae4cd { + background: red; } -.foo3 { - prop: func(def 10px); +#localIdentName--someId--a747a { + background: green; } -.foo4 { - prop: func(10px def 10px); +.localIdentName--className--ae4cd .localIdentName--subClass--bf463 { + color: green; } -.foo5 { - prop: func(10px, def); +#localIdentName--someId--a747a .localIdentName--subClass--bf463 { + color: blue; } -.foo6 { - prop: func(def, 10px); +.localIdentName---a0-34a___f--d3488 { + color: red; } -.foo7 { - prop: func(10px, def, 10px); +.localIdentName--m_x_\\@--ff0d5 { + margin-left: auto !important; + margin-right: auto !important; } -", - "", - ], -] -`; -exports[`modules case \`values-9\` (\`modules\` value is \`false)\`: warnings 1`] = `Array []`; +.localIdentName--B\\&W\\?--f7662 { + margin-left: auto !important; + margin-right: auto !important; +} -exports[`modules case \`values-9\` (\`modules\` value is \`global)\`: errors 1`] = `Array []`; +/* matches elements with class=":\`(" */ +.localIdentName--\\3A \\\`\\(--d3744 { + color: aqua; +} -exports[`modules case \`values-9\` (\`modules\` value is \`global)\`: locals 1`] = ` -Object { - "def": "red", +/* matches elements with class="1a2b3c" */ +.localIdentName--\\31 a2b3c--c4cbc { + color: aliceblue; } -`; -exports[`modules case \`values-9\` (\`modules\` value is \`global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ".foo1 { - prop: func(red); +/* matches the element with id="#fake-id" */ +#localIdentName--\\#fake-id--e42a4 { + color: antiquewhite; } -.foo2 { - prop: func(10px red); +/* matches the element with id="-a-b-c-" */ +#localIdentName---a-b-c---e4b0f { + color: azure; } -.foo3 { - prop: func(red 10px); +/* matches the element with id="©" */ +#localIdentName--©--c3e22 { + color: black; } -.foo4 { - prop: func(10px red 10px); +.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; } -.foo5 { - prop: func(10px, red); +.localIdentName--foo\\\\bar--ac6d2 { + background: hotpink; } -.foo6 { - prop: func(red, 10px); +.localIdentName--foo\\/bar\\/baz--c78d7 { + background: hotpink; } -.foo7 { - prop: func(10px, red, 10px); +.localIdentName--foo\\\\bar\\\\baz--f235d { + background: hotpink; } ", "", @@ -5528,208 +7593,343 @@ Array [ ] `; -exports[`modules case \`values-9\` (\`modules\` value is \`global)\`: warnings 1`] = `Array []`; +exports[`"modules" option should work and respect the "localIdentName" option 2: warnings 1`] = `[]`; -exports[`modules case \`values-9\` (\`modules\` value is \`local)\`: errors 1`] = `Array []`; +exports[`"modules" option should work and respect the "localIdentName" option: errors 1`] = `[]`; -exports[`modules case \`values-9\` (\`modules\` value is \`local)\`: locals 1`] = ` -Object { - "def": "red", - "foo1": "_1V2U7x4U8oxxooLcDA25iL", - "foo2": "_3E1mOwwzg7yDREAM1sTqrf", - "foo3": "_1jURUggvUGFLzQ1zAWjNep", - "foo4": "_2gTeanreYt1oKNw6pvYDuQ", - "foo5": "_1FHimE7YIOvZ66qJzb5oD7", - "foo6": "_2ZsNKxzBYz6NW_ITMiAbSo", - "foo7": "_18TpSE38_jlCbLotZMXh67", +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; } -`; -exports[`modules case \`values-9\` (\`modules\` value is \`local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._1V2U7x4U8oxxooLcDA25iL { - prop: func(red); +.localIdentName--_test--TGo4R { + background: blue; } -._3E1mOwwzg7yDREAM1sTqrf { - prop: func(10px red); +.localIdentName--className--V3rkz { + background: red; } -._1jURUggvUGFLzQ1zAWjNep { - prop: func(red 10px); +#localIdentName--someId--p0emr { + background: green; } -._2gTeanreYt1oKNw6pvYDuQ { - prop: func(10px red 10px); +.localIdentName--className--V3rkz .localIdentName--subClass--v0YwV { + color: green; } -._1FHimE7YIOvZ66qJzb5oD7 { - prop: func(10px, red); +#localIdentName--someId--p0emr .localIdentName--subClass--v0YwV { + color: blue; } -._2ZsNKxzBYz6NW_ITMiAbSo { - prop: func(red, 10px); +.localIdentName---a0-34a___f--iD7O5 { + color: red; } -._18TpSE38_jlCbLotZMXh67 { - prop: func(10px, red, 10px); +.localIdentName--m_x_\\\\@--RH_w1 { + margin-left: auto !important; + margin-right: auto !important; } -", - "", - ], -] -`; -exports[`modules case \`values-9\` (\`modules\` value is \`local)\`: warnings 1`] = `Array []`; +.localIdentName--B\\\\&W\\\\?--Ag92Y { + margin-left: auto !important; + margin-right: auto !important; +} -exports[`modules case \`values-9\` (\`modules\` value is \`object with mode global)\`: errors 1`] = `Array []`; +/* matches elements with class=":\\\`(" */ +.localIdentName--\\\\3A \\\\\\\`\\\\(--ETB9N { + color: aqua; +} -exports[`modules case \`values-9\` (\`modules\` value is \`object with mode global)\`: locals 1`] = ` -Object { - "def": "red", +/* matches elements with class="1a2b3c" */ +.localIdentName--\\\\31 a2b3c--LEy8b { + color: aliceblue; } -`; -exports[`modules case \`values-9\` (\`modules\` value is \`object with mode global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ".foo1 { - prop: func(red); +/* matches the element with id="#fake-id" */ +#localIdentName--\\\\#fake-id--JOQqQ { + color: antiquewhite; } -.foo2 { - prop: func(10px red); +/* matches the element with id="-a-b-c-" */ +#localIdentName---a-b-c---LD6vZ { + color: azure; } -.foo3 { - prop: func(red 10px); +/* matches the element with id="©" */ +#localIdentName--©--bD4iE { + color: black; } -.foo4 { - prop: func(10px red 10px); +.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; } -.foo5 { - prop: func(10px, red); +.localIdentName--foo\\\\\\\\bar--chesb { + background: hotpink; } -.foo6 { - prop: func(red, 10px); +.localIdentName--foo\\\\/bar\\\\/baz--QMeNd { + background: hotpink; } -.foo7 { - prop: func(10px, red, 10px); +.localIdentName--foo\\\\\\\\bar\\\\\\\\baz--jXaak { + background: hotpink; } -", - "", - ], -] -`; - -exports[`modules case \`values-9\` (\`modules\` value is \`object with mode global)\`: warnings 1`] = `Array []`; - -exports[`modules case \`values-9\` (\`modules\` value is \`object with mode local)\`: errors 1`] = `Array []`; - -exports[`modules case \`values-9\` (\`modules\` value is \`object with mode local)\`: locals 1`] = ` -Object { - "def": "red", - "foo1": "_foo1", - "foo2": "_foo2", - "foo3": "_foo3", - "foo4": "_foo4", - "foo5": "_foo5", - "foo6": "_foo6", - "foo7": "_foo7", +\`, ""]); +// 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; } -`; -exports[`modules case \`values-9\` (\`modules\` value is \`object with mode local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._foo1 { - prop: func(red); +.localIdentName--_test--TGo4R { + background: blue; } -._foo2 { - prop: func(10px red); +.localIdentName--className--V3rkz { + background: red; } -._foo3 { - prop: func(red 10px); +#localIdentName--someId--p0emr { + background: green; } -._foo4 { - prop: func(10px red 10px); +.localIdentName--className--V3rkz .localIdentName--subClass--v0YwV { + color: green; } -._foo5 { - prop: func(10px, red); +#localIdentName--someId--p0emr .localIdentName--subClass--v0YwV { + color: blue; } -._foo6 { - prop: func(red, 10px); +.localIdentName---a0-34a___f--iD7O5 { + color: red; } -._foo7 { - prop: func(10px, red, 10px); +.localIdentName--m_x_\\@--RH_w1 { + margin-left: auto !important; + margin-right: auto !important; } -", - "", - ], -] -`; -exports[`modules case \`values-9\` (\`modules\` value is \`object with mode local)\`: warnings 1`] = `Array []`; +.localIdentName--B\\&W\\?--Ag92Y { + margin-left: auto !important; + margin-right: auto !important; +} -exports[`modules case \`values-9\` (\`modules\` value is \`true)\`: errors 1`] = `Array []`; +/* matches elements with class=":\`(" */ +.localIdentName--\\3A \\\`\\(--ETB9N { + color: aqua; +} -exports[`modules case \`values-9\` (\`modules\` value is \`true)\`: locals 1`] = ` -Object { - "def": "red", - "foo1": "_1V2U7x4U8oxxooLcDA25iL", - "foo2": "_3E1mOwwzg7yDREAM1sTqrf", - "foo3": "_1jURUggvUGFLzQ1zAWjNep", - "foo4": "_2gTeanreYt1oKNw6pvYDuQ", - "foo5": "_1FHimE7YIOvZ66qJzb5oD7", - "foo6": "_2ZsNKxzBYz6NW_ITMiAbSo", - "foo7": "_18TpSE38_jlCbLotZMXh67", +/* matches elements with class="1a2b3c" */ +.localIdentName--\\31 a2b3c--LEy8b { + color: aliceblue; } -`; -exports[`modules case \`values-9\` (\`modules\` value is \`true)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._1V2U7x4U8oxxooLcDA25iL { - prop: func(red); +/* matches the element with id="#fake-id" */ +#localIdentName--\\#fake-id--JOQqQ { + color: antiquewhite; } -._3E1mOwwzg7yDREAM1sTqrf { - prop: func(10px red); +/* matches the element with id="-a-b-c-" */ +#localIdentName---a-b-c---LD6vZ { + color: azure; } -._1jURUggvUGFLzQ1zAWjNep { - prop: func(red 10px); +/* matches the element with id="©" */ +#localIdentName--©--bD4iE { + color: black; } -._2gTeanreYt1oKNw6pvYDuQ { - prop: func(10px red 10px); +.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; } -._1FHimE7YIOvZ66qJzb5oD7 { - prop: func(10px, red); +.localIdentName--foo\\\\bar--chesb { + background: hotpink; } -._2ZsNKxzBYz6NW_ITMiAbSo { - prop: func(red, 10px); +.localIdentName--foo\\/bar\\/baz--QMeNd { + background: hotpink; } -._18TpSE38_jlCbLotZMXh67 { - prop: func(10px, red, 10px); +.localIdentName--foo\\\\bar\\\\baz--jXaak { + background: hotpink; } ", "", @@ -5737,219 +7937,343 @@ Array [ ] `; -exports[`modules case \`values-9\` (\`modules\` value is \`true)\`: warnings 1`] = `Array []`; +exports[`"modules" option should work and respect the "localIdentName" option: warnings 1`] = `[]`; -exports[`modules case \`values-10\` (\`modules\` value is \`false)\`: errors 1`] = `Array []`; +exports[`"modules" option should work and respect the "localIdentRegExp" option: errors 1`] = `[]`; -exports[`modules case \`values-10\` (\`modules\` value is \`false)\`: locals 1`] = `undefined`; +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; +} -exports[`modules case \`values-10\` (\`modules\` value is \`false)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "@value v-primary: #BF4040; -@value s-black: black-selector; -@value m-large: (min-width: 960px); +.localIdentName___test__Lb3fhDAu { + background: blue; +} -.header { - color: v-primary; - padding: 0 10px; +.localIdentName__className__LdhpkZRW { + background: red; } -.s-black { - color: black; +#localIdentName__someId__b0rhwJSt { + background: green; } -@media m-large { - .header { - padding: 0 20px; - } +.localIdentName__className__LdhpkZRW .localIdentName__subClass__Mw9j4nId { + color: green; } -", - "", - ], -] -`; -exports[`modules case \`values-10\` (\`modules\` value is \`false)\`: warnings 1`] = `Array []`; +#localIdentName__someId__b0rhwJSt .localIdentName__subClass__Mw9j4nId { + color: blue; +} -exports[`modules case \`values-10\` (\`modules\` value is \`global)\`: errors 1`] = `Array []`; +.localIdentName__-a0-34a___f__DdFWMPol { + color: red; +} -exports[`modules case \`values-10\` (\`modules\` value is \`global)\`: locals 1`] = ` -Object { - "m-large": "(min-width: 960px)", - "s-black": "black-selector", - "v-primary": "#BF4040", +.localIdentName__m_x_\\\\@__OdAmghrm { + margin-left: auto !important; + margin-right: auto !important; } -`; -exports[`modules case \`values-10\` (\`modules\` value is \`global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ".header { - color: #BF4040; - padding: 0 10px; +.localIdentName__B\\\\&W\\\\?__h4SEF34C { + margin-left: auto !important; + margin-right: auto !important; } -.black-selector { - color: black; +/* matches elements with class=":\\\`(" */ +.localIdentName__\\\\3A \\\\\\\`\\\\(__fKJQkLar { + color: aqua; } -@media (min-width: 960px) { - .header { - padding: 0 20px; - } +/* matches elements with class="1a2b3c" */ +.localIdentName__\\\\31 a2b3c__YR1u_buY { + color: aliceblue; } -", - "", - ], -] -`; -exports[`modules case \`values-10\` (\`modules\` value is \`global)\`: warnings 1`] = `Array []`; +/* matches the element with id="#fake-id" */ +#localIdentName__\\\\#fake-id__AqiAGSfn { + color: antiquewhite; +} -exports[`modules case \`values-10\` (\`modules\` value is \`local)\`: errors 1`] = `Array []`; +/* matches the element with id="-a-b-c-" */ +#localIdentName__-a-b-c-__CwXv27VM { + color: azure; +} -exports[`modules case \`values-10\` (\`modules\` value is \`local)\`: locals 1`] = ` -Object { - "black-selector": "_3xId28FIeFVmNWx5IWeWqN", - "header": "ODvOrT6QaJbrNxuVwTgHn", - "m-large": "(min-width: 960px)", - "s-black": "black-selector", - "v-primary": "#BF4040", +/* matches the element with id="©" */ +#localIdentName__©__jBj0sZiW { + color: black; } -`; -exports[`modules case \`values-10\` (\`modules\` value is \`local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ".ODvOrT6QaJbrNxuVwTgHn { - color: #BF4040; - padding: 0 10px; +.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; } -._3xId28FIeFVmNWx5IWeWqN { - color: black; +.localIdentName__foo\\\\\\\\bar__IgSzmmsC { + background: hotpink; } -@media (min-width: 960px) { - .ODvOrT6QaJbrNxuVwTgHn { - padding: 0 20px; - } +.localIdentName__foo\\\\/bar\\\\/baz__p6KJMhNW { + background: hotpink; } -", - "", - ], -] -`; -exports[`modules case \`values-10\` (\`modules\` value is \`local)\`: warnings 1`] = `Array []`; +.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; +} -exports[`modules case \`values-10\` (\`modules\` value is \`object with mode global)\`: errors 1`] = `Array []`; +.localIdentName___test__Lb3fhDAu { + background: blue; +} -exports[`modules case \`values-10\` (\`modules\` value is \`object with mode global)\`: locals 1`] = ` -Object { - "m-large": "(min-width: 960px)", - "s-black": "black-selector", - "v-primary": "#BF4040", +.localIdentName__className__LdhpkZRW { + background: red; } -`; -exports[`modules case \`values-10\` (\`modules\` value is \`object with mode global)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ".header { - color: #BF4040; - padding: 0 10px; +#localIdentName__someId__b0rhwJSt { + background: green; } -.black-selector { - color: black; +.localIdentName__className__LdhpkZRW .localIdentName__subClass__Mw9j4nId { + color: green; } -@media (min-width: 960px) { - .header { - padding: 0 20px; - } +#localIdentName__someId__b0rhwJSt .localIdentName__subClass__Mw9j4nId { + color: blue; } -", - "", - ], -] -`; -exports[`modules case \`values-10\` (\`modules\` value is \`object with mode global)\`: warnings 1`] = `Array []`; +.localIdentName__-a0-34a___f__DdFWMPol { + color: red; +} -exports[`modules case \`values-10\` (\`modules\` value is \`object with mode local)\`: errors 1`] = `Array []`; +.localIdentName__m_x_\\@__OdAmghrm { + margin-left: auto !important; + margin-right: auto !important; +} -exports[`modules case \`values-10\` (\`modules\` value is \`object with mode local)\`: locals 1`] = ` -Object { - "black-selector": "_black-selector", - "header": "_header", - "m-large": "(min-width: 960px)", - "s-black": "black-selector", - "v-primary": "#BF4040", +.localIdentName__B\\&W\\?__h4SEF34C { + margin-left: auto !important; + margin-right: auto !important; } -`; -exports[`modules case \`values-10\` (\`modules\` value is \`object with mode local)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._header { - color: #BF4040; - padding: 0 10px; +/* matches elements with class=":\`(" */ +.localIdentName__\\3A \\\`\\(__fKJQkLar { + color: aqua; } -._black-selector { - color: black; +/* matches elements with class="1a2b3c" */ +.localIdentName__\\31 a2b3c__YR1u_buY { + color: aliceblue; } -@media (min-width: 960px) { - ._header { - padding: 0 20px; - } +/* matches the element with id="#fake-id" */ +#localIdentName__\\#fake-id__AqiAGSfn { + color: antiquewhite; } -", - "", - ], -] -`; -exports[`modules case \`values-10\` (\`modules\` value is \`object with mode local)\`: warnings 1`] = `Array []`; +/* matches the element with id="-a-b-c-" */ +#localIdentName__-a-b-c-__CwXv27VM { + color: azure; +} -exports[`modules case \`values-10\` (\`modules\` value is \`true)\`: errors 1`] = `Array []`; +/* matches the element with id="©" */ +#localIdentName__©__jBj0sZiW { + color: black; +} -exports[`modules case \`values-10\` (\`modules\` value is \`true)\`: locals 1`] = ` -Object { - "black-selector": "_3xId28FIeFVmNWx5IWeWqN", - "header": "ODvOrT6QaJbrNxuVwTgHn", - "m-large": "(min-width: 960px)", - "s-black": "black-selector", - "v-primary": "#BF4040", +.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; } -`; -exports[`modules case \`values-10\` (\`modules\` value is \`true)\`: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ".ODvOrT6QaJbrNxuVwTgHn { - color: #BF4040; - padding: 0 10px; +.localIdentName__foo\\\\bar__IgSzmmsC { + background: hotpink; } -._3xId28FIeFVmNWx5IWeWqN { - color: black; +.localIdentName__foo\\/bar\\/baz__p6KJMhNW { + background: hotpink; } -@media (min-width: 960px) { - .ODvOrT6QaJbrNxuVwTgHn { - padding: 0 20px; - } +.localIdentName__foo\\\\bar\\\\baz__HZerWgmU { + background: hotpink; } ", "", @@ -5957,381 +8281,343 @@ Array [ ] `; -exports[`modules case \`values-10\` (\`modules\` value is \`true)\`: warnings 1`] = `Array []`; +exports[`"modules" option should work and respect the "localIdentRegExp" option: warnings 1`] = `[]`; -exports[`modules composes should supports resolving: errors 1`] = `Array []`; +exports[`"modules" option should work and respect the "path" placeholder: errors 1`] = `[]`; -exports[`modules composes should supports resolving: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - " -", - "", - ], - Array [ - 3, - " -", - "", - ], - Array [ - 4, - "._22ETk3ZhhvjVe-4dAULcsF { - display: block; -} -", - "", - ], - Array [ - 5, - ".dSGVakTZ8YY-XNW64tg9F { - display: inline; -} -", - "", - ], - Array [ - 6, - "._1SUuyapRQ82dAPS8r7zmpY { - display: flex; -} -", - "", - ], - Array [ - 7, - "._2n5szs-7uGKzfFTp9NTK64 { - display: inline-block; -} -", - "", - ], - Array [ - 8, - "._37nzOIvIANGnEtP1lWjZDN { - display: table; -} -", - "", - ], - Array [ - 9, - "._2Nehoi0wFTN-8p0fEfvUYd { - d: d; -} -", - "(min-width: 100px)", - ], - Array [ - 1, - "._14uFt0lIVKKAlKTTT29IIQ { - color: red; +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; } -._3XDgIzfUIQkaUInpEdo7fN { - color: blue; +.fixtures-modules-localIdentName-localIdentName___test { + background: blue; } -._1wABXM_RabWHj--wsPrhvM { - display: block; +.fixtures-modules-localIdentName-localIdentName__className { + background: red; } -._1DFEYnAfn9LZyk4fErI86e { - width: 2112moon; +#fixtures-modules-localIdentName-localIdentName__someId { + background: green; } -.Ywv5coVC2RU-pIFhN9O4w { +.fixtures-modules-localIdentName-localIdentName__className .fixtures-modules-localIdentName-localIdentName__subClass { color: green; } -._1tAbIwITRWAdZZE6wKNk9O { - prop: red; - duplicate: green; +#fixtures-modules-localIdentName-localIdentName__someId .fixtures-modules-localIdentName-localIdentName__subClass { + color: blue; } -.Q3SQ3BwtBwUFLlg6adzOI { +.fixtures-modules-localIdentName-localIdentName__-a0-34a___f { color: red; } -._1n5XhXj4SFnYrwziC3un0d { - color: yellow; +.fixtures-modules-localIdentName-localIdentName__m_x_\\\\@ { + margin-left: auto !important; + margin-right: auto !important; } -._3dnFnGkAVAiMA6etF-naHc { - color: gray; +.fixtures-modules-localIdentName-localIdentName__B\\\\&W\\\\? { + margin-left: auto !important; + margin-right: auto !important; } -._1xUePnlnafMQ1cExy3PUWT { - color: gray; +/* matches elements with class=":\\\`(" */ +.fixtures-modules-localIdentName-localIdentName__\\\\3A \\\\\\\`\\\\( { + color: aqua; } -._26Jdfenl9Xn8HXwb2jipvt { - color: gainsboro; +/* matches elements with class="1a2b3c" */ +.fixtures-modules-localIdentName-localIdentName__\\\\31 a2b3c { + color: aliceblue; } -._1ya4VhsDkuPhQeVHQydw2Y { - color: #BF4040; +/* matches the element with id="#fake-id" */ +#fixtures-modules-localIdentName-localIdentName__\\\\#fake-id { + color: antiquewhite; } -.sGE1Q_LliVEZU2Q4q9j4K { - color: black; +/* matches the element with id="-a-b-c-" */ +#fixtures-modules-localIdentName-localIdentName__-a-b-c- { + color: azure; } -@media (min-width: 960px) { - ._2zSMJ4hQh0FesbZjiKW_ya { - padding: 0 20px; - } +/* matches the element with id="©" */ +#fixtures-modules-localIdentName-localIdentName__© { + color: black; } -.white { - color: white; +.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; } -@media (min-width: 320px) { - ._2zSMJ4hQh0FesbZjiKW_ya { - padding: 20px 20px; - } +.fixtures-modules-localIdentName-localIdentName__foo\\\\\\\\bar { + background: hotpink; } -@value v-comment: /* comment */; -._3qS0_85PLYhk_pNQ69KfSo { - 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%; +.fixtures-modules-localIdentName-localIdentName__foo\\\\/bar\\\\/baz { + background: hotpink; } - -a { - content: 'content'; +.fixtures-modules-localIdentName-localIdentName__foo\\\\\\\\bar\\\\\\\\baz { + background: hotpink; } - -@supports (content: 'content') { - a { - content: 'content'; - } +\`, ""]); +// 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; } -[class~='content'] { - color:green; +.fixtures-modules-localIdentName-localIdentName___test { + background: blue; } -", - "", - ], -] -`; - -exports[`modules composes should supports resolving: module 1`] = ` -"exports = module.exports = require(\\"../../../src/runtime/api.js\\")(false); -// Imports -exports.i(require(\\"-!../../../src/index.js??ref--4-0!./values.css\\"), \\"\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!./something.css\\"), \\"\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!./imported-simple.css\\"), \\"\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!./relative.css\\"), \\"\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!../modules/top-relative.css\\"), \\"\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!package/style.css\\"), \\"\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!aliasesComposes/alias.css\\"), \\"\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!./test-other.css\\"), \\"(min-width: 100px)\\"); -// Module -exports.push([module.id, \\"._14uFt0lIVKKAlKTTT29IIQ {\\\\n color: \\" + require(\\"-!../../../src/index.js??ref--4-0!./values.css\\").locals[\\"v-def\\"] + \\";\\\\n}\\\\n\\\\n._3XDgIzfUIQkaUInpEdo7fN {\\\\n color: blue;\\\\n}\\\\n\\\\n._1wABXM_RabWHj--wsPrhvM {\\\\n display: block;\\\\n}\\\\n\\\\n._1DFEYnAfn9LZyk4fErI86e {\\\\n width: \\" + require(\\"-!../../../src/index.js??ref--4-0!./something.css\\").locals[\\"v-something\\"] + \\";\\\\n}\\\\n\\\\n.Ywv5coVC2RU-pIFhN9O4w {\\\\n color: \\" + require(\\"-!../../../src/index.js??ref--4-0!./values.css\\").locals[\\"v-other\\"] + \\";\\\\n}\\\\n\\\\n._1tAbIwITRWAdZZE6wKNk9O {\\\\n prop: \\" + require(\\"-!../../../src/index.js??ref--4-0!./values.css\\").locals[\\"v-def\\"] + \\";\\\\n duplicate: \\" + require(\\"-!../../../src/index.js??ref--4-0!./values.css\\").locals[\\"v-other\\"] + \\";\\\\n}\\\\n\\\\n.Q3SQ3BwtBwUFLlg6adzOI {\\\\n color: red;\\\\n}\\\\n\\\\n._1n5XhXj4SFnYrwziC3un0d {\\\\n color: yellow;\\\\n}\\\\n\\\\n._3dnFnGkAVAiMA6etF-naHc {\\\\n color: gray;\\\\n}\\\\n\\\\n._1xUePnlnafMQ1cExy3PUWT {\\\\n color: gray;\\\\n}\\\\n\\\\n._26Jdfenl9Xn8HXwb2jipvt {\\\\n color: gainsboro;\\\\n}\\\\n\\\\n._1ya4VhsDkuPhQeVHQydw2Y {\\\\n color: #BF4040;\\\\n}\\\\n\\\\n.sGE1Q_LliVEZU2Q4q9j4K {\\\\n color: black;\\\\n}\\\\n\\\\n@media (min-width: 960px) {\\\\n ._2zSMJ4hQh0FesbZjiKW_ya {\\\\n padding: 0 20px;\\\\n }\\\\n}\\\\n\\\\n.\\" + require(\\"-!../../../src/index.js??ref--4-0!./values.css\\").locals[\\"s-white\\"] + \\" {\\\\n color: white;\\\\n}\\\\n\\\\n@media \\" + require(\\"-!../../../src/index.js??ref--4-0!./values.css\\").locals[\\"m-small\\"] + \\" {\\\\n ._2zSMJ4hQh0FesbZjiKW_ya {\\\\n padding: 20px 20px;\\\\n }\\\\n}\\\\n@value v-comment: /* comment */;\\\\n\\\\n._3qS0_85PLYhk_pNQ69KfSo {\\\\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\\", \\"\\"]); -// Exports -exports.locals = { - \\"v-def\\": \\"\\" + require(\\"-!../../../src/index.js??ref--4-0!./values.css\\").locals[\\"v-def\\"] + \\"\\", - \\"v-other\\": \\"\\" + require(\\"-!../../../src/index.js??ref--4-0!./values.css\\").locals[\\"v-other\\"] + \\"\\", - \\"s-white\\": \\"\\" + require(\\"-!../../../src/index.js??ref--4-0!./values.css\\").locals[\\"s-white\\"] + \\"\\", - \\"m-small\\": \\"\\" + require(\\"-!../../../src/index.js??ref--4-0!./values.css\\").locals[\\"m-small\\"] + \\"\\", - \\"v-something\\": \\"\\" + require(\\"-!../../../src/index.js??ref--4-0!./something.css\\").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\\": \\"_14uFt0lIVKKAlKTTT29IIQ\\", - \\"class\\": \\"_3XDgIzfUIQkaUInpEdo7fN\\", - \\"other\\": \\"_1wABXM_RabWHj--wsPrhvM\\", - \\"other-other\\": \\"_1DFEYnAfn9LZyk4fErI86e\\", - \\"green\\": \\"Ywv5coVC2RU-pIFhN9O4w\\", - \\"foo\\": \\"_1tAbIwITRWAdZZE6wKNk9O\\", - \\"simple\\": \\"Q3SQ3BwtBwUFLlg6adzOI \\" + require(\\"-!../../../src/index.js??ref--4-0!./imported-simple.css\\").locals[\\"imported-simple\\"] + \\"\\", - \\"relative\\": \\"_1n5XhXj4SFnYrwziC3un0d \\" + require(\\"-!../../../src/index.js??ref--4-0!./relative.css\\").locals[\\"imported-relative\\"] + \\"\\", - \\"top-relative\\": \\"_3dnFnGkAVAiMA6etF-naHc \\" + require(\\"-!../../../src/index.js??ref--4-0!../modules/top-relative.css\\").locals[\\"imported-relative\\"] + \\"\\", - \\"module\\": \\"_1xUePnlnafMQ1cExy3PUWT \\" + require(\\"-!../../../src/index.js??ref--4-0!package/style.css\\").locals[\\"imported-module\\"] + \\"\\", - \\"alias\\": \\"_26Jdfenl9Xn8HXwb2jipvt \\" + require(\\"-!../../../src/index.js??ref--4-0!aliasesComposes/alias.css\\").locals[\\"imported-alias\\"] + \\"\\", - \\"primary-selector\\": \\"_1ya4VhsDkuPhQeVHQydw2Y\\", - \\"black-selector\\": \\"sGE1Q_LliVEZU2Q4q9j4K\\", - \\"header\\": \\"_2zSMJ4hQh0FesbZjiKW_ya\\", - \\"foobarbaz\\": \\"_3qS0_85PLYhk_pNQ69KfSo\\" -};" -`; -exports[`modules composes should supports resolving: warnings 1`] = `Array []`; - -exports[`modules getLocalIdent should be allowed to return false: errors 1`] = `Array []`; +.fixtures-modules-localIdentName-localIdentName__className { + background: red; +} -exports[`modules getLocalIdent should be allowed to return false: locals 1`] = ` -Object { - "abc": "abc", - "def": "def", - "ghi": "ghi", - "jkl": "jkl", +#fixtures-modules-localIdentName-localIdentName__someId { + background: green; } -`; -exports[`modules getLocalIdent should be allowed to return false: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ".abc .def { - color: red; +.fixtures-modules-localIdentName-localIdentName__className .fixtures-modules-localIdentName-localIdentName__subClass { + color: green; } -.ghi .jkl { +#fixtures-modules-localIdentName-localIdentName__someId .fixtures-modules-localIdentName-localIdentName__subClass { color: blue; } -", - "", - ], -] -`; -exports[`modules getLocalIdent should be allowed to return false: warnings 1`] = `Array []`; - -exports[`modules issue #286: errors 1`] = `Array []`; +.fixtures-modules-localIdentName-localIdentName__-a0-34a___f { + color: red; +} -exports[`modules issue #286: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - ".a--red { color: red } -", - "", - ], - Array [ - 1, - ".b--main { } -", - "", - ], -] -`; +.fixtures-modules-localIdentName-localIdentName__m_x_\\@ { + margin-left: auto !important; + margin-right: auto !important; +} -exports[`modules issue #286: module 1`] = ` -"exports = module.exports = require(\\"../../../../src/runtime/api.js\\")(false); -// Imports -exports.i(require(\\"./dep.css\\"), \\"\\"); -// Module -exports.push([module.id, \\".b--main { }\\\\n\\", \\"\\"]); -// Exports -exports.locals = { - \\"main\\": \\"b--main \\" + require(\\"./dep.css\\").locals[\\"red\\"] + \\"\\" -};" -`; +.fixtures-modules-localIdentName-localIdentName__B\\&W\\? { + margin-left: auto !important; + margin-right: auto !important; +} -exports[`modules issue #286: warnings 1`] = `Array []`; +/* matches elements with class=":\`(" */ +.fixtures-modules-localIdentName-localIdentName__\\3A \\\`\\( { + color: aqua; +} -exports[`modules issue #636: errors 1`] = `Array []`; +/* matches elements with class="1a2b3c" */ +.fixtures-modules-localIdentName-localIdentName__\\31 a2b3c { + color: aliceblue; +} -exports[`modules issue #636: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - ".prefix-foo { - color: red; -}", - "", - ], - Array [ - 1, - ".prefix-bar { -}", - "", - ], -] -`; +/* matches the element with id="#fake-id" */ +#fixtures-modules-localIdentName-localIdentName__\\#fake-id { + color: antiquewhite; +} -exports[`modules issue #636: module 1`] = ` -"exports = module.exports = require(\\"../../../../src/runtime/api.js\\")(false); -// Imports -exports.i(require(\\"-!../../../../src/index.js??ref--4-0!../../../../node_modules/sass-loader/lib/loader.js??ref--4-1!./foo.scss\\"), \\"\\"); -// Module -exports.push([module.id, \\".prefix-bar {\\\\n}\\", \\"\\"]); -// Exports -exports.locals = { - \\"bar\\": \\"prefix-bar \\" + require(\\"-!../../../../src/index.js??ref--4-0!../../../../node_modules/sass-loader/lib/loader.js??ref--4-1!./foo.scss\\").locals[\\"foo\\"] + \\"\\" -};" -`; +/* matches the element with id="-a-b-c-" */ +#fixtures-modules-localIdentName-localIdentName__-a-b-c- { + color: azure; +} -exports[`modules issue #636: warnings 1`] = `Array []`; +/* matches the element with id="©" */ +#fixtures-modules-localIdentName-localIdentName__© { + color: black; +} -exports[`modules issue #861: errors 1`] = `Array []`; +.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; +} -exports[`modules issue #861: module (evaluated) 1`] = ` -Array [ - Array [ - 2, - " -", - "", - ], - Array [ - 4, - "._1ef5Heix1Kf4k0qYvyWRRO { - display: flex; +.fixtures-modules-localIdentName-localIdentName__foo\\\\bar { + background: hotpink; } -", - "", - ], - Array [ - 3, - ".L8pnpYm5VAu49S290uPMA { - color: red; - margin: 0; - padding: 0; + +.fixtures-modules-localIdentName-localIdentName__foo\\/bar\\/baz { + background: hotpink; } -", - "", - ], - Array [ - 1, - "._2gV2e6TcHcPgyDTzxbvkKa { - color: gray; - margin: 0; - padding: 0; + +.fixtures-modules-localIdentName-localIdentName__foo\\\\bar\\\\baz { + background: hotpink; } ", "", @@ -6339,134 +8625,100 @@ Array [ ] `; -exports[`modules issue #861: module 1`] = ` -"exports = module.exports = require(\\"../../../src/runtime/api.js\\")(false); -// Imports -exports.i(require(\\"-!../../../src/index.js??ref--4-0!@localpackage/color.css\\"), \\"\\"); -exports.i(require(\\"-!../../../src/index.js??ref--4-0!@localpackage/style.css\\"), \\"\\"); -// Module -exports.push([module.id, \\"._2gV2e6TcHcPgyDTzxbvkKa {\\\\n color: \\" + require(\\"-!../../../src/index.js??ref--4-0!@localpackage/color.css\\").locals[\\"color-grey\\"] + \\";\\\\n margin: 0;\\\\n padding: 0;\\\\n}\\\\n\\", \\"\\"]); -// Exports -exports.locals = { - \\"color-grey\\": \\"\\" + require(\\"-!../../../src/index.js??ref--4-0!@localpackage/color.css\\").locals[\\"color-grey\\"] + \\"\\", - \\"copyright\\": \\"_2gV2e6TcHcPgyDTzxbvkKa \\" + require(\\"-!../../../src/index.js??ref--4-0!@localpackage/style.css\\").locals[\\"type-heading\\"] + \\"\\" -};" -`; - -exports[`modules issue #861: warnings 1`] = `Array []`; +exports[`"modules" option should work and respect the "path" placeholder: warnings 1`] = `[]`; -exports[`modules issue #966: errors 1`] = `Array []`; +exports[`"modules" option should work and respect the \`localConvention\` option with the "as-is" value: errors 1`] = `[]`; -exports[`modules issue #966: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ".button.hey { - color: red; +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; } -", - "", - ], -] -`; -exports[`modules issue #966: module 1`] = ` -"exports = module.exports = require(\\"../../../../src/runtime/api.js\\")(false); -// Module -exports.push([module.id, \\".button.hey {\\\\n color: red;\\\\n}\\\\n\\", \\"\\"]); -// Exports -exports.locals = { - \\"button\\": \\"button.hey\\" -};" -`; +.AooVHuvzAIGXWngdfslc { + color: blue; +} -exports[`modules issue #966: warnings 1`] = `Array []`; +.snmJCrfw3LVnrlx87XVC { + color: red; +} -exports[`modules issue #967: errors 1`] = `Array []`; +a { + color: yellow; +} -exports[`modules issue #967: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ".modules-path-placeholder__foo__--sep---sep---sep---sep----sep---sep---sep---sep---sep-- { +.vA4oeh0XymefKJVIJyg1 { color: red; } -.modules-path-placeholder__foo\\\\/bar__--sep---sep---sep---sep----sep---sep---sep---sep---sep-- { - color: blue; +.mDiC1MIOTWjgsd86woaJ { + color: red; } -.modules-path-placeholder__\\\\[\\\\/\\\\?\\\\<\\\\>\\\\\\\\\\\\\\\\\\\\3A \\\\*\\\\|\\\\\\"\\\\3A \\\\]__--sep---sep---sep---sep----sep---sep---sep---sep---sep-- { - color: yellow; +.kY3VVFqpzmTiFlxOd9KU { + color: red; } -", - "", - ], -] -`; -exports[`modules issue #967: module 1`] = ` -"exports = module.exports = require(\\"../../../src/runtime/api.js\\")(false); -// Module -exports.push([module.id, \\".modules-path-placeholder__foo__--sep---sep---sep---sep----sep---sep---sep---sep---sep-- {\\\\n color: red;\\\\n}\\\\n\\\\n.modules-path-placeholder__foo\\\\\\\\/bar__--sep---sep---sep---sep----sep---sep---sep---sep---sep-- {\\\\n color: blue;\\\\n}\\\\n\\\\n.modules-path-placeholder__\\\\\\\\[\\\\\\\\/\\\\\\\\?\\\\\\\\<\\\\\\\\>\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\3A \\\\\\\\*\\\\\\\\|\\\\\\\\\\\\\\"\\\\\\\\3A \\\\\\\\]__--sep---sep---sep---sep----sep---sep---sep---sep---sep-- {\\\\n color: yellow;\\\\n}\\\\n\\", \\"\\"]); +.eiLdMC_n9TCXQ0oPIJyI { + color: red; +} +\`, ""]); // Exports -exports.locals = { - \\"foo\\": \\"modules-path-placeholder__foo__--sep---sep---sep---sep----sep---sep---sep---sep---sep--\\", - \\"foo/bar\\": \\"modules-path-placeholder__foo/bar__--sep---sep---sep---sep----sep---sep---sep---sep---sep--\\", - \\"[/?<>\\\\\\\\\\\\\\\\:*|\\\\\\":]\\": \\"modules-path-placeholder__[/?<>\\\\\\\\\\\\\\\\:*|\\\\\\":]__--sep---sep---sep---sep----sep---sep---sep---sep---sep--\\" -};" -`; - -exports[`modules issue #967: warnings 1`] = `Array []`; +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; +} -exports[`modules issue #980: errors 1`] = `Array []`; +.AooVHuvzAIGXWngdfslc { + color: blue; +} -exports[`modules issue #980: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ".file-with-many-dots-in-name_a_1j0Lw { +.snmJCrfw3LVnrlx87XVC { color: red; } -", - "", - ], -] -`; - -exports[`modules issue #980: module 1`] = ` -"exports = module.exports = require(\\"../../../src/runtime/api.js\\")(false); -// Module -exports.push([module.id, \\".file-with-many-dots-in-name_a_1j0Lw {\\\\n color: red;\\\\n}\\\\n\\", \\"\\"]); -// Exports -exports.locals = { - \\"a\\": \\"file-with-many-dots-in-name_a_1j0Lw\\" -};" -`; -exports[`modules issue #980: warnings 1`] = `Array []`; +a { + color: yellow; +} -exports[`modules should accepts all arguments for getLocalIdent option: errors 1`] = `Array []`; +.vA4oeh0XymefKJVIJyg1 { + color: red; +} -exports[`modules should accepts all arguments for getLocalIdent option: locals 1`] = ` -Object { - "abc": "foo", - "def": "foo", - "ghi": "foo", - "jkl": "foo", +.mDiC1MIOTWjgsd86woaJ { + color: red; } -`; -exports[`modules should accepts all arguments for getLocalIdent option: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ".foo .foo { +.kY3VVFqpzmTiFlxOd9KU { color: red; } -.foo .foo { - color: blue; +.eiLdMC_n9TCXQ0oPIJyI { + color: red; } ", "", @@ -6474,178 +8726,98 @@ Array [ ] `; -exports[`modules should accepts all arguments for getLocalIdent option: warnings 1`] = `Array []`; - -exports[`modules should correctly replace escaped symbols in selector with localIdentName option: errors 1`] = `Array []`; - -exports[`modules should correctly replace escaped symbols in selector with localIdentName option: locals 1`] = ` -Object { - "#": "#--1cQh", - "##": "##--1u97", - "#.#.#": "#.#.#--2QoP", - "#fake-id": "#fake-id--1d23", - "++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.": "++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.--2vJ9", - "-a-b-c-": "-a-b-c---opia", - "-a0-34a___f": "-a0-34a___f--2nJ5", - ".": ".--2hyg", - "123": "123--jOxY", - "1a2b3c": "1a2b3c--1_Xs", - ":)": ":)--2tSN", - ":\`(": ":\`(--3G_T", - ":hover": ":hover--1EAJ", - ":hover:focus:active": ":hover:focus:active--1v8f", - "<><<<>><>": "<><<<>><>--2mic", - "

": "

--dDVm", - "?": "?--2DX4", - "@": "@--mE1z", - "B&W?": "B&W?--1s8i", - "[attr=value]": "[attr=value]--2y3U", - "_": "_--2vOX", - "_test": "_test--23te", - "className": "className--1E8H", - "f!o!o": "f!o!o--3x3B", - "f'o'o": "f'o'o--2fVl", - "f*o*o": "f*o*o--3sRc", - "f+o+o": "f+o+o--38BA", - "f/o/o": "f/o/o--OYOz", - "f\\\\o\\\\o": "f\\\\o\\\\o--1Knj", - "foo.bar": "foo.bar--3ZJa", - "foo/bar": "foo/bar--36uD", - "foo/bar/baz": "foo/bar/baz--oTEb", - "foo\\\\bar": "foo\\\\bar--2KL0", - "foo\\\\bar\\\\baz": "foo\\\\bar\\\\baz--2Id2", - "f~o~o": "f~o~o--lYb3", - "m_x_@": "m_x_@--2G3b", - "someId": "someId--3w7J", - "subClass": "subClass--3lo0", - "test": "test--NW9Y", - "{}": "{}--3lRh", - "©": "©--143H", - "“‘’”": "“‘’”--2yW9", - "⌘⌥": "⌘⌥--6z9v", - "☺☃": "☺☃--3sW7", - "♥": "♥--8xlN", - "𝄞♪♩♫♬": "𝄞♪♩♫♬--1JEq", - "💩": "💩--2i25", -} -`; - -exports[`modules should correctly replace escaped symbols in selector with localIdentName option: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ".test--NW9Y { - background: red; -} +exports[`"modules" option should work and respect the \`localConvention\` option with the "as-is" value: warnings 1`] = `[]`; -._test--23te { - background: blue; -} +exports[`"modules" option should work and respect the \`localConvention\` option with the \`as-is\` value and \`namedExport\` is \`false\`: errors 1`] = `[]`; -.className--1E8H { - background: red; +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; } -#someId--3w7J { - background: green; +.AooVHuvzAIGXWngdfslc { + color: blue; } -.className--1E8H .subClass--3lo0 { - color: green; +.snmJCrfw3LVnrlx87XVC { + color: red; } -#someId--3w7J .subClass--3lo0 { - color: blue; +a { + color: yellow; } -.-a0-34a___f--2nJ5 { +.vA4oeh0XymefKJVIJyg1 { color: red; } -.m_x_\\\\@--2G3b { - margin-left: auto !important; - margin-right: auto !important; +.mDiC1MIOTWjgsd86woaJ { + color: red; } -.B\\\\&W\\\\?--1s8i { - margin-left: auto !important; - margin-right: auto !important; +.kY3VVFqpzmTiFlxOd9KU { + color: red; } -/* matches elements with class=\\":\`(\\" */ -.\\\\3A \\\\\`\\\\(--3G_T { - color: aqua; +.eiLdMC_n9TCXQ0oPIJyI { + color: red; } - -/* matches elements with class=\\"1a2b3c\\" */ -.\\\\31 a2b3c--1_Xs { - color: aliceblue; +\`, ""]); +// 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; } -/* matches the element with id=\\"#fake-id\\" */ -#\\\\#fake-id--1d23 { - color: antiquewhite; +.AooVHuvzAIGXWngdfslc { + color: blue; } -/* matches the element with id=\\"-a-b-c-\\" */ -#-a-b-c---opia { - color: azure; +.snmJCrfw3LVnrlx87XVC { + color: red; } -/* matches the element with id=\\"©\\" */ -#©--143H { - color: black; +a { + color: yellow; } -.♥--8xlN { background: lime; } -.©--143H { background: lime; } -.“‘’”--2yW9 { background: lime; } -.☺☃--3sW7 { background: lime; } -.⌘⌥--6z9v { background: lime; } -.𝄞♪♩♫♬--1JEq { background: lime; } -.💩--2i25 { background: lime; } -.\\\\?--2DX4 { background: lime; } -.\\\\@--mE1z { background: lime; } -.\\\\.--2hyg { background: lime; } -.\\\\3A \\\\)--2tSN { background: lime; } -.\\\\3A \\\\\`\\\\(--3G_T { background: lime; } -.\\\\31 23--jOxY { background: lime; } -.\\\\31 a2b3c--1_Xs { background: lime; } -.\\\\--dDVm { background: lime; } -.\\\\<\\\\>\\\\<\\\\<\\\\<\\\\>\\\\>\\\\<\\\\>--2mic { background: lime; } -.\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\[\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\>\\\\+\\\\<\\\\<\\\\<\\\\<\\\\-\\\\]\\\\>\\\\+\\\\+\\\\.\\\\>\\\\+\\\\.\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\.\\\\+\\\\+\\\\+\\\\.\\\\>\\\\+\\\\+\\\\.\\\\<\\\\<\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\>\\\\.\\\\+\\\\+\\\\+\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\>\\\\+\\\\.\\\\>\\\\.--2vJ9 { background: lime; } -.\\\\#--1cQh { background: lime; } -.\\\\#\\\\#--1u97 { background: lime; } -.\\\\#\\\\.\\\\#\\\\.\\\\#--2QoP { background: lime; } -.\\\\_--2vOX { background: lime; } -.\\\\{\\\\}--3lRh { background: lime; } -.\\\\#fake\\\\-id--1d23 { background: lime; } -.foo\\\\.bar--3ZJa { background: lime; } -.\\\\3A hover--1EAJ { background: lime; } -.\\\\3A hover\\\\3A focus\\\\3A active--1v8f { background: lime; } -.\\\\[attr\\\\=value\\\\]--2y3U { background: lime; } -.f\\\\/o\\\\/o--OYOz { background: lime; } -.f\\\\\\\\o\\\\\\\\o--1Knj { background: lime; } -.f\\\\*o\\\\*o--3sRc { background: lime; } -.f\\\\!o\\\\!o--3x3B { background: lime; } -.f\\\\'o\\\\'o--2fVl { background: lime; } -.f\\\\~o\\\\~o--lYb3 { background: lime; } -.f\\\\+o\\\\+o--38BA { background: lime; } - -.foo\\\\/bar--36uD { - background: hotpink; +.vA4oeh0XymefKJVIJyg1 { + color: red; } -.foo\\\\\\\\bar--2KL0 { - background: hotpink; +.mDiC1MIOTWjgsd86woaJ { + color: red; } -.foo\\\\/bar\\\\/baz--oTEb { - background: hotpink; +.kY3VVFqpzmTiFlxOd9KU { + color: red; } -.foo\\\\\\\\bar\\\\\\\\baz--2Id2 { - background: hotpink; +.eiLdMC_n9TCXQ0oPIJyI { + color: red; } ", "", @@ -6653,208 +8825,98 @@ Array [ ] `; -exports[`modules should correctly replace escaped symbols in selector with localIdentName option: warnings 1`] = `Array []`; +exports[`"modules" option should work and respect the \`localConvention\` option with the \`as-is\` value and \`namedExport\` is \`false\`: warnings 1`] = `[]`; -exports[`modules should have an undefined context if no context was given: errors 1`] = `Array []`; +exports[`"modules" option should work and respect the \`localConvention\` option with the \`camel-case-only\` value and \`namedExport\` false: errors 1`] = `[]`; -exports[`modules should have an undefined context if no context was given: locals 1`] = ` -Object { - "abc": "foo", - "def": "foo", - "ghi": "foo", - "jkl": "foo", +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; } -`; -exports[`modules should have an undefined context if no context was given: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ".foo .foo { - color: red; -} - -.foo .foo { +.AooVHuvzAIGXWngdfslc { color: blue; } -", - "", - ], -] -`; - -exports[`modules should have an undefined context if no context was given: warnings 1`] = `Array []`; - -exports[`modules should prefixes leading hyphen + digit with underscore with localIdentName option: errors 1`] = `Array []`; - -exports[`modules should prefixes leading hyphen + digit with underscore with localIdentName option: locals 1`] = ` -Object { - "#": "_-1#", - "##": "_-1##", - "#.#.#": "_-1#.#.#", - "#fake-id": "_-1#fake-id", - "++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.": "_-1++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.", - "-a-b-c-": "_-1-a-b-c-", - "-a0-34a___f": "_-1-a0-34a___f", - ".": "_-1.", - "123": "_-1123", - "1a2b3c": "_-11a2b3c", - ":)": "_-1:)", - ":\`(": "_-1:\`(", - ":hover": "_-1:hover", - ":hover:focus:active": "_-1:hover:focus:active", - "<><<<>><>": "_-1<><<<>><>", - "

": "_-1

", - "?": "_-1?", - "@": "_-1@", - "B&W?": "_-1B&W?", - "[attr=value]": "_-1[attr=value]", - "_": "_-1_", - "_test": "_-1_test", - "className": "_-1className", - "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": "_-1foo\\\\bar", - "foo\\\\bar\\\\baz": "_-1foo\\\\bar\\\\baz", - "f~o~o": "_-1f~o~o", - "m_x_@": "_-1m_x_@", - "someId": "_-1someId", - "subClass": "_-1subClass", - "test": "_-1test", - "{}": "_-1{}", - "©": "_-1©", - "“‘’”": "_-1“‘’”", - "⌘⌥": "_-1⌘⌥", - "☺☃": "_-1☺☃", - "♥": "_-1♥", - "𝄞♪♩♫♬": "_-1𝄞♪♩♫♬", - "💩": "_-1💩", -} -`; - -exports[`modules should prefixes leading hyphen + digit with underscore with localIdentName option: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._-1test { - background: red; -} - -._-1_test { - background: blue; -} - -._-1className { - background: red; -} - -#_-1someId { - background: green; -} -._-1className ._-1subClass { - color: green; +.snmJCrfw3LVnrlx87XVC { + color: red; } -#_-1someId ._-1subClass { - color: blue; +a { + color: yellow; } -._-1-a0-34a___f { +.vA4oeh0XymefKJVIJyg1 { color: red; } -._-1m_x_\\\\@ { - margin-left: auto !important; - margin-right: auto !important; +.mDiC1MIOTWjgsd86woaJ { + color: red; } -._-1B\\\\&W\\\\? { - margin-left: auto !important; - margin-right: auto !important; +.kY3VVFqpzmTiFlxOd9KU { + color: red; } -/* matches elements with class=\\":\`(\\" */ -._-1\\\\3A \\\\\`\\\\( { - color: aqua; +.eiLdMC_n9TCXQ0oPIJyI { + color: red; } - -/* matches elements with class=\\"1a2b3c\\" */ -._-1\\\\31 a2b3c { - color: aliceblue; +\`, ""]); +// 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; } -/* matches the element with id=\\"#fake-id\\" */ -#_-1\\\\#fake-id { - color: antiquewhite; +.AooVHuvzAIGXWngdfslc { + color: blue; } -/* matches the element with id=\\"-a-b-c-\\" */ -#_-1-a-b-c- { - color: azure; +.snmJCrfw3LVnrlx87XVC { + color: red; } -/* matches the element with id=\\"©\\" */ -#_-1© { - color: black; +a { + color: yellow; } -._-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; +.vA4oeh0XymefKJVIJyg1 { + color: red; } -._-1foo\\\\\\\\bar { - background: hotpink; +.mDiC1MIOTWjgsd86woaJ { + color: red; } -._-1foo\\\\/bar\\\\/baz { - background: hotpink; +.kY3VVFqpzmTiFlxOd9KU { + color: red; } -._-1foo\\\\\\\\bar\\\\\\\\baz { - background: hotpink; +.eiLdMC_n9TCXQ0oPIJyI { + color: red; } ", "", @@ -6862,178 +8924,97 @@ Array [ ] `; -exports[`modules should prefixes leading hyphen + digit with underscore with localIdentName option: warnings 1`] = `Array []`; - -exports[`modules should prefixes two leading hyphens with underscore with localIdentName option: errors 1`] = `Array []`; - -exports[`modules should prefixes two leading hyphens with underscore with localIdentName option: locals 1`] = ` -Object { - "#": "_--#", - "##": "_--##", - "#.#.#": "_--#.#.#", - "#fake-id": "_--#fake-id", - "++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.": "_--++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.", - "-a-b-c-": "_---a-b-c-", - "-a0-34a___f": "_---a0-34a___f", - ".": "_--.", - "123": "_--123", - "1a2b3c": "_--1a2b3c", - ":)": "_--:)", - ":\`(": "_--:\`(", - ":hover": "_--:hover", - ":hover:focus:active": "_--:hover:focus:active", - "<><<<>><>": "_--<><<<>><>", - "

": "_--

", - "?": "_--?", - "@": "_--@", - "B&W?": "_--B&W?", - "[attr=value]": "_--[attr=value]", - "_": "_--_", - "_test": "_--_test", - "className": "_--className", - "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": "_--foo\\\\bar", - "foo\\\\bar\\\\baz": "_--foo\\\\bar\\\\baz", - "f~o~o": "_--f~o~o", - "m_x_@": "_--m_x_@", - "someId": "_--someId", - "subClass": "_--subClass", - "test": "_--test", - "{}": "_--{}", - "©": "_--©", - "“‘’”": "_--“‘’”", - "⌘⌥": "_--⌘⌥", - "☺☃": "_--☺☃", - "♥": "_--♥", - "𝄞♪♩♫♬": "_--𝄞♪♩♫♬", - "💩": "_--💩", -} -`; - -exports[`modules should prefixes two leading hyphens with underscore with localIdentName option: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._--test { - background: red; -} +exports[`"modules" option should work and respect the \`localConvention\` option with the \`camel-case-only\` value and \`namedExport\` false: warnings 1`] = `[]`; -._--_test { - background: blue; -} +exports[`"modules" option should work and respect the \`localConvention\` option with the \`camel-case-only\` value: errors 1`] = `[]`; -._--className { - background: red; +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; } -#_--someId { - background: green; +.AooVHuvzAIGXWngdfslc { + color: blue; } -._--className ._--subClass { - color: green; +.snmJCrfw3LVnrlx87XVC { + color: red; } -#_--someId ._--subClass { - color: blue; +a { + color: yellow; } -._---a0-34a___f { +.vA4oeh0XymefKJVIJyg1 { color: red; } -._--m_x_\\\\@ { - margin-left: auto !important; - margin-right: auto !important; +.mDiC1MIOTWjgsd86woaJ { + color: red; } -._--B\\\\&W\\\\? { - margin-left: auto !important; - margin-right: auto !important; +.kY3VVFqpzmTiFlxOd9KU { + color: red; } -/* matches elements with class=\\":\`(\\" */ -._--\\\\3A \\\\\`\\\\( { - color: aqua; +.eiLdMC_n9TCXQ0oPIJyI { + color: red; } - -/* matches elements with class=\\"1a2b3c\\" */ -._--\\\\31 a2b3c { - color: aliceblue; +\`, ""]); +// 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; } -/* matches the element with id=\\"#fake-id\\" */ -#_--\\\\#fake-id { - color: antiquewhite; +.AooVHuvzAIGXWngdfslc { + color: blue; } -/* matches the element with id=\\"-a-b-c-\\" */ -#_---a-b-c- { - color: azure; +.snmJCrfw3LVnrlx87XVC { + color: red; } -/* matches the element with id=\\"©\\" */ -#_--© { - color: black; +a { + color: yellow; } -._--♥ { 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; +.vA4oeh0XymefKJVIJyg1 { + color: red; } -._--foo\\\\\\\\bar { - background: hotpink; +.mDiC1MIOTWjgsd86woaJ { + color: red; } -._--foo\\\\/bar\\\\/baz { - background: hotpink; +.kY3VVFqpzmTiFlxOd9KU { + color: red; } -._--foo\\\\\\\\bar\\\\\\\\baz { - background: hotpink; +.eiLdMC_n9TCXQ0oPIJyI { + color: red; } ", "", @@ -7041,178 +9022,102 @@ Array [ ] `; -exports[`modules should prefixes two leading hyphens with underscore with localIdentName option: warnings 1`] = `Array []`; - -exports[`modules should respects context option: errors 1`] = `Array []`; - -exports[`modules should respects context option: locals 1`] = ` -Object { - "#": "O8Yw611P", - "##": "_3er0DBiz", - "#.#.#": "_22RlZfs4", - "#fake-id": "_3i_zUQNU", - "++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.": "_3hmdGGWi", - "-a-b-c-": "_1cY1s7c1", - "-a0-34a___f": "_3RHUZpqp", - ".": "nfd9MoI8", - "123": "_3JQcZq0t", - "1a2b3c": "_3IsxVsEE", - ":)": "_3EKgIWue", - ":\`(": "_3oWIzQc7", - ":hover": "B2whyhV4", - ":hover:focus:active": "_3R7r57b4", - "<><<<>><>": "Tr9vNLcW", - "

": "_3Lowms-R", - "?": "mRRxxKEQ", - "@": "_3ZlTEPhx", - "B&W?": "_3d3wghvo", - "[attr=value]": "_3GgRcos7", - "_": "_2V6oBdW4", - "_test": "_3Q--BATR", - "className": "_3wBIH6Tw", - "f!o!o": "_2pDEJqK-", - "f'o'o": "_3297Sjlr", - "f*o*o": "MI6DPcI5", - "f+o+o": "_3aNwyLoj", - "f/o/o": "jbPgrxdZ", - "f\\\\o\\\\o": "_3x1WTWOH", - "foo.bar": "_2FVtFG40", - "foo/bar": "_13Q-TIeR", - "foo/bar/baz": "_1I8mGSan", - "foo\\\\bar": "LKTPJkpW", - "foo\\\\bar\\\\baz": "xcAsBCbt", - "f~o~o": "_1TY6Bok1", - "m_x_@": "_3SfN7O2q", - "someId": "mxosG-Ww", - "subClass": "_3jIM-zUk", - "test": "_1Os7JVOf", - "{}": "_2ZR3d8gm", - "©": "_3QaoFt--", - "“‘’”": "_3xI9AT1p", - "⌘⌥": "_1V-to4Of", - "☺☃": "uy8uve6R", - "♥": "kO1_7SYu", - "𝄞♪♩♫♬": "_1tfs0VJo", - "💩": "_2Cl61yWh", -} -`; - -exports[`modules should respects context option: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - "._1Os7JVOf { - background: red; -} +exports[`"modules" option should work and respect the \`localConvention\` option with the \`camel-case-only\` value: warnings 1`] = `[]`; -._3Q--BATR { - background: blue; -} +exports[`"modules" option should work and respect the \`localConvention\` option with the \`camelCase\` value and \`namedExport\` false: errors 1`] = `[]`; -._3wBIH6Tw { - background: red; +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; } -#mxosG-Ww { - background: green; +.AooVHuvzAIGXWngdfslc { + color: blue; } -._3wBIH6Tw ._3jIM-zUk { - color: green; +.snmJCrfw3LVnrlx87XVC { + color: red; } -#mxosG-Ww ._3jIM-zUk { - color: blue; +a { + color: yellow; } -._3RHUZpqp { +.vA4oeh0XymefKJVIJyg1 { color: red; } -._3SfN7O2q { - margin-left: auto !important; - margin-right: auto !important; +.mDiC1MIOTWjgsd86woaJ { + color: red; } -._3d3wghvo { - margin-left: auto !important; - margin-right: auto !important; +.kY3VVFqpzmTiFlxOd9KU { + color: red; } -/* matches elements with class=\\":\`(\\" */ -._3oWIzQc7 { - color: aqua; +.eiLdMC_n9TCXQ0oPIJyI { + color: red; } - -/* matches elements with class=\\"1a2b3c\\" */ -._3IsxVsEE { - color: aliceblue; +\`, ""]); +// 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; } -/* matches the element with id=\\"#fake-id\\" */ -#_3i_zUQNU { - color: antiquewhite; +.AooVHuvzAIGXWngdfslc { + color: blue; } -/* matches the element with id=\\"-a-b-c-\\" */ -#_1cY1s7c1 { - color: azure; +.snmJCrfw3LVnrlx87XVC { + color: red; } -/* matches the element with id=\\"©\\" */ -#_3QaoFt-- { - color: black; +a { + color: yellow; } -.kO1_7SYu { background: lime; } -._3QaoFt-- { background: lime; } -._3xI9AT1p { background: lime; } -.uy8uve6R { background: lime; } -._1V-to4Of { background: lime; } -._1tfs0VJo { background: lime; } -._2Cl61yWh { background: lime; } -.mRRxxKEQ { background: lime; } -._3ZlTEPhx { background: lime; } -.nfd9MoI8 { background: lime; } -._3EKgIWue { background: lime; } -._3oWIzQc7 { background: lime; } -._3JQcZq0t { background: lime; } -._3IsxVsEE { background: lime; } -._3Lowms-R { background: lime; } -.Tr9vNLcW { background: lime; } -._3hmdGGWi { background: lime; } -.O8Yw611P { background: lime; } -._3er0DBiz { background: lime; } -._22RlZfs4 { background: lime; } -._2V6oBdW4 { background: lime; } -._2ZR3d8gm { background: lime; } -._3i_zUQNU { background: lime; } -._2FVtFG40 { background: lime; } -.B2whyhV4 { background: lime; } -._3R7r57b4 { background: lime; } -._3GgRcos7 { background: lime; } -.jbPgrxdZ { background: lime; } -._3x1WTWOH { background: lime; } -.MI6DPcI5 { background: lime; } -._2pDEJqK- { background: lime; } -._3297Sjlr { background: lime; } -._1TY6Bok1 { background: lime; } -._3aNwyLoj { background: lime; } - -._13Q-TIeR { - background: hotpink; +.vA4oeh0XymefKJVIJyg1 { + color: red; } -.LKTPJkpW { - background: hotpink; +.mDiC1MIOTWjgsd86woaJ { + color: red; } -._1I8mGSan { - background: hotpink; +.kY3VVFqpzmTiFlxOd9KU { + color: red; } -.xcAsBCbt { - background: hotpink; +.eiLdMC_n9TCXQ0oPIJyI { + color: red; } ", "", @@ -7220,775 +9125,507 @@ Array [ ] `; -exports[`modules should respects context option: warnings 1`] = `Array []`; +exports[`"modules" option should work and respect the \`localConvention\` option with the \`camelCase\` value and \`namedExport\` false: warnings 1`] = `[]`; -exports[`modules should respects getLocalIdent option (global mode): errors 1`] = `Array []`; - -exports[`modules should respects getLocalIdent option (global mode): locals 1`] = ` -Object { - "abc": "foo", - "def": "foo", - "ghi": "foo", - "jkl": "foo", -} -`; +exports[`"modules" option should work and respect the \`localConvention\` option with the \`camelCase\` value: errors 1`] = `[]`; -exports[`modules should respects getLocalIdent option (global mode): module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ".foo .foo { - color: red; +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; } -.foo .foo { +.AooVHuvzAIGXWngdfslc { color: blue; } -", - "", - ], -] -`; -exports[`modules should respects getLocalIdent option (global mode): warnings 1`] = `Array []`; - -exports[`modules should respects getLocalIdent option (local mode): errors 1`] = `Array []`; +.snmJCrfw3LVnrlx87XVC { + color: red; +} -exports[`modules should respects getLocalIdent option (local mode): locals 1`] = ` -Object { - "abc": "foo", - "def": "foo", - "ghi": "foo", - "jkl": "foo", +a { + color: yellow; } -`; -exports[`modules should respects getLocalIdent option (local mode): module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ".foo .foo { +.vA4oeh0XymefKJVIJyg1 { color: red; } -.foo .foo { +.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 should respects getLocalIdent option (local mode): warnings 1`] = `Array []`; - -exports[`modules should respects hashPrefix option with localIdentName option: errors 1`] = `Array []`; - -exports[`modules should respects hashPrefix option with localIdentName option: locals 1`] = ` -Object { - "#": "#--8caa1febb853c79bc5740a51d69b0603", - "##": "##--e6e70cede894cf8ecef86891b00438fa", - "#.#.#": "#.#.#--f93b20473b91262c9634348506fe36fe", - "#fake-id": "#fake-id--a0d1d29b3c920aa3985fb11586f994e6", - "++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.": "++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.--937528d96919903e5a5172d04ced259a", - "-a-b-c-": "-a-b-c---5b1d694462fbb9af324bb0ed2a08d755", - "-a0-34a___f": "-a0-34a___f--e99d667fe0ceff9363b011302ac3f508", - ".": ".--12cd2fe5f9c81510bf687df3b6461cb1", - "123": "123--e5bcdf25b52ca483d65894eae427ccff", - "1a2b3c": "1a2b3c--165cab18879cee9a48ae4cbb5fdd39a8", - ":)": ":)--2f61aa454a9e7fd205da87e665dff51b", - ":\`(": ":\`(--612466e663a46fe230e6db648089b4c4", - ":hover": ":hover--af8b669c2dc29371d450d428f0bfa5d2", - ":hover:focus:active": ":hover:focus:active--5c55d7a925c8ee5de2e8f175badce4d6", - "<><<<>><>": "<><<<>><>--ac5886bfd5b1a8264bdda01deaf52762", - "

": "

--c168cd4e00ec053d5bd509da80f5db38", - "?": "?--4f09eb0a56c6b8f25f7ef4def006df7e", - "@": "@--254139a6858615f890093da92bb4c90b", - "B&W?": "B&W?--8c20b8856e47b8157bf47451b1b6d9a6", - "[attr=value]": "[attr=value]--db83b30c2535d713bd9f8fd195909f24", - "_": "_--f18cdd3b2ff360c3f4c10cc7559ff003", - "_test": "_test--d745495d407559ef605c9072243801fd", - "className": "className--eab624d1bc6b9c6b6a4278d1030dd690", - "f!o!o": "f!o!o--ea3b21fd9d4327fbc9d8b949a2bd5823", - "f'o'o": "f'o'o--95fe160ec21a5b70221e47b09b21fcd2", - "f*o*o": "f*o*o--a5f60f217da867c314860c5b2e28bbfd", - "f+o+o": "f+o+o--1e99689a1b3985adff358f3bd4aea7ed", - "f/o/o": "f/o/o--5de918433a006304ca487065b8626dd4", - "f\\\\o\\\\o": "f\\\\o\\\\o--e9ae2e1857289425acfa40a3f741babd", - "foo.bar": "foo.bar--e1dfb05dd5c7c36228cc87fe2cd0c6b1", - "foo/bar": "foo/bar--5b852e67587217ab19651f30a9b4df53", - "foo/bar/baz": "foo/bar/baz--d917a2cf9531290fbf3aa43e0cc0520f", - "foo\\\\bar": "foo\\\\bar--6cf70ff94feb1257af10e9ddcc47d54f", - "foo\\\\bar\\\\baz": "foo\\\\bar\\\\baz--1900aa5b4b5b2443299cc5e8afa9b3b4", - "f~o~o": "f~o~o--b9707d2eae11417a88a3f638b64eca30", - "m_x_@": "m_x_@--de463fc45a1e6dd0ed23f26a568f1d61", - "someId": "someId--a0ce220cc9bbb1ee0e85cc0d1f0c6aa9", - "subClass": "subClass--2c82998be8a2b2e94ad7be56c9e685cd", - "test": "test--307c32aa793aaec9aecded85a9fdd448", - "{}": "{}--6db4a8e6a78415e8209253db0c3dd7c5", - "©": "©--074c8458dd077a052783bb5f4c5b5911", - "“‘’”": "“‘’”--00f526c32cd5eec8f5de2965f2ca9457", - "⌘⌥": "⌘⌥--c42685a7cfeb3b510a6d8169d58bf02d", - "☺☃": "☺☃--0ea31e7c348b5949a05bce4eebcb59eb", - "♥": "♥--37952b59a9aa684be1d91192f863babf", - "𝄞♪♩♫♬": "𝄞♪♩♫♬--ece85fb9868788feab6a8f1259b9ff9d", - "💩": "💩--1c19fe6dd9ca556af34bbda8a2cbbbdf", -} -`; - -exports[`modules should respects hashPrefix option with localIdentName option: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ".test--307c32aa793aaec9aecded85a9fdd448 { - background: red; -} +exports[`"modules" option should work and respect the \`localConvention\` option with the \`camelCase\` value: warnings 1`] = `[]`; -._test--d745495d407559ef605c9072243801fd { - background: blue; -} +exports[`"modules" option should work and respect the \`localConvention\` option with the \`dashes\` value and \`namedExport\` false: errors 1`] = `[]`; -.className--eab624d1bc6b9c6b6a4278d1030dd690 { - background: red; +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; } -#someId--a0ce220cc9bbb1ee0e85cc0d1f0c6aa9 { - background: green; +.AooVHuvzAIGXWngdfslc { + color: blue; } -.className--eab624d1bc6b9c6b6a4278d1030dd690 .subClass--2c82998be8a2b2e94ad7be56c9e685cd { - color: green; +.snmJCrfw3LVnrlx87XVC { + color: red; } -#someId--a0ce220cc9bbb1ee0e85cc0d1f0c6aa9 .subClass--2c82998be8a2b2e94ad7be56c9e685cd { - color: blue; +a { + color: yellow; } -.-a0-34a___f--e99d667fe0ceff9363b011302ac3f508 { +.vA4oeh0XymefKJVIJyg1 { color: red; } -.m_x_\\\\@--de463fc45a1e6dd0ed23f26a568f1d61 { - margin-left: auto !important; - margin-right: auto !important; +.mDiC1MIOTWjgsd86woaJ { + color: red; } -.B\\\\&W\\\\?--8c20b8856e47b8157bf47451b1b6d9a6 { - margin-left: auto !important; - margin-right: auto !important; +.kY3VVFqpzmTiFlxOd9KU { + color: red; } -/* matches elements with class=\\":\`(\\" */ -.\\\\3A \\\\\`\\\\(--612466e663a46fe230e6db648089b4c4 { - color: aqua; +.eiLdMC_n9TCXQ0oPIJyI { + color: red; } - -/* matches elements with class=\\"1a2b3c\\" */ -.\\\\31 a2b3c--165cab18879cee9a48ae4cbb5fdd39a8 { - color: aliceblue; +\`, ""]); +// 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; } -/* matches the element with id=\\"#fake-id\\" */ -#\\\\#fake-id--a0d1d29b3c920aa3985fb11586f994e6 { - color: antiquewhite; +.AooVHuvzAIGXWngdfslc { + color: blue; } -/* matches the element with id=\\"-a-b-c-\\" */ -#-a-b-c---5b1d694462fbb9af324bb0ed2a08d755 { - color: azure; +.snmJCrfw3LVnrlx87XVC { + color: red; } -/* matches the element with id=\\"©\\" */ -#©--074c8458dd077a052783bb5f4c5b5911 { - color: black; +a { + color: yellow; } -.♥--37952b59a9aa684be1d91192f863babf { background: lime; } -.©--074c8458dd077a052783bb5f4c5b5911 { background: lime; } -.“‘’”--00f526c32cd5eec8f5de2965f2ca9457 { background: lime; } -.☺☃--0ea31e7c348b5949a05bce4eebcb59eb { background: lime; } -.⌘⌥--c42685a7cfeb3b510a6d8169d58bf02d { background: lime; } -.𝄞♪♩♫♬--ece85fb9868788feab6a8f1259b9ff9d { background: lime; } -.💩--1c19fe6dd9ca556af34bbda8a2cbbbdf { background: lime; } -.\\\\?--4f09eb0a56c6b8f25f7ef4def006df7e { background: lime; } -.\\\\@--254139a6858615f890093da92bb4c90b { background: lime; } -.\\\\.--12cd2fe5f9c81510bf687df3b6461cb1 { background: lime; } -.\\\\3A \\\\)--2f61aa454a9e7fd205da87e665dff51b { background: lime; } -.\\\\3A \\\\\`\\\\(--612466e663a46fe230e6db648089b4c4 { background: lime; } -.\\\\31 23--e5bcdf25b52ca483d65894eae427ccff { background: lime; } -.\\\\31 a2b3c--165cab18879cee9a48ae4cbb5fdd39a8 { background: lime; } -.\\\\--c168cd4e00ec053d5bd509da80f5db38 { background: lime; } -.\\\\<\\\\>\\\\<\\\\<\\\\<\\\\>\\\\>\\\\<\\\\>--ac5886bfd5b1a8264bdda01deaf52762 { background: lime; } -.\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\[\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\>\\\\+\\\\<\\\\<\\\\<\\\\<\\\\-\\\\]\\\\>\\\\+\\\\+\\\\.\\\\>\\\\+\\\\.\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\.\\\\+\\\\+\\\\+\\\\.\\\\>\\\\+\\\\+\\\\.\\\\<\\\\<\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\>\\\\.\\\\+\\\\+\\\\+\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\>\\\\+\\\\.\\\\>\\\\.--937528d96919903e5a5172d04ced259a { background: lime; } -.\\\\#--8caa1febb853c79bc5740a51d69b0603 { background: lime; } -.\\\\#\\\\#--e6e70cede894cf8ecef86891b00438fa { background: lime; } -.\\\\#\\\\.\\\\#\\\\.\\\\#--f93b20473b91262c9634348506fe36fe { background: lime; } -.\\\\_--f18cdd3b2ff360c3f4c10cc7559ff003 { background: lime; } -.\\\\{\\\\}--6db4a8e6a78415e8209253db0c3dd7c5 { background: lime; } -.\\\\#fake\\\\-id--a0d1d29b3c920aa3985fb11586f994e6 { background: lime; } -.foo\\\\.bar--e1dfb05dd5c7c36228cc87fe2cd0c6b1 { background: lime; } -.\\\\3A hover--af8b669c2dc29371d450d428f0bfa5d2 { background: lime; } -.\\\\3A hover\\\\3A focus\\\\3A active--5c55d7a925c8ee5de2e8f175badce4d6 { background: lime; } -.\\\\[attr\\\\=value\\\\]--db83b30c2535d713bd9f8fd195909f24 { background: lime; } -.f\\\\/o\\\\/o--5de918433a006304ca487065b8626dd4 { background: lime; } -.f\\\\\\\\o\\\\\\\\o--e9ae2e1857289425acfa40a3f741babd { background: lime; } -.f\\\\*o\\\\*o--a5f60f217da867c314860c5b2e28bbfd { background: lime; } -.f\\\\!o\\\\!o--ea3b21fd9d4327fbc9d8b949a2bd5823 { background: lime; } -.f\\\\'o\\\\'o--95fe160ec21a5b70221e47b09b21fcd2 { background: lime; } -.f\\\\~o\\\\~o--b9707d2eae11417a88a3f638b64eca30 { background: lime; } -.f\\\\+o\\\\+o--1e99689a1b3985adff358f3bd4aea7ed { background: lime; } - -.foo\\\\/bar--5b852e67587217ab19651f30a9b4df53 { - background: hotpink; -} - -.foo\\\\\\\\bar--6cf70ff94feb1257af10e9ddcc47d54f { - background: hotpink; -} - -.foo\\\\/bar\\\\/baz--d917a2cf9531290fbf3aa43e0cc0520f { - background: hotpink; -} - -.foo\\\\\\\\bar\\\\\\\\baz--1900aa5b4b5b2443299cc5e8afa9b3b4 { - background: hotpink; -} -", - "", - ], -] -`; - -exports[`modules should respects hashPrefix option with localIdentName option: warnings 1`] = `Array []`; - -exports[`modules should respects localIdentName option: errors 1`] = `Array []`; - -exports[`modules should respects localIdentName option: locals 1`] = ` -Object { - "#": "localIdentName--#--O8Yw6", - "##": "localIdentName--##--3er0D", - "#.#.#": "localIdentName--#.#.#--22RlZ", - "#fake-id": "localIdentName--#fake-id--3i_zU", - "++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.": "localIdentName--++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.--3hmdG", - "-a-b-c-": "localIdentName---a-b-c---1cY1s", - "-a0-34a___f": "localIdentName---a0-34a___f--3RHUZ", - ".": "localIdentName--.--nfd9M", - "123": "localIdentName--123--3JQcZ", - "1a2b3c": "localIdentName--1a2b3c--3IsxV", - ":)": "localIdentName--:)--3EKgI", - ":\`(": "localIdentName--:\`(--3oWIz", - ":hover": "localIdentName--:hover--B2why", - ":hover:focus:active": "localIdentName--:hover:focus:active--3R7r5", - "<><<<>><>": "localIdentName--<><<<>><>--Tr9vN", - "

": "localIdentName--

--3Lowm", - "?": "localIdentName--?--mRRxx", - "@": "localIdentName--@--3ZlTE", - "B&W?": "localIdentName--B&W?--3d3wg", - "[attr=value]": "localIdentName--[attr=value]--3GgRc", - "_": "localIdentName--_--2V6oB", - "_test": "localIdentName--_test--3Q--B", - "className": "localIdentName--className--3wBIH", - "f!o!o": "localIdentName--f!o!o--2pDEJ", - "f'o'o": "localIdentName--f'o'o--3297S", - "f*o*o": "localIdentName--f*o*o--MI6DP", - "f+o+o": "localIdentName--f+o+o--3aNwy", - "f/o/o": "localIdentName--f/o/o--jbPgr", - "f\\\\o\\\\o": "localIdentName--f\\\\o\\\\o--3x1WT", - "foo.bar": "localIdentName--foo.bar--2FVtF", - "foo/bar": "localIdentName--foo/bar--13Q-T", - "foo/bar/baz": "localIdentName--foo/bar/baz--1I8mG", - "foo\\\\bar": "localIdentName--foo\\\\bar--LKTPJ", - "foo\\\\bar\\\\baz": "localIdentName--foo\\\\bar\\\\baz--xcAsB", - "f~o~o": "localIdentName--f~o~o--1TY6B", - "m_x_@": "localIdentName--m_x_@--3SfN7", - "someId": "localIdentName--someId--mxosG", - "subClass": "localIdentName--subClass--3jIM-", - "test": "localIdentName--test--1Os7J", - "{}": "localIdentName--{}--2ZR3d", - "©": "localIdentName--©--3QaoF", - "“‘’”": "localIdentName--“‘’”--3xI9A", - "⌘⌥": "localIdentName--⌘⌥--1V-to", - "☺☃": "localIdentName--☺☃--uy8uv", - "♥": "localIdentName--♥--kO1_7", - "𝄞♪♩♫♬": "localIdentName--𝄞♪♩♫♬--1tfs0", - "💩": "localIdentName--💩--2Cl61", -} -`; - -exports[`modules should respects localIdentName option: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ".localIdentName--test--1Os7J { - background: red; +.vA4oeh0XymefKJVIJyg1 { + color: red; } -.localIdentName--_test--3Q--B { - background: blue; +.mDiC1MIOTWjgsd86woaJ { + color: red; } -.localIdentName--className--3wBIH { - background: red; +.kY3VVFqpzmTiFlxOd9KU { + color: red; } -#localIdentName--someId--mxosG { - background: green; +.eiLdMC_n9TCXQ0oPIJyI { + color: red; } +", + "", + ], +] +`; -.localIdentName--className--3wBIH .localIdentName--subClass--3jIM- { - color: green; +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; } -#localIdentName--someId--mxosG .localIdentName--subClass--3jIM- { +.AooVHuvzAIGXWngdfslc { color: blue; } -.localIdentName---a0-34a___f--3RHUZ { +.snmJCrfw3LVnrlx87XVC { color: red; } -.localIdentName--m_x_\\\\@--3SfN7 { - margin-left: auto !important; - margin-right: auto !important; +a { + color: yellow; } -.localIdentName--B\\\\&W\\\\?--3d3wg { - margin-left: auto !important; - margin-right: auto !important; +.vA4oeh0XymefKJVIJyg1 { + color: red; } -/* matches elements with class=\\":\`(\\" */ -.localIdentName--\\\\3A \\\\\`\\\\(--3oWIz { - color: aqua; +.mDiC1MIOTWjgsd86woaJ { + color: red; } -/* matches elements with class=\\"1a2b3c\\" */ -.localIdentName--\\\\31 a2b3c--3IsxV { - color: aliceblue; +.kY3VVFqpzmTiFlxOd9KU { + color: red; } -/* matches the element with id=\\"#fake-id\\" */ -#localIdentName--\\\\#fake-id--3i_zU { - color: antiquewhite; +.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; } -/* matches the element with id=\\"-a-b-c-\\" */ -#localIdentName---a-b-c---1cY1s { - color: azure; +.AooVHuvzAIGXWngdfslc { + color: blue; } -/* matches the element with id=\\"©\\" */ -#localIdentName--©--3QaoF { - color: black; +.snmJCrfw3LVnrlx87XVC { + color: red; } -.localIdentName--♥--kO1_7 { background: lime; } -.localIdentName--©--3QaoF { background: lime; } -.localIdentName--“‘’”--3xI9A { background: lime; } -.localIdentName--☺☃--uy8uv { background: lime; } -.localIdentName--⌘⌥--1V-to { background: lime; } -.localIdentName--𝄞♪♩♫♬--1tfs0 { background: lime; } -.localIdentName--💩--2Cl61 { background: lime; } -.localIdentName--\\\\?--mRRxx { background: lime; } -.localIdentName--\\\\@--3ZlTE { background: lime; } -.localIdentName--\\\\.--nfd9M { background: lime; } -.localIdentName--\\\\3A \\\\)--3EKgI { background: lime; } -.localIdentName--\\\\3A \\\\\`\\\\(--3oWIz { background: lime; } -.localIdentName--\\\\31 23--3JQcZ { background: lime; } -.localIdentName--\\\\31 a2b3c--3IsxV { background: lime; } -.localIdentName--\\\\--3Lowm { background: lime; } -.localIdentName--\\\\<\\\\>\\\\<\\\\<\\\\<\\\\>\\\\>\\\\<\\\\>--Tr9vN { background: lime; } -.localIdentName--\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\[\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\>\\\\+\\\\<\\\\<\\\\<\\\\<\\\\-\\\\]\\\\>\\\\+\\\\+\\\\.\\\\>\\\\+\\\\.\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\.\\\\+\\\\+\\\\+\\\\.\\\\>\\\\+\\\\+\\\\.\\\\<\\\\<\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\>\\\\.\\\\+\\\\+\\\\+\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\>\\\\+\\\\.\\\\>\\\\.--3hmdG { background: lime; } -.localIdentName--\\\\#--O8Yw6 { background: lime; } -.localIdentName--\\\\#\\\\#--3er0D { background: lime; } -.localIdentName--\\\\#\\\\.\\\\#\\\\.\\\\#--22RlZ { background: lime; } -.localIdentName--\\\\_--2V6oB { background: lime; } -.localIdentName--\\\\{\\\\}--2ZR3d { background: lime; } -.localIdentName--\\\\#fake\\\\-id--3i_zU { background: lime; } -.localIdentName--foo\\\\.bar--2FVtF { background: lime; } -.localIdentName--\\\\3A hover--B2why { background: lime; } -.localIdentName--\\\\3A hover\\\\3A focus\\\\3A active--3R7r5 { background: lime; } -.localIdentName--\\\\[attr\\\\=value\\\\]--3GgRc { background: lime; } -.localIdentName--f\\\\/o\\\\/o--jbPgr { background: lime; } -.localIdentName--f\\\\\\\\o\\\\\\\\o--3x1WT { background: lime; } -.localIdentName--f\\\\*o\\\\*o--MI6DP { background: lime; } -.localIdentName--f\\\\!o\\\\!o--2pDEJ { background: lime; } -.localIdentName--f\\\\'o\\\\'o--3297S { background: lime; } -.localIdentName--f\\\\~o\\\\~o--1TY6B { background: lime; } -.localIdentName--f\\\\+o\\\\+o--3aNwy { background: lime; } - -.localIdentName--foo\\\\/bar--13Q-T { - background: hotpink; -} - -.localIdentName--foo\\\\\\\\bar--LKTPJ { - background: hotpink; -} - -.localIdentName--foo\\\\/bar\\\\/baz--1I8mG { - background: hotpink; -} - -.localIdentName--foo\\\\\\\\bar\\\\\\\\baz--xcAsB { - background: hotpink; -} -", - "", - ], -] -`; - -exports[`modules should respects localIdentName option: warnings 1`] = `Array []`; - -exports[`modules should respects path in localIdentName option: errors 1`] = `Array []`; - -exports[`modules should respects path in localIdentName option: locals 1`] = ` -Object { - "#": "fixtures-modules-localIdentName__#", - "##": "fixtures-modules-localIdentName__##", - "#.#.#": "fixtures-modules-localIdentName__#.#.#", - "#fake-id": "fixtures-modules-localIdentName__#fake-id", - "++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.": "fixtures-modules-localIdentName__++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.", - "-a-b-c-": "fixtures-modules-localIdentName__-a-b-c-", - "-a0-34a___f": "fixtures-modules-localIdentName__-a0-34a___f", - ".": "fixtures-modules-localIdentName__.", - "123": "fixtures-modules-localIdentName__123", - "1a2b3c": "fixtures-modules-localIdentName__1a2b3c", - ":)": "fixtures-modules-localIdentName__:)", - ":\`(": "fixtures-modules-localIdentName__:\`(", - ":hover": "fixtures-modules-localIdentName__:hover", - ":hover:focus:active": "fixtures-modules-localIdentName__:hover:focus:active", - "<><<<>><>": "fixtures-modules-localIdentName__<><<<>><>", - "

": "fixtures-modules-localIdentName__

", - "?": "fixtures-modules-localIdentName__?", - "@": "fixtures-modules-localIdentName__@", - "B&W?": "fixtures-modules-localIdentName__B&W?", - "[attr=value]": "fixtures-modules-localIdentName__[attr=value]", - "_": "fixtures-modules-localIdentName___", - "_test": "fixtures-modules-localIdentName___test", - "className": "fixtures-modules-localIdentName__className", - "f!o!o": "fixtures-modules-localIdentName__f!o!o", - "f'o'o": "fixtures-modules-localIdentName__f'o'o", - "f*o*o": "fixtures-modules-localIdentName__f*o*o", - "f+o+o": "fixtures-modules-localIdentName__f+o+o", - "f/o/o": "fixtures-modules-localIdentName__f/o/o", - "f\\\\o\\\\o": "fixtures-modules-localIdentName__f\\\\o\\\\o", - "foo.bar": "fixtures-modules-localIdentName__foo.bar", - "foo/bar": "fixtures-modules-localIdentName__foo/bar", - "foo/bar/baz": "fixtures-modules-localIdentName__foo/bar/baz", - "foo\\\\bar": "fixtures-modules-localIdentName__foo\\\\bar", - "foo\\\\bar\\\\baz": "fixtures-modules-localIdentName__foo\\\\bar\\\\baz", - "f~o~o": "fixtures-modules-localIdentName__f~o~o", - "m_x_@": "fixtures-modules-localIdentName__m_x_@", - "someId": "fixtures-modules-localIdentName__someId", - "subClass": "fixtures-modules-localIdentName__subClass", - "test": "fixtures-modules-localIdentName__test", - "{}": "fixtures-modules-localIdentName__{}", - "©": "fixtures-modules-localIdentName__©", - "“‘’”": "fixtures-modules-localIdentName__“‘’”", - "⌘⌥": "fixtures-modules-localIdentName__⌘⌥", - "☺☃": "fixtures-modules-localIdentName__☺☃", - "♥": "fixtures-modules-localIdentName__♥", - "𝄞♪♩♫♬": "fixtures-modules-localIdentName__𝄞♪♩♫♬", - "💩": "fixtures-modules-localIdentName__💩", -} -`; - -exports[`modules should respects path in localIdentName option: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ".fixtures-modules-localIdentName__test { - background: red; +a { + color: yellow; } -.fixtures-modules-localIdentName___test { - background: blue; +.vA4oeh0XymefKJVIJyg1 { + color: red; } -.fixtures-modules-localIdentName__className { - background: red; +.mDiC1MIOTWjgsd86woaJ { + color: red; } -#fixtures-modules-localIdentName__someId { - background: green; +.kY3VVFqpzmTiFlxOd9KU { + color: red; } -.fixtures-modules-localIdentName__className .fixtures-modules-localIdentName__subClass { - color: green; +.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; } -#fixtures-modules-localIdentName__someId .fixtures-modules-localIdentName__subClass { +.AooVHuvzAIGXWngdfslc { color: blue; } -.fixtures-modules-localIdentName__-a0-34a___f { +.snmJCrfw3LVnrlx87XVC { color: red; } -.fixtures-modules-localIdentName__m_x_\\\\@ { - margin-left: auto !important; - margin-right: auto !important; +a { + color: yellow; } -.fixtures-modules-localIdentName__B\\\\&W\\\\? { - margin-left: auto !important; - margin-right: auto !important; +.vA4oeh0XymefKJVIJyg1 { + color: red; } -/* matches elements with class=\\":\`(\\" */ -.fixtures-modules-localIdentName__\\\\3A \\\\\`\\\\( { - color: aqua; +.mDiC1MIOTWjgsd86woaJ { + color: red; } -/* matches elements with class=\\"1a2b3c\\" */ -.fixtures-modules-localIdentName__\\\\31 a2b3c { - color: aliceblue; +.kY3VVFqpzmTiFlxOd9KU { + color: red; } -/* matches the element with id=\\"#fake-id\\" */ -#fixtures-modules-localIdentName__\\\\#fake-id { - color: antiquewhite; +.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; } -/* matches the element with id=\\"-a-b-c-\\" */ -#fixtures-modules-localIdentName__-a-b-c- { - color: azure; +.AooVHuvzAIGXWngdfslc { + color: blue; } -/* matches the element with id=\\"©\\" */ -#fixtures-modules-localIdentName__© { - color: black; +.snmJCrfw3LVnrlx87XVC { + color: red; } -.fixtures-modules-localIdentName__♥ { background: lime; } -.fixtures-modules-localIdentName__© { background: lime; } -.fixtures-modules-localIdentName__“‘’” { background: lime; } -.fixtures-modules-localIdentName__☺☃ { background: lime; } -.fixtures-modules-localIdentName__⌘⌥ { background: lime; } -.fixtures-modules-localIdentName__𝄞♪♩♫♬ { background: lime; } -.fixtures-modules-localIdentName__💩 { background: lime; } -.fixtures-modules-localIdentName__\\\\? { background: lime; } -.fixtures-modules-localIdentName__\\\\@ { background: lime; } -.fixtures-modules-localIdentName__\\\\. { background: lime; } -.fixtures-modules-localIdentName__\\\\3A \\\\) { background: lime; } -.fixtures-modules-localIdentName__\\\\3A \\\\\`\\\\( { background: lime; } -.fixtures-modules-localIdentName__\\\\31 23 { background: lime; } -.fixtures-modules-localIdentName__\\\\31 a2b3c { background: lime; } -.fixtures-modules-localIdentName__\\\\ { background: lime; } -.fixtures-modules-localIdentName__\\\\<\\\\>\\\\<\\\\<\\\\<\\\\>\\\\>\\\\<\\\\> { background: lime; } -.fixtures-modules-localIdentName__\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\[\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\>\\\\+\\\\<\\\\<\\\\<\\\\<\\\\-\\\\]\\\\>\\\\+\\\\+\\\\.\\\\>\\\\+\\\\.\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\.\\\\+\\\\+\\\\+\\\\.\\\\>\\\\+\\\\+\\\\.\\\\<\\\\<\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\>\\\\.\\\\+\\\\+\\\\+\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\>\\\\+\\\\.\\\\>\\\\. { background: lime; } -.fixtures-modules-localIdentName__\\\\# { background: lime; } -.fixtures-modules-localIdentName__\\\\#\\\\# { background: lime; } -.fixtures-modules-localIdentName__\\\\#\\\\.\\\\#\\\\.\\\\# { background: lime; } -.fixtures-modules-localIdentName__\\\\_ { background: lime; } -.fixtures-modules-localIdentName__\\\\{\\\\} { background: lime; } -.fixtures-modules-localIdentName__\\\\#fake\\\\-id { background: lime; } -.fixtures-modules-localIdentName__foo\\\\.bar { background: lime; } -.fixtures-modules-localIdentName__\\\\3A hover { background: lime; } -.fixtures-modules-localIdentName__\\\\3A hover\\\\3A focus\\\\3A active { background: lime; } -.fixtures-modules-localIdentName__\\\\[attr\\\\=value\\\\] { background: lime; } -.fixtures-modules-localIdentName__f\\\\/o\\\\/o { background: lime; } -.fixtures-modules-localIdentName__f\\\\\\\\o\\\\\\\\o { background: lime; } -.fixtures-modules-localIdentName__f\\\\*o\\\\*o { background: lime; } -.fixtures-modules-localIdentName__f\\\\!o\\\\!o { background: lime; } -.fixtures-modules-localIdentName__f\\\\'o\\\\'o { background: lime; } -.fixtures-modules-localIdentName__f\\\\~o\\\\~o { background: lime; } -.fixtures-modules-localIdentName__f\\\\+o\\\\+o { background: lime; } - -.fixtures-modules-localIdentName__foo\\\\/bar { - background: hotpink; -} - -.fixtures-modules-localIdentName__foo\\\\\\\\bar { - background: hotpink; -} - -.fixtures-modules-localIdentName__foo\\\\/bar\\\\/baz { - background: hotpink; -} - -.fixtures-modules-localIdentName__foo\\\\\\\\bar\\\\\\\\baz { - background: hotpink; -} -", - "", - ], -] -`; - -exports[`modules should respects path in localIdentName option: warnings 1`] = `Array []`; - -exports[`modules should saves underscore prefix in exported class names with localIdentName option: errors 1`] = `Array []`; - -exports[`modules should saves underscore prefix in exported class names with localIdentName option: locals 1`] = ` -Object { - "#": "#", - "##": "##", - "#.#.#": "#.#.#", - "#fake-id": "#fake-id", - "++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.": "++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.", - "-a-b-c-": "-a-b-c-", - "-a0-34a___f": "-a0-34a___f", - ".": ".", - "123": "123", - "1a2b3c": "1a2b3c", - ":)": ":)", - ":\`(": ":\`(", - ":hover": ":hover", - ":hover:focus:active": ":hover:focus:active", - "<><<<>><>": "<><<<>><>", - "

": "

", - "?": "?", - "@": "@", - "B&W?": "B&W?", - "[attr=value]": "[attr=value]", - "_": "_", - "_test": "_test", - "className": "className", - "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": "foo\\\\bar", - "foo\\\\bar\\\\baz": "foo\\\\bar\\\\baz", - "f~o~o": "f~o~o", - "m_x_@": "m_x_@", - "someId": "someId", - "subClass": "subClass", - "test": "test", - "{}": "{}", - "©": "©", - "“‘’”": "“‘’”", - "⌘⌥": "⌘⌥", - "☺☃": "☺☃", - "♥": "♥", - "𝄞♪♩♫♬": "𝄞♪♩♫♬", - "💩": "💩", -} -`; - -exports[`modules should saves underscore prefix in exported class names with localIdentName option: module (evaluated) 1`] = ` -Array [ - Array [ - 1, - ".test { - background: red; +a { + color: yellow; } -._test { - background: blue; +.vA4oeh0XymefKJVIJyg1 { + color: red; } -.className { - background: red; +.mDiC1MIOTWjgsd86woaJ { + color: red; } -#someId { - background: green; +.kY3VVFqpzmTiFlxOd9KU { + color: red; } -.className .subClass { - color: green; +.eiLdMC_n9TCXQ0oPIJyI { + color: red; } +", + "", + ], +] +`; -#someId .subClass { +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; } -.-a0-34a___f { +.AooVHuvzAIGXWngdfslc { + color: blue; +} + +.snmJCrfw3LVnrlx87XVC { color: red; } -.m_x_\\\\@ { - margin-left: auto !important; - margin-right: auto !important; +a { + color: yellow; } -.B\\\\&W\\\\? { - margin-left: auto !important; - margin-right: auto !important; +.vA4oeh0XymefKJVIJyg1 { + color: red; } -/* matches elements with class=\\":\`(\\" */ -.\\\\3A \\\\\`\\\\( { - color: aqua; +.mDiC1MIOTWjgsd86woaJ { + color: red; } -/* matches elements with class=\\"1a2b3c\\" */ -.\\\\31 a2b3c { - color: aliceblue; +.kY3VVFqpzmTiFlxOd9KU { + color: red; } -/* matches the element with id=\\"#fake-id\\" */ -#\\\\#fake-id { - color: antiquewhite; +.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; } -/* matches the element with id=\\"-a-b-c-\\" */ -#-a-b-c- { - color: azure; +.AooVHuvzAIGXWngdfslc { + color: blue; } -/* matches the element with id=\\"©\\" */ -#© { - color: black; +.snmJCrfw3LVnrlx87XVC { + 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; } +a { + color: yellow; +} -.foo\\\\/bar { - background: hotpink; +.vA4oeh0XymefKJVIJyg1 { + color: red; } -.foo\\\\\\\\bar { - background: hotpink; +.mDiC1MIOTWjgsd86woaJ { + color: red; } -.foo\\\\/bar\\\\/baz { - background: hotpink; +.kY3VVFqpzmTiFlxOd9KU { + color: red; } -.foo\\\\\\\\bar\\\\\\\\baz { - background: hotpink; +.eiLdMC_n9TCXQ0oPIJyI { + color: red; } ", "", @@ -7996,4 +9633,16343 @@ Array [ ] `; -exports[`modules should saves underscore prefix in exported class names with localIdentName option: warnings 1`] = `Array []`; +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": " +

+
+