diff --git a/CHANGELOG.md b/CHANGELOG.md index 074a51ccae5e..20fbb8f92cf1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,56 +2,99 @@ Inspired from [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) -## [Unreleased] (https://github.com/opensearch-project/OpenSearch-Dashboards/compare/2.11.0...2.x) +## [Unreleased] + +### 💥 Breaking Changes ### Deprecations +- Rename `withLongNumerals` to `withLongNumeralsSupport` in `HttpFetchOptions` [#5592](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/5592) + ### 🛡 Security +- [WS-2021-0638] Bump mocha from `7.2.0` to `10.1.0` ([#2711](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/2711)) - Add support for TLS v1.3 ([#5133](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/5133)) - [CVE-2023-45133] Bump all babel dependencies from `7.16.x` to `7.22.9` to fix upstream vulnerability ([#5428](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/5428)) +- [CVE-2023-45857] Bump `axios` from `0.27.2` to `1.6.1` ([#5470](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/5470)) +- [CVE-2023-26159] Bump `follow-redirects` from `1.15.2` to `1.15.4` ([#5669](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/5669)) ### 📈 Features/Enhancements - Add support for read-only mode through tenants ([#4498](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/4498)) +- Replace OuiSelect component with OuiSuperSelect in data-source plugin ([#5315](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/5315)) - [Workspace] Add core workspace service module to enable the implementation of workspace features within OSD plugins ([#5092](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/5092)) - [Workspace] Setup workspace skeleton and implement basic CRUD API ([#5075](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/5075)) - [Decouple] Add new cross compatibility check core service which export functionality for plugins to verify if their OpenSearch plugin counterpart is installed on the cluster or has incompatible version to configure the plugin behavior([#4710](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/4710)) +- [Discover] Add long numerals support [#5592](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/5592) - [Discover] Display inner properties in the left navigation bar [#5429](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/5429) +- [Discover] Added customizable pagination options based on Discover UI settings [#5610](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/5610) +- [Chrome] Introduce registerCollapsibleNavHeader to allow plugins to customize the rendering of nav menu header ([#5244](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/5244)) +- [PM] Enhance single version requirements imposed during bootstrapping ([#5675](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/5675)) +- [Custom Branding] Relative URL should be allowed for logos ([#5572](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/5572)) +- [Discover] Enhanced the data source selector with added sorting functionality ([#5609](https://github.com/opensearch-project/OpenSearch-Dashboards/issues/5609)) +- [Multiple Datasource] Add datasource picker component and use it in devtools and tutorial page when multiple datasource is enabled ([#5756](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/5756)) ### 🐛 Bug Fixes +- [Chore] Update deprecated url methods (url.parse(), url.format()) ([#2910](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/2910)) +- Cleanup unused url ([#3847](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/3847)) - [TSVB, Dashboards] Fix inconsistent dark mode code editor themes ([#4609](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/4609)) - Fix `maps.proxyOpenSearchMapsServiceInMaps` config definition so it can be set ([#5170](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/5170)) +- [Discover] Fix inactive state on 'Discover' tab in side navigation menu ([#5432](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/5432)) - [BUG] Add platform "darwin-arm64" to unit test ([#5290](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/5290)) - [BUG][Dev Tool] Add dev tool documentation link to dev tool's help menu [#5166](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/5166) - Fix missing border for header navigation control on right ([#5450](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/5450)) +- [BUG] Fix filtering issue in data source selector ([5484](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/5484)) +- [BUG][Data] Support for custom filters with heterogeneous data fields ([5577](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/5577)) +- [BUG][Data] Fix empty suggestion history when querying in search bar [#5349](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/5349) +- [BUG][Discover] Fix what is displayed in `selected fields` when removing columns from canvas [#5537](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/5537) +- [BUG][Discover] Fix advanced setting `discover:modifyColumnsOnSwitch` ([#5508](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/5508)) +- [BUG][Discover] Show 0 filters when there are no active filters ([#5508](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/5508)) +- [Discover] Fix missing index pattern field from breaking Discover [#5626](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/5626) +- [BUG] Remove duplicate sample data as id 90943e30-9a47-11e8-b64d-95841ca0b247 ([5668](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/5668)) +- [BUG][Multiple Datasource] Fix datasource testing connection unexpectedly passed with wrong endpoint [#5663](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/5663) ### 🚞 Infrastructure +- Re-enable CI workflows for feature branches ([#2908](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/2908)) +- Upgrade yarn version to be compatible with @opensearch-project/opensearch ([#3443](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/3443)) +- Add an achievement badger to the PR ([#3721](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/3721)) - [CI] Enable inputs for manually triggered Cypress test jobs ([#5134](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/5134)) - [CI] Replace usage of deprecated `set-output` in workflows ([#5340](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/5340)) +- [Chore] Add `--security` for `opensearch snapshot` and `opensearch_dashboards` to configure local setup with the security plugin ([#5451](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/5451)) +- [Chore] Updates default dev environment security credentials ([#5736](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/5736)) ### 📝 Documentation +- [Doc] Add COMMUNICATIONS.md with info about Slack, forum, office hours ([#3837](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/3837)) - Add plugin development section in DEVELOPER_GUIDE.md ([#3989](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/3989)) - Remove ftr test step from PR template ([#5217](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/5217)) - [Doc] Update EUI doc site links to point to OUI doc site ([#5293](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/5293)) ### 🛠 Maintenance +- Removes `minimatch` manual resolution ([#3019](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/3019)) +- Upgrade `vega-lite` dependency from `4.17.0` to `^5.6.0` ([#3076](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/3076)). Backwards-compatible version included in v2.5.0 release. +- Bump `js-yaml` from `3.14.0` to `4.1.0` ([#3770](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/3770)) - Replace `node-sass` with `sass-embedded` ([#5338](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/5338)) -- [Version] Bump version to 2.12.0 ([#5294](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/5294)) -- Add @SuZhou-Joe as a maintainer. ([#5594](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/5594)) +- Bump `chromedriver` from `107.0.3` to `119.0.1` ([#5465](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/5465)) +- Bump `typescript` resolution from `4.0.2` to `4.6.4` ([#5470](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/5470)) +- Bump `OUI` to `1.4.0` ([#5637](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/5637)) +- Add @SuZhou-Joe as a maintainer ([#5594](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/5594)) +- Move @seanneumann to emeritus maintainer ([#5634](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/5634)) +- Remove `ui-select` dev dependency ([#5660](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/5660)) ### 🪛 Refactoring - [Console] Remove unused ul element and its custom styling ([#3993](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/3993)) - Remove unused Sass in `tile_map` plugin ([#4110](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/4110)) - [Home] Remove unused tutorials ([#5212](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/5212)) +- [UiSharedDeps] Standardize theme JSON imports to be light/dark-mode aware ([#5662](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/5662)) ### 🔩 Tests +- [Home] Add more unit tests for other complications of overview ([#5418](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/5418)) + ## [2.11.1 - 2023-11-21](https://github.com/opensearch-project/OpenSearch-Dashboards/releases/tag/2.11.1) ### 🛡 Security @@ -213,6 +256,60 @@ Inspired from [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) - Test (linkchecker): Exclude checking dead link ([#4720](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/4720)) - Update baseline images for functional tests ([#4879](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/4879)) +## [1.3.13 - 2023-09-21](https://github.com/opensearch-project/OpenSearch-Dashboards/releases/tag/1.3.13) + +### 🛡 Security + +- [CVE-2019-11358] Bump version of `tinygradient` from `0.4.3` to `1.1.5` ([#4571](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/4751)) +- [CVE-2023-26136] Bump `word-wrap` from `1.2.3` to `1.2.4` ([#5002](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/5002)) +- [CVE-2022-21670] Bump `markdown-it` from `10.0.0` to `12.3.2` ([#5016](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/5016)) +- [CVE-2022-33987] Partially fix security issues for `got` by bumping `@elastic/makelogs` from `6.0.0` to `6.1.1` and updating yarn.lock ([#5006](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/5006)) +- Bump `yo` from `2.0.6` to `3.1.1` ([#5005]( https://github.com/opensearch-project/OpenSearch-Dashboards/pull/5005)) +- [CVE-2023-0842] Bump `xml2js` from `0.4.22` to `0.6.2` ([#5024](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/5024)) + +### 📈 Features/Enhancements + +### 🐛 Bug Fixes + +### 🚞 Infrastructure + +### 📝 Documentation + +### 🛠 Maintenance + +- [Version] Increment version to 1.3.13 ([#4721](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/4721)) +- [Chore] Add company.net to exclusion list in linkchecker ([#4704](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/4704)) +- [Chore] Exclude checking dead link in linkchecker ([#4868](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/4868)) + +## [1.3.12 - 2023-08-10](https://github.com/opensearch-project/OpenSearch-Dashboards/releases/tag/1.3.12) + +### 🛡 Security + +- [CVE-2021-23382] Bump postcss from `8.2.10` to `8.4.24` ([#4403](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/4403)) +- Bump `joi` to v14 to avoid the possibility of prototype poisoning in a nested dependency ([#3952](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/3952)) +- [WS-2018-0347] Bump `sass-lint` from `1.12.1` to `1.13.0` to fix `eslint` security issue ([#4338](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/4338)) +- [CVE-2022-25883] Resolve `semver` to `7.5.3` and remove unused package ([#4411](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/4411), [#4686](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/4686)) +- [CVE-2022-1537] Bump grunt from `1.4.1` to `1.5.3` ([#3723](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/3723)) +- [CVE-2022-0436] Bump grunt from `1.4.1` to `1.5.3` ([#3723](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/3723)) +- [CVE-2023-26136] Resolve `tough-cookie` to `4.1.3` ([#4682](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/4682)) + +### 📈 Features/Enhancements + +### 🐛 Bug Fixes + +### 🚞 Infrastructure + +### 📝 Documentation + +- added js documentation and a readme file to files in utils folder ([#5540])(https://github.com/opensearch-project/OpenSearch-Dashboards/pull/5540/) + +### 🛠 Maintenance + +- Adding @ZilongX and @Flyingliuhub as maintainers. ([#4137](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/4137)) +- Add new MAINTAINERS to CODEOWNERS file. ([#4199](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/4199)) +- Adding @BSFishy as maintainer. ([#4469](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/4469)) +- [Version] Increment version to 1.3.12 ([#4656](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/4656)) + ## [2.9.0 - 2023-07-24](https://github.com/opensearch-project/OpenSearch-Dashboards/releases/tag/2.9.0) ### 🛡 Security @@ -301,6 +398,25 @@ Inspired from [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) - [Vis Augmenter Add UT for few fns ([#4516](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/4516)) - [BWC Tests] Add BWC tests for 2.7.0 and 2.8.0 ([#4023](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/4023)) +## [1.3.11 - 2023-06-29](https://github.com/opensearch-project/OpenSearch-Dashboards/releases/tag/1.3.11) + +### 🛡 Security + +- [CVE-2022-1537] Bump grunt from `1.5.2` to `1.5.3` ([#4276](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/4276)) +- [CVE-2020-15366] Bump ajv from `4.11.8` to `6.12.6` ([#3769](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/3769)) + +### 📈 Features/Enhancements + +### 🐛 Bug Fixes + +### 🚞 Infrastructure + +- Upgrade the backport workflow ([#4343](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/4343)) + +### 📝 Documentation + +### 🛠 Maintenance + ## [2.8.0 - 2023-06-06](https://github.com/opensearch-project/OpenSearch-Dashboards/releases/tag/2.8.0) ### Deprecations @@ -339,6 +455,42 @@ Inspired from [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) ### 🔩 Tests +## [1.3.10 - 2023-05-18](https://github.com/opensearch-project/OpenSearch-Dashboards/releases/tag/2.7.0) + +### 🛡 Security + +- [CVE-2020-15366][1.x] Bump ajv from 4.11.8 to 6.12.6 ([#4035](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/4035)) +- [CVE-2022-48285][1.x] Bump jszip from 3.7.1 to 3.10.1 ([#4011](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/4011)) +- [CVE-2021-35065][1.x] Bump glob-parent from 6.0.0 to 6.0.2 ([#4005](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/4005)) +- [CVE-2022-25851][1.x] Bump jpeg-js from 0.4.1 to 0.4.4 ([#3860](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/3860)) +- [CVE-2022-25858][1.x] Bump terser from 4.8.0 to 4.8.1 ([#3786](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/3786)) +- [CVE-2021-23490][1.x] Bump parse-link-header from 1.0.1 to 2.0.0 ([#3820](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/3820)) +- [CVE-2021-3765][1.x] Bump validator from 8.2.0 to 13.9.0 ([#3753](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/3753)) +- [CVE-2022-25758][1.x] Bump scss-tokenizer from 0.3.0 to 0.4.3 ([#3789](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/3789)) +- [CVE-2021-3803][1.x] Bump nth-check from 1.0.2 to 2.0.1 ([#3745](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/3745)) +- Bump highlight.js from 9.18.5 to 10.7.3 to solve security concerns ([#4062](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/4062)) + +### 📈 Features/Enhancements + +- Add tooltip to help icon ([#3872](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/3872)) + +### 🐛 Bug Fixes + +### 📝 Documentation + +- Update jest documentation links ([#3939](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/3939)) + +### 🛠 Maintenance + +- Add threshold to code coverage changes for project ([#4050](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/4050)) +- Temporarily hardcode chromedriver to 112.0.0 to enable all ftr tests ([#4039](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/4039)) +- Update MAINTAINERS.md and CODEOWNERS ([#3938](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/3938)) +- Add opensearch-dashboards-docker-dev to .gitignore ([#3781](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/3781)) + +### 🪛 Refactoring + +### 🔩 Tests + ## [2.7.0 - 2023-05-02](https://github.com/opensearch-project/OpenSearch-Dashboards/releases/tag/2.7.0) ### Deprecations @@ -386,6 +538,7 @@ Inspired from [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) - [VisBuilder] Fix Firefox legend selection issue ([#3732](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/3732)) - [VisBuilder] Fix type errors ([#3732](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/3732)) - [VisBuilder] Fix indexpattern selection in filter bar ([#3751](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/3751)) +- [Console] Fix dev tool console autocomplete not loading issue for aliases ([#5568](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/5568)) ### 🚞 Infrastructure @@ -432,6 +585,38 @@ Inspired from [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) - [Tests] Fix unit tests for `get_keystore` ([#3854](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/3854)) - [BWC Tests] Add BWC tests for 2.7.0 and 2.8.0 ([#4023](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/4023)) +## [1.3.9 - 2023-04-04](https://github.com/opensearch-project/OpenSearch-Dashboards/releases/tag/1.3.9) + +### 🛡 Security + +- [CVE-2022-2499] Resolve qs from 6.5.2 and 6.7.0 to 6.11.0 in 1.x ([#3451](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/3451)) +- [CVE-2020-36632] [REQUIRES PLUGIN VALIDATION] Bump flat from 4.1.1 to 5.0.2 ([#3539](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/3539)). To the best of our knowledge, this is a non-breaking change, but if your plugin relies on `mocha` tests, validate that they still work correctly (and plan to migrate them to `jest` [in preparation for `mocha` deprecation](https://github.com/opensearch-project/OpenSearch-Dashboards/issues/1572). +- [CVE-2023-25653] Bump node-jose to 2.2.0 ([#3445](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/3445)) +- [CVE-2021-23807] Bump jsonpointer from 4.1.0 to 5.0.1 ([#3535](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/3535)) +- [CVE-2021-23424] Bump ansi-html from 0.0.7 to 0.0.8 ([#3536](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/3536)) +- [CVE-2022-24999] Bump express from 4.17.1 to 4.18.2 ([#3542](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/3542)) + +### 📈 Features/Enhancements + +- [I18n] Register ru, ru-RU locale ([#2817](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/2817)) + +### 🐛 Bug Fixes + +- [TSVB] Fix the link to "serial differencing aggregation" documentation ([#3503](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/3503)) + +### 📝 Documentation + +- [TSVB] Fix a spelling error in the README file ([#3518](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/3518)) +- Simplify the in-code instructions for upgrading `re2` ([#3328](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/3328)) +- [Doc] Improve DEVELOPER_GUIDE to make first time setup quicker and easier ([#3421](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/3421)) + +### 🛠 Maintenance + +- Update MAINTAINERS.md formatting and maintainer list ([#3338](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/3338)) +- Remove `github-checks-reporter`, an unused dependency ([#3126](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/3126)) +- [Version] Increment to 1.3.9 ([#3375](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/3375)) +- Remove the unused `renovate.json5` file ([3489](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/3489)) + ## [2.6.0 - 2023-02-28](https://github.com/opensearch-project/OpenSearch-Dashboards/releases/tag/2.6.0) ### Deprecations @@ -486,6 +671,36 @@ Inspired from [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) - [BWC Tests] Add BWC tests for `2.6.0` ([#3356](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/3356)) - Prevent primitive linting limitations from being applied to unit tests found under `src/setup_node_env` ([#3403](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/3403)) +## [1.3.8 - 2023-02-15](https://github.com/opensearch-project/OpenSearch-Dashboards/releases/tag/1.3.8) + +### 🛡 Security + +- [CVE-2022-25901] Bump supertest from 2.0.5 to 2.0.12 ([#3326](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/3326)) +- [CVE-2022-25860] Bump simple-git from 3.15.1 to 3.16.0 ([#3345](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/3345)) +- [CVE-2022-46175] Bump json5 version from 1.0.1 and 2.2.1 to 1.0.2 and 2.2.3 ([#3201](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/3201)) +- [CVE-2022-25912] Bump simple-git from 3.4.0 to 3.15.0 ([#3036](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/3036)) +- Bump decode-uri-component from 0.2.0 to 0.2.2 ([#3009](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/3009)) + +### 🐛 Bug Fixes + +- [BUG] Fixes misleading embeddable plugin error message ([#3043](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/3043)) +- [BUG] Trim trailing slashes before checking no-restricted-path rule ([#3020](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/3020)) + +### 🚞 Infrastructure + +- Lock workflow tests to Chrome and ChromeDriver 107 as the last combination that run on Node.js v10 ([#3299](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/3299)) +- Update yarn timeout for GitHub workflow on Windows ([#3118](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/3118)) +- Add Windows CI to the GitHub workflow ([#2966](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/2966)) + +### 📝 Documentation + +- Fix documentation link for date math ([#3207](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/3207)) + +### 🔩 Tests + +- [BWC] Updates to BWC tests ([#1190](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/1190)) +- Automates chromedriver version selection for tests ([#2990](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/2990)) + ## [2.5.0 - 2023-01-25](https://github.com/opensearch-project/OpenSearch-Dashboards/releases/tag/2.5.0) ### 🛡 Security @@ -566,6 +781,56 @@ Inspired from [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) - Correct the linting logic for `no-restricted-path` to ignore trailing slashes ([#3020](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/3020)) +## [1.3.7 - 2022-12-14](https://github.com/opensearch-project/OpenSearch-Dashboards/releases/tag/1.3.7) + +### 🛡 Security + +- [CVE-2022-0144] Bump shelljs from 0.8.4 to 0.8.5 ([#2511](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/2511)) +- [Legacy Maps Plugin] Prevent reverse-tabnabbing ([#2540](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/2540)) +- [CVE-2022-3517] Bump minimatch from 3.0.4 to 3.0.5 and [IBM X-Force ID: 220063] unset-value from 1.0.1 to 2.0.1 ([#2640](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/2640)) +- [CVE-2022-0155] Bump follow-redirects to 1.15.2 ([#2653](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/2653)) +- [CVE-2022-0536] Bump follow-redirects to 1.15.2 ([#2653](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/2653)) +- [CVE-2021-24033] Remove storybook package ([#2660](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/2660)) +- [CVE-2021-42740] Remove storybook package ([#2660](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/2660)) +- [CVE-2022-23647] Bump prismjs to 1.29.0 ([#2668](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/2668)) +- [CVE-2022-37599] Bump loader-utils to 2.0.4 ([#2995](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/2995)) +- [CVE-2022-37603] Bump loader-utils to 2.0.4 ([#2995](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/2995)) + +### 📈 Features/Enhancements + +- [Windows] Facilitate building and running OSD and plugins on Windows platforms ([#2601](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/2601)) +- [Windows] Add helper functions to work around the differences of platforms ([#2681](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/2681)) +- [Windows] Add `@osd/cross-platform` package to standardize path handling across platforms ([#2703](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/2703)) + +### 🐛 Bug Fixes + +- [Chore] Visualize link fix [#2395](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/2395) +- [BUG] Fix suggestion list cutoff issue ([#2607](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/2607)) +- Remove Leftover X Pack references ([#2638](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/2638)) +- Bump `del` version to fix MacOS race condition ([#2847](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/2873)) +- Temporary workaround for task-kill exceptions on Windows when it is passed a pid for a process that is already dead ([#2842](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/2842)) +- [Build] Fixed "Last Access Time" not being set by `scanCopy` on Windows ([#2964](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/2964)) +- Update `leaflet-vega` and fix its usage ([#3005](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/3005)) + +### 🚞 Infrastructure + +- Update backport custom branch name to utilize head template ([#2766](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/2766)) + +### 📝 Documentation + +- Add the release runbook to RELEASING.md ([#2533](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/2533)) +- Security-CVEs fixes guidelines [#2674](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/2674) +- Correct README and help command of osd-plugin-helpers ([#2810](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/2810)) + +### 🛠 Maintenance + +- Increment version to 1.3.7 [#2528](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/2528) + +### 🔩 Tests + +- Bump `chromedriver` to 106 to fix function test fail issue [#2514](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/2514) +- Fix incorrect validation of time values in JUnit Reporter ([#2965](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/2965)) + ## [2.4.0 - 2022-11-15](https://github.com/opensearch-project/OpenSearch-Dashboards/releases/tag/2.4.0) ### 🛡 Security @@ -680,3 +945,29 @@ Inspired from [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) - Add @zengyan-amazon as a maintainer ([#2419](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/2419)) - Increment from 2.3 to 2.4. ([#2295](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/2295)) - Add CHANGELOG.md for 2.4.0 ([#2809](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/2809)) + +## [1.3.6 - 2022-10-06](https://github.com/opensearch-project/OpenSearch-Dashboards/releases/tag/1.3.6) + +### 🛡 Security + +- [CVE-2021-3807] Resolves ansi-regex to v5.0.1 ([#2425](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/2425)) +- [CVE-2022-23713] Handle invalid query, index and date in vega charts filter handlers ([#1932](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/1932)) +- Use a forced CSP-compliant interpreter with Vega visualizations ([#2352](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/2352)) +- Bump moment-timezone from 0.5.34 to 0.5.37 ([#2361](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/2361)) + +### 📈 Features/Enhancements + +- Custom healthcheck with filters ([#2232](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/2232), [#2277](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/2277)). To configure see example in [config/opensearch_dashboards.yml](https://github.com/opensearch-project/OpenSearch-Dashboards/blob/6e2ec97459ae179c86201c611ce744c2c24ce150/config/opensearch_dashboards.yml#L44-L46) + +### 🚞 Infrastructure + +- Add CHANGELOG.md and related workflows ([#2414](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/2414)) +- Extends plugin-helpers to be used for automating version changes ([#2398](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/2398),[#2486](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/2486)) + +### 🛠 Maintenance + +- Version Increment to 1.3.6 ([#2420](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/2420)) + +### 🔩 Tests + +- Update caniuse to fix failed integration tests ([#2322](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/2322)) diff --git a/packages/osd-pm/README.md b/packages/osd-pm/README.md index 8e30c9a51058..15f170815a09 100644 --- a/packages/osd-pm/README.md +++ b/packages/osd-pm/README.md @@ -141,6 +141,40 @@ yarn osd Bootstrapping also calls the `osd:bootstrap` script for every included project. This is intended for packages that need to be built/transpiled to be usable. +#### Single-version validation + +Bootstrapping, by default, applies a `strict` single-version validation where it requires all the dependencies defined +more than once to have the same version-range in the `package.json` files of Dashboards, packages, and plugins. If a +violation is identified, bootstrapping terminates with an error. This behavior can be controlled using the +`--single-version` switch. Using any switch other than the default can result in the installation of versions of the +dependencies that were never tested and this could lead to unexpected results. + +``` +yarn osd bootstrap --single-version=loose +``` +In `loose` mode, bootstrapping reconciles the various versions installed as a result of having multiple ranges for a +dependency, by choosing one that satisfies all said ranges. Even though installing the chosen version updates the +`yarn.lock` files, no `package.json` changes would be needed. + +``` +yarn osd bootstrap --single-version=force +``` +In `force` mode, bootstrapping acts like `loose` for each dependency. If despite that, a suitable version was not found, +it switches to behave like the `brute-force` mode (see below). + +``` +yarn osd bootstrap --single-version=brute-force +``` +In `brute-force` mode, bootstrapping chooses the newest of the various versions installed, irrespective of whether it +satisfies any of the ranges. Installing the chosen version, bootstrapping updates the `yarn.lock` files and applies a +range, in the form of `^`, to all `package.json` files that declared the dependency. + +``` +yarn osd bootstrap --single-version=ignore +``` +In `ignore` mode, bootstrapping behaves very similar to the `strict` mode by showing errors when different ranges of a +package are marked as dependencies, but without terminating. + ### Running scripts Some times you want to run the same script across multiple packages and plugins, diff --git a/packages/osd-pm/dist/index.js b/packages/osd-pm/dist/index.js index da3a27746bf7..458aacd2256c 100644 --- a/packages/osd-pm/dist/index.js +++ b/packages/osd-pm/dist/index.js @@ -131,18 +131,12 @@ Object.defineProperty(exports, "run", { return _cli.run; } }); - var _cli = __webpack_require__(1); - -var _production = __webpack_require__(563); - +var _production = __webpack_require__(568); var _projects = __webpack_require__(147); - var _project = __webpack_require__(165); - -var _workspaces = __webpack_require__(329); - -var _config = __webpack_require__(330); +var _workspaces = __webpack_require__(335); +var _config = __webpack_require__(336); /***/ }), /* 1 */ @@ -155,23 +149,14 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.run = run; - var _dedent = _interopRequireDefault(__webpack_require__(2)); - var _getopts = _interopRequireDefault(__webpack_require__(3)); - var _path = __webpack_require__(4); - var _tooling_log = __webpack_require__(5); - var _commands = __webpack_require__(128); - -var _run = __webpack_require__(558); - +var _run = __webpack_require__(563); var _log = __webpack_require__(145); - function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - /* * SPDX-License-Identifier: Apache-2.0 * @@ -201,11 +186,12 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de * specific language governing permissions and limitations * under the License. */ + function help() { _log.log.info((0, _dedent.default)` usage: osd [] - By default commands are run for OpenSearch Dashboards itself, all packages in the 'packages/' + By default, commands are run for OpenSearch Dashboards itself, all packages in the 'packages/' folder and for all plugins in './plugins' and '../opensearch-dashboards-extra'. Available commands: @@ -218,27 +204,25 @@ function help() { -i, --include Include only specified projects. If left unspecified, it defaults to including all projects. --skip-opensearch-dashboards-plugins Filter all plugins in ./plugins and ../opensearch-dashboards-extra when running command. --no-cache Disable the bootstrap cache + --single-version Set single version validation method: 'strict', 'loose', 'ignore', or 'brute-force' --verbose Set log level to verbose --debug Set log level to debug --quiet Set log level to error --silent Disable log output ` + '\n'); } - async function run(argv) { _log.log.setLogLevel((0, _tooling_log.pickLevelFromFlags)((0, _getopts.default)(argv, { boolean: ['verbose', 'debug', 'quiet', 'silent'] - }))); // We can simplify this setup (and remove this extra handling) once Yarn + }))); + + // We can simplify this setup (and remove this extra handling) once Yarn // starts forwarding the `--` directly to this script, see // https://github.com/yarnpkg/yarn/blob/b2d3e1a8fe45ef376b716d597cc79b38702a9320/src/cli/index.js#L174-L182 - - if (argv.includes('--')) { _log.log.error(`Using "--" is not allowed, as it doesn't work with 'yarn osd'.`); - process.exit(1); } - const options = (0, _getopts.default)(argv, { alias: { e: 'exclude', @@ -248,17 +232,17 @@ async function run(argv) { default: { cache: true }, - boolean: ['prefer-offline', 'frozen-lockfile', 'cache'] + boolean: ['prefer-offline', 'frozen-lockfile', 'cache'], + string: ['single-version'] }); const args = options._; - if (options.help || args.length === 0) { help(); return; - } // This `rootPath` is relative to `./dist/` as that's the location of the - // built version of this tool. - + } + // This `rootPath` is relative to `./dist/` as that's the location of the + // built version of this tool. const rootPath = (0, _path.resolve)(__dirname, '../../../'); const commandName = args[0]; const extraArgs = args.slice(1); @@ -268,13 +252,10 @@ async function run(argv) { rootPath }; const command = _commands.commands[commandName]; - if (command === undefined) { _log.log.error(`[${commandName}] is not a valid command, see 'osd --help'`); - process.exit(1); } - await (0, _run.runCommand)(command, commandOptions); } @@ -555,6 +536,7 @@ module.exports = require("path"); "use strict"; + /* * SPDX-License-Identifier: Apache-2.0 * @@ -565,7 +547,6 @@ module.exports = require("path"); * Any modifications Copyright OpenSearch Contributors. See * GitHub history for details. */ - Object.defineProperty(exports, "__esModule", { value: true }); @@ -588,27 +569,21 @@ exports.ToolingLogCollectingWriter = exports.parseLogLevel = exports.pickLevelFr * specific language governing permissions and limitations * under the License. */ - var tooling_log_1 = __webpack_require__(6); - Object.defineProperty(exports, "ToolingLog", { enumerable: true, get: function () { return tooling_log_1.ToolingLog; } }); - var tooling_log_text_writer_1 = __webpack_require__(111); - Object.defineProperty(exports, "ToolingLogTextWriter", { enumerable: true, get: function () { return tooling_log_text_writer_1.ToolingLogTextWriter; } }); - var log_levels_1 = __webpack_require__(126); - Object.defineProperty(exports, "pickLevelFromFlags", { enumerable: true, get: function () { @@ -621,9 +596,7 @@ Object.defineProperty(exports, "parseLogLevel", { return log_levels_1.parseLogLevel; } }); - var tooling_log_collecting_writer_1 = __webpack_require__(127); - Object.defineProperty(exports, "ToolingLogCollectingWriter", { enumerable: true, get: function () { @@ -637,6 +610,7 @@ Object.defineProperty(exports, "ToolingLogCollectingWriter", { "use strict"; + /* * SPDX-License-Identifier: Apache-2.0 * @@ -647,12 +621,10 @@ Object.defineProperty(exports, "ToolingLogCollectingWriter", { * Any modifications Copyright OpenSearch Contributors. See * GitHub history for details. */ - Object.defineProperty(exports, "__esModule", { value: true }); exports.ToolingLog = void 0; - const tslib_1 = __webpack_require__(7); /* * Licensed to Elasticsearch B.V. under one or more contributor @@ -672,64 +644,48 @@ const tslib_1 = __webpack_require__(7); * specific language governing permissions and limitations * under the License. */ - - const Rx = tslib_1.__importStar(__webpack_require__(8)); - const tooling_log_text_writer_1 = __webpack_require__(111); - class ToolingLog { constructor(writerConfig) { this.identWidth = 0; this.writers = writerConfig ? [new tooling_log_text_writer_1.ToolingLogTextWriter(writerConfig)] : []; this.written$ = new Rx.Subject(); } - indent(delta = 0) { this.identWidth = Math.max(this.identWidth + delta, 0); return this.identWidth; } - verbose(...args) { this.sendToWriters('verbose', args); } - debug(...args) { this.sendToWriters('debug', args); } - info(...args) { this.sendToWriters('info', args); } - success(...args) { this.sendToWriters('success', args); } - warning(...args) { this.sendToWriters('warning', args); } - error(error) { this.sendToWriters('error', [error]); } - write(...args) { this.sendToWriters('write', args); } - getWriters() { return this.writers.slice(0); } - setWriters(writers) { this.writers = [...writers]; } - getWritten$() { return this.written$.asObservable(); } - sendToWriters(type, args) { const msg = { type, @@ -737,20 +693,16 @@ class ToolingLog { args }; let written = false; - for (const writer of this.writers) { if (writer.write(msg)) { written = true; } } - if (written) { this.written$.next(msg); } } - } - exports.ToolingLog = ToolingLog; /***/ }), @@ -6816,6 +6768,7 @@ var ZipBufferIterator = /*@__PURE__*/ (function (_super) { "use strict"; + /* * SPDX-License-Identifier: Apache-2.0 * @@ -6826,12 +6779,10 @@ var ZipBufferIterator = /*@__PURE__*/ (function (_super) { * Any modifications Copyright OpenSearch Contributors. See * GitHub history for details. */ - Object.defineProperty(exports, "__esModule", { value: true }); exports.ToolingLogTextWriter = void 0; - const tslib_1 = __webpack_require__(7); /* * Licensed to Elasticsearch B.V. under one or more contributor @@ -6851,14 +6802,9 @@ const tslib_1 = __webpack_require__(7); * specific language governing permissions and limitations * under the License. */ - - const util_1 = __webpack_require__(112); - const chalk_1 = tslib_1.__importDefault(__webpack_require__(113)); - const log_levels_1 = __webpack_require__(126); - const { magentaBright, yellow, @@ -6876,72 +6822,56 @@ const MSG_PREFIXES = { warning: ` ${yellow('warn')} `, error: `${red('ERROR')} ` }; - const has = (obj, key) => obj.hasOwnProperty(key); - function shouldWriteType(level, type) { if (type === 'write') { return level.name !== 'silent'; } - return Boolean(level.flags[type === 'success' ? 'info' : type]); } - function stringifyError(error) { if (typeof error !== 'string' && !(error instanceof Error)) { error = new Error(`"${error}" thrown`); } - if (typeof error === 'string') { return error; } - return error.stack || error.message || error; } - class ToolingLogTextWriter { constructor(config) { this.level = log_levels_1.parseLogLevel(config.level); this.writeTo = config.writeTo; - if (!this.writeTo || typeof this.writeTo.write !== 'function') { throw new Error('ToolingLogTextWriter requires the `writeTo` option be set to a stream (like process.stdout)'); } } - write(msg) { if (!shouldWriteType(this.level, msg.type)) { return false; } - const prefix = has(MSG_PREFIXES, msg.type) ? MSG_PREFIXES[msg.type] : ''; ToolingLogTextWriter.write(this.writeTo, prefix, msg); return true; } - static write(writeTo, prefix, msg) { const txt = msg.type === 'error' ? stringifyError(msg.args[0]) : util_1.format(msg.args[0], ...msg.args.slice(1)); (prefix + txt).split('\n').forEach((line, i) => { let lineIndent = ''; - if (msg.indent > 0) { // if we are indenting write some spaces followed by a symbol lineIndent += ' '.repeat(msg.indent - 1); lineIndent += line.startsWith('-') ? '└' : '│'; } - if (line && prefix && i > 0) { // apply additional indentation to lines after // the first if this message gets a prefix lineIndent += PREFIX_INDENT; } - writeTo.write(`${lineIndent}${line}\n`); }); } - } - exports.ToolingLogTextWriter = ToolingLogTextWriter; /***/ }), @@ -8941,6 +8871,7 @@ module.exports = (chalk, temporary) => { "use strict"; + /* * SPDX-License-Identifier: Apache-2.0 * @@ -8951,13 +8882,11 @@ module.exports = (chalk, temporary) => { * Any modifications Copyright OpenSearch Contributors. See * GitHub history for details. */ - Object.defineProperty(exports, "__esModule", { value: true }); exports.parseLogLevel = exports.pickLevelFromFlags = void 0; const LEVELS = ['silent', 'error', 'warning', 'info', 'debug', 'verbose']; - function pickLevelFromFlags(flags, options = {}) { if (flags.verbose) return 'verbose'; if (flags.debug) return 'debug'; @@ -8965,17 +8894,13 @@ function pickLevelFromFlags(flags, options = {}) { if (flags.silent) return 'silent'; return options.default || 'info'; } - exports.pickLevelFromFlags = pickLevelFromFlags; - function parseLogLevel(name) { const i = LEVELS.indexOf(name); - if (i === -1) { const msg = `Invalid log level "${name}" ` + `(expected one of ${LEVELS.join(',')})`; throw new Error(msg); } - const flags = {}; LEVELS.forEach((level, levelI) => { flags[level] = levelI <= i; @@ -8985,7 +8910,6 @@ function parseLogLevel(name) { flags: flags }; } - exports.parseLogLevel = parseLogLevel; /***/ }), @@ -8994,6 +8918,7 @@ exports.parseLogLevel = parseLogLevel; "use strict"; + /* * SPDX-License-Identifier: Apache-2.0 * @@ -9004,7 +8929,6 @@ exports.parseLogLevel = parseLogLevel; * Any modifications Copyright OpenSearch Contributors. See * GitHub history for details. */ - Object.defineProperty(exports, "__esModule", { value: true }); @@ -9027,9 +8951,7 @@ exports.ToolingLogCollectingWriter = void 0; * specific language governing permissions and limitations * under the License. */ - const tooling_log_text_writer_1 = __webpack_require__(111); - class ToolingLogCollectingWriter extends tooling_log_text_writer_1.ToolingLogTextWriter { constructor(level = 'verbose') { super({ @@ -9043,9 +8965,7 @@ class ToolingLogCollectingWriter extends tooling_log_text_writer_1.ToolingLogTex }); this.messages = []; } - } - exports.ToolingLogCollectingWriter = ToolingLogCollectingWriter; /***/ }), @@ -9059,15 +8979,10 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.commands = void 0; - var _bootstrap = __webpack_require__(129); - -var _clean = __webpack_require__(344); - -var _run = __webpack_require__(457); - -var _watch = __webpack_require__(458); - +var _clean = __webpack_require__(350); +var _run = __webpack_require__(462); +var _watch = __webpack_require__(463); /* * SPDX-License-Identifier: Apache-2.0 * @@ -9097,13 +9012,13 @@ var _watch = __webpack_require__(458); * specific language governing permissions and limitations * under the License. */ -const commands = { + +const commands = exports.commands = { bootstrap: _bootstrap.BootstrapCommand, clean: _clean.CleanCommand, run: _run.RunCommand, watch: _watch.WatchCommand }; -exports.commands = commands; /***/ }), /* 129 */ @@ -9116,169 +9031,140 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.BootstrapCommand = void 0; - var _link_project_executables = __webpack_require__(130); - var _log = __webpack_require__(145); - var _parallelize = __webpack_require__(146); - var _projects = __webpack_require__(147); - -var _project_checksums = __webpack_require__(331); - -var _bootstrap_cache_file = __webpack_require__(341); - -var _yarn_lock = __webpack_require__(333); - -var _validate_dependencies = __webpack_require__(342); - -/* - * SPDX-License-Identifier: Apache-2.0 - * - * The OpenSearch Contributors require contributions made to - * this file be licensed under the Apache-2.0 license or a - * compatible open source license. - * - * Any modifications Copyright OpenSearch Contributors. See - * GitHub history for details. - */ - -/* - * Licensed to Elasticsearch B.V. under one or more contributor - * license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright - * ownership. Elasticsearch B.V. licenses this file to you under - * the Apache License, Version 2.0 (the "License"); you may - * not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -const BootstrapCommand = { - description: 'Install dependencies and crosslink projects', - name: 'bootstrap', - - async run(projects, projectGraph, { - options, - osd - }) { - const batchedProjectsByWorkspace = (0, _projects.topologicallyBatchProjects)(projects, projectGraph, { - batchByWorkspace: true - }); - const batchedProjects = (0, _projects.topologicallyBatchProjects)(projects, projectGraph); - const extraArgs = [...(options['frozen-lockfile'] === true ? ['--frozen-lockfile'] : []), ...(options['prefer-offline'] === true ? ['--prefer-offline'] : [])]; - - for (const batch of batchedProjectsByWorkspace) { - for (const project of batch) { - if (project.isWorkspaceProject) { - _log.log.verbose(`Skipping workspace project: ${project.name}`); - - continue; - } - - if (project.hasDependencies()) { - await project.installDependencies({ - extraArgs - }); - } - } - } - - const yarnLock = await (0, _yarn_lock.readYarnLock)(osd); - await (0, _validate_dependencies.validateDependencies)(osd, yarnLock); - await (0, _link_project_executables.linkProjectExecutables)(projects, projectGraph); - /** - * At the end of the bootstrapping process we call all `osd:bootstrap` scripts - * in the list of projects. We do this because some projects need to be - * transpiled before they can be used. Ideally we shouldn't do this unless we - * have to, as it will slow down the bootstrapping process. - */ - - const checksums = await (0, _project_checksums.getAllChecksums)(osd, _log.log, yarnLock); - const caches = new Map(); - let cachedProjectCount = 0; - - for (const project of projects.values()) { - if (project.hasScript('osd:bootstrap') || project.hasBuildTargets()) { - const file = new _bootstrap_cache_file.BootstrapCacheFile(osd, project, checksums); - const valid = options.cache && file.isValid(); - - if (valid) { - _log.log.debug(`[${project.name}] cache up to date`); - - cachedProjectCount += 1; - } - - caches.set(project, { - file, - valid - }); - } - } - - if (cachedProjectCount > 0) { - _log.log.success(`${cachedProjectCount} bootstrap builds are cached`); - } - - await (0, _parallelize.parallelizeBatches)(batchedProjects, async project => { - const cache = caches.get(project); - - if (cache && !cache.valid) { - // Explicitly defined targets override any bootstrap scripts - if (project.hasBuildTargets()) { - if (project.hasScript('osd:bootstrap')) { - _log.log.debug(`[${project.name}] ignoring [osd:bootstrap] script since build targets are provided`); - } - - _log.log.info(`[${project.name}] running [osd:bootstrap] build targets`); - - cache.file.delete(); - await project.buildForTargets({ - sourceMaps: true - }); - } else { - _log.log.info(`[${project.name}] running [osd:bootstrap] script`); - - cache.file.delete(); - await project.runScriptStreaming('osd:bootstrap'); - } - - cache.file.write(); - - _log.log.success(`[${project.name}] bootstrap complete`); - } - }); - } - -}; -exports.BootstrapCommand = BootstrapCommand; - -/***/ }), -/* 130 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.linkProjectExecutables = linkProjectExecutables; - -var _path = __webpack_require__(4); - -var _fs = __webpack_require__(131); - -var _log = __webpack_require__(145); - +var _project_checksums = __webpack_require__(337); +var _bootstrap_cache_file = __webpack_require__(347); +var _yarn_lock = __webpack_require__(339); +var _validate_dependencies = __webpack_require__(348); +/* + * SPDX-License-Identifier: Apache-2.0 + * + * The OpenSearch Contributors require contributions made to + * this file be licensed under the Apache-2.0 license or a + * compatible open source license. + * + * Any modifications Copyright OpenSearch Contributors. See + * GitHub history for details. + */ + +/* + * Licensed to Elasticsearch B.V. under one or more contributor + * license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright + * ownership. Elasticsearch B.V. licenses this file to you under + * the Apache License, Version 2.0 (the "License"); you may + * not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +const BootstrapCommand = exports.BootstrapCommand = { + description: 'Install dependencies and crosslink projects', + name: 'bootstrap', + async run(projects, projectGraph, { + options, + osd + }) { + var _options$singleVersi, _options$singleVersi$; + const batchedProjectsByWorkspace = (0, _projects.topologicallyBatchProjects)(projects, projectGraph, { + batchByWorkspace: true + }); + const batchedProjects = (0, _projects.topologicallyBatchProjects)(projects, projectGraph); + const extraArgs = [...(options['frozen-lockfile'] === true ? ['--frozen-lockfile'] : []), ...(options['prefer-offline'] === true ? ['--prefer-offline'] : [])]; + for (const batch of batchedProjectsByWorkspace) { + for (const project of batch) { + if (project.isWorkspaceProject) { + _log.log.verbose(`Skipping workspace project: ${project.name}`); + continue; + } + if (project.hasDependencies()) { + await project.installDependencies({ + extraArgs + }); + } + } + } + const yarnLock = await (0, _yarn_lock.readYarnLock)(osd); + await (0, _validate_dependencies.validateDependencies)(osd, yarnLock, (_options$singleVersi = options['single-version']) === null || _options$singleVersi === void 0 || (_options$singleVersi$ = _options$singleVersi.toLowerCase) === null || _options$singleVersi$ === void 0 ? void 0 : _options$singleVersi$.call(_options$singleVersi)); + await (0, _link_project_executables.linkProjectExecutables)(projects, projectGraph); + + /** + * At the end of the bootstrapping process we call all `osd:bootstrap` scripts + * in the list of projects. We do this because some projects need to be + * transpiled before they can be used. Ideally we shouldn't do this unless we + * have to, as it will slow down the bootstrapping process. + */ + + const checksums = await (0, _project_checksums.getAllChecksums)(osd, _log.log, yarnLock); + const caches = new Map(); + let cachedProjectCount = 0; + for (const project of projects.values()) { + if (project.hasScript('osd:bootstrap') || project.hasBuildTargets()) { + const file = new _bootstrap_cache_file.BootstrapCacheFile(osd, project, checksums); + const valid = options.cache && file.isValid(); + if (valid) { + _log.log.debug(`[${project.name}] cache up to date`); + cachedProjectCount += 1; + } + caches.set(project, { + file, + valid + }); + } + } + if (cachedProjectCount > 0) { + _log.log.success(`${cachedProjectCount} bootstrap builds are cached`); + } + await (0, _parallelize.parallelizeBatches)(batchedProjects, async project => { + const cache = caches.get(project); + if (cache && !cache.valid) { + // Explicitly defined targets override any bootstrap scripts + if (project.hasBuildTargets()) { + if (project.hasScript('osd:bootstrap')) { + _log.log.debug(`[${project.name}] ignoring [osd:bootstrap] script since build targets are provided`); + } + _log.log.info(`[${project.name}] running [osd:bootstrap] build targets`); + cache.file.delete(); + await project.buildForTargets({ + sourceMaps: true + }); + } else { + _log.log.info(`[${project.name}] running [osd:bootstrap] script`); + cache.file.delete(); + await project.runScriptStreaming('osd:bootstrap'); + } + cache.file.write(); + _log.log.success(`[${project.name}] bootstrap complete`); + } + }); + } +}; + +/***/ }), +/* 130 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.linkProjectExecutables = linkProjectExecutables; +var _path = __webpack_require__(4); +var _fs = __webpack_require__(131); +var _log = __webpack_require__(145); /* * SPDX-License-Identifier: Apache-2.0 * @@ -9319,28 +9205,24 @@ var _log = __webpack_require__(145); */ async function linkProjectExecutables(projectsByName, projectGraph) { _log.log.debug(`Linking package executables`); - for (const [projectName, projectDeps] of projectGraph) { const project = projectsByName.get(projectName); const binsDir = (0, _path.resolve)(project.nodeModulesLocation, '.bin'); - for (const projectDep of projectDeps) { const executables = projectDep.getExecutables(); - for (const name of Object.keys(executables)) { - const srcPath = executables[name]; // existing logic from lerna -- ensure that the bin we are going to - // point to exists or ignore it + const srcPath = executables[name]; + // existing logic from lerna -- ensure that the bin we are going to + // point to exists or ignore it if (!(await (0, _fs.isFile)(srcPath))) { continue; } + const dest = (0, _path.resolve)(binsDir, name); - const dest = (0, _path.resolve)(binsDir, name); // Get relative project path with normalized path separators. - + // Get relative project path with normalized path separators. const projectRelativePath = (0, _path.relative)(project.path, srcPath).split(_path.sep).join('/'); - _log.log.debug(`[${project.name}] ${name} -> ${projectRelativePath}`); - await (0, _fs.mkdirp)((0, _path.dirname)(dest)); await (0, _fs.createSymlink)(srcPath, dest, 'exec'); await (0, _fs.chmod)(dest, '755'); @@ -9389,19 +9271,12 @@ Object.defineProperty(exports, "writeFile", { return _promises.writeFile; } }); - var _cmdShim = _interopRequireDefault(__webpack_require__(132)); - var _promises = __webpack_require__(143); - var _ncp = __webpack_require__(144); - var _path = __webpack_require__(4); - var _util = __webpack_require__(112); - function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - /* * SPDX-License-Identifier: Apache-2.0 * @@ -9431,16 +9306,13 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de * specific language governing permissions and limitations * under the License. */ -const cmdShim = (0, _util.promisify)(_cmdShim.default); +const cmdShim = (0, _util.promisify)(_cmdShim.default); const mkdirp = async path => await (0, _promises.mkdir)(path, { recursive: true }); - exports.mkdirp = mkdirp; -const copyDirectory = (0, _util.promisify)(_ncp.ncp); -exports.copyDirectory = copyDirectory; - +const copyDirectory = exports.copyDirectory = (0, _util.promisify)(_ncp.ncp); async function statTest(path, block) { try { return block(await (0, _promises.lstat)(path)); @@ -9448,37 +9320,34 @@ async function statTest(path, block) { if (e.code === 'ENOENT') { return false; } - throw e; } } + /** * Test if a path points to a symlink. * @param path */ - - async function isSymlink(path) { return await statTest(path, stats => stats.isSymbolicLink()); } + /** * Test if a path points to a directory. * @param path */ - - async function isDirectory(path) { return await statTest(path, stats => stats.isDirectory()); } + /** * Test if a path points to a regular file. * @param path */ - - async function isFile(path) { return await statTest(path, stats => stats.isFile()); } + /** * Create a symlink at dest that points to src. Adapted from * https://github.com/lerna/lerna/blob/2f1b87d9e2295f587e4ac74269f714271d8ed428/src/FileSystemUtilities.js#L103. @@ -9489,8 +9358,6 @@ async function isFile(path) { * windows will use the `cmd-shim` module since symlinks can't be used * for executable files on windows. */ - - async function createSymlink(src, dest, type) { if (process.platform === 'win32') { if (type === 'exec') { @@ -9504,7 +9371,6 @@ async function createSymlink(src, dest, type) { await forceCreate(relativeSource, dest, posixType); } } - async function forceCreate(src, dest, type) { try { // If something exists at `dest` we need to remove it first. @@ -9514,7 +9380,6 @@ async function forceCreate(src, dest, type) { throw error; } } - await (0, _promises.symlink)(src, dest, type); } @@ -11221,20 +11086,42 @@ Object.defineProperty(exports, "LogLevel", { } }); exports.log = void 0; - var _tooling_log = __webpack_require__(5); - -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } - +function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } +function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); } +function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } /* + * SPDX-License-Identifier: Apache-2.0 + * + * The OpenSearch Contributors require contributions made to + * this file be licensed under the Apache-2.0 license or a + * compatible open source license. + * + * Any modifications Copyright OpenSearch Contributors. See + * GitHub history for details. + */ /* + * Licensed to Elasticsearch B.V. under one or more contributor + * license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright + * ownership. Elasticsearch B.V. licenses this file to you under + * the Apache License, Version 2.0 (the "License"); you may + * not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ class Log extends _tooling_log.ToolingLog { constructor() { super(); - _defineProperty(this, "logLevel", void 0); - this.setLogLevel('info'); } - setLogLevel(level) { this.logLevel = (0, _tooling_log.parseLogLevel)(level); this.setWriters([new _tooling_log.ToolingLogTextWriter({ @@ -11242,16 +11129,12 @@ class Log extends _tooling_log.ToolingLog { writeTo: process.stdout })]); } - wouldLogLevel(level) { return this.logLevel.flags[level]; } - } - exports.Log = Log; -const log = new Log(); -exports.log = log; +const log = exports.log = new Log(); /***/ }), /* 146 */ @@ -11265,7 +11148,92 @@ Object.defineProperty(exports, "__esModule", { }); exports.parallelize = parallelize; exports.parallelizeBatches = parallelizeBatches; +/* + * SPDX-License-Identifier: Apache-2.0 + * + * The OpenSearch Contributors require contributions made to + * this file be licensed under the Apache-2.0 license or a + * compatible open source license. + * + * Any modifications Copyright OpenSearch Contributors. See + * GitHub history for details. + */ + +/* + * Licensed to Elasticsearch B.V. under one or more contributor + * license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright + * ownership. Elasticsearch B.V. licenses this file to you under + * the Apache License, Version 2.0 (the "License"); you may + * not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ +async function parallelizeBatches(batches, fn) { + for (const batch of batches) { + // We need to make sure the entire batch has completed before we can move on + // to the next batch + await parallelize(batch, fn); + } +} +async function parallelize(items, fn, concurrency = 4) { + if (items.length === 0) { + return; + } + return new Promise((resolve, reject) => { + let activePromises = 0; + const values = items.slice(0); + async function scheduleItem(item) { + activePromises++; + try { + await fn(item); + activePromises--; + if (values.length > 0) { + // We have more work to do, so we schedule the next promise + scheduleItem(values.shift()); + } else if (activePromises === 0) { + // We have no more values left, and all items have completed, so we've + // completed all the work. + resolve(); + } + } catch (error) { + reject(error); + } + } + values.splice(0, concurrency).map(scheduleItem); + }); +} + +/***/ }), +/* 147 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.buildProjectGraph = buildProjectGraph; +exports.getProjects = getProjects; +exports.includeTransitiveProjects = includeTransitiveProjects; +exports.topologicallyBatchProjects = topologicallyBatchProjects; +var _glob = _interopRequireDefault(__webpack_require__(148)); +var _path = _interopRequireDefault(__webpack_require__(4)); +var _util = __webpack_require__(112); +var _errors = __webpack_require__(164); +var _project = __webpack_require__(165); +var _workspaces = __webpack_require__(335); +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } /* * SPDX-License-Identifier: Apache-2.0 * @@ -11295,106 +11263,9 @@ exports.parallelizeBatches = parallelizeBatches; * specific language governing permissions and limitations * under the License. */ -async function parallelizeBatches(batches, fn) { - for (const batch of batches) { - // We need to make sure the entire batch has completed before we can move on - // to the next batch - await parallelize(batch, fn); - } -} - -async function parallelize(items, fn, concurrency = 4) { - if (items.length === 0) { - return; - } - - return new Promise((resolve, reject) => { - let activePromises = 0; - const values = items.slice(0); - - async function scheduleItem(item) { - activePromises++; - - try { - await fn(item); - activePromises--; - - if (values.length > 0) { - // We have more work to do, so we schedule the next promise - scheduleItem(values.shift()); - } else if (activePromises === 0) { - // We have no more values left, and all items have completed, so we've - // completed all the work. - resolve(); - } - } catch (error) { - reject(error); - } - } - - values.splice(0, concurrency).map(scheduleItem); - }); -} - -/***/ }), -/* 147 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.buildProjectGraph = buildProjectGraph; -exports.getProjects = getProjects; -exports.includeTransitiveProjects = includeTransitiveProjects; -exports.topologicallyBatchProjects = topologicallyBatchProjects; - -var _glob = _interopRequireDefault(__webpack_require__(148)); - -var _path = _interopRequireDefault(__webpack_require__(4)); - -var _util = __webpack_require__(112); - -var _errors = __webpack_require__(164); - -var _project = __webpack_require__(165); -var _workspaces = __webpack_require__(329); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -/* - * SPDX-License-Identifier: Apache-2.0 - * - * The OpenSearch Contributors require contributions made to - * this file be licensed under the Apache-2.0 license or a - * compatible open source license. - * - * Any modifications Copyright OpenSearch Contributors. See - * GitHub history for details. - */ - -/* - * Licensed to Elasticsearch B.V. under one or more contributor - * license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright - * ownership. Elasticsearch B.V. licenses this file to you under - * the Apache License, Version 2.0 (the "License"); you may - * not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ const glob = (0, _util.promisify)(_glob.default); + /** a Map of project names to Project instances */ async function getProjects(rootPath, projectsPathsPatterns, { @@ -11403,44 +11274,33 @@ async function getProjects(rootPath, projectsPathsPatterns, { } = {}) { const projects = new Map(); const workspaceProjectsPaths = await (0, _workspaces.workspacePackagePaths)(rootPath); - for (const pattern of projectsPathsPatterns) { const pathsToProcess = await packagesFromGlobPattern({ pattern, rootPath }); - for (const filePath of pathsToProcess) { const projectConfigPath = normalize(filePath); - const projectDir = _path.default.dirname(projectConfigPath); - const project = await _project.Project.fromPath(projectDir); - if (workspaceProjectsPaths.indexOf(filePath) >= 0) { project.isWorkspaceProject = true; } - const excludeProject = exclude.includes(project.name) || include.length > 0 && !include.includes(project.name); - if (excludeProject) { continue; } - if (projects.has(project.name)) { throw new _errors.CliError(`There are multiple projects with the same name [${project.name}]`, { name: project.name, paths: [project.path, projects.get(project.name).path] }); } - projects.set(project.name, project); } } - return projects; } - function packagesFromGlobPattern({ pattern, rootPath @@ -11456,22 +11316,19 @@ function packagesFromGlobPattern({ noglobstar: true }; return glob(_path.default.join(pattern, 'package.json'), globOptions); -} // https://github.com/isaacs/node-glob/blob/master/common.js#L104 +} + +// https://github.com/isaacs/node-glob/blob/master/common.js#L104 // glob always returns "\\" as "/" in windows, so everyone // gets normalized because we can't have nice things. - - function normalize(dir) { return _path.default.normalize(dir); } - function buildProjectGraph(projects) { const projectGraph = new Map(); - for (const project of projects.values()) { const projectDeps = []; const dependencies = project.allDependencies; - for (const depName of Object.keys(dependencies)) { if (projects.has(depName)) { const dep = projects.get(depName); @@ -11480,83 +11337,69 @@ function buildProjectGraph(projects) { projectDeps.push(dep); } } - projectGraph.set(project.name, projectDeps); } - return projectGraph; } - function topologicallyBatchProjects(projectsToBatch, projectGraph, { batchByWorkspace = false } = {}) { // We're going to be chopping stuff out of this list, so copy it. const projectsLeftToBatch = new Set(projectsToBatch.keys()); const batches = []; - if (batchByWorkspace) { const workspaceRootProject = Array.from(projectsToBatch.values()).find(p => p.isWorkspaceRoot); - if (!workspaceRootProject) { throw new _errors.CliError(`There was no yarn workspace root found.`); - } // Push in the workspace root first. - + } + // Push in the workspace root first. batches.push([workspaceRootProject]); - projectsLeftToBatch.delete(workspaceRootProject.name); // In the next batch, push in all workspace projects. + projectsLeftToBatch.delete(workspaceRootProject.name); + // In the next batch, push in all workspace projects. const workspaceBatch = []; - for (const projectName of projectsLeftToBatch) { const project = projectsToBatch.get(projectName); - if (project.isWorkspaceProject) { workspaceBatch.push(project); projectsLeftToBatch.delete(projectName); } } - batches.push(workspaceBatch); } - while (projectsLeftToBatch.size > 0) { // Get all projects that have no remaining dependencies within the repo // that haven't yet been picked. const batch = []; - for (const projectName of projectsLeftToBatch) { const projectDeps = projectGraph.get(projectName); const needsDependenciesBatched = projectDeps.some(dep => projectsLeftToBatch.has(dep.name)); - if (!needsDependenciesBatched) { batch.push(projectsToBatch.get(projectName)); } - } // If we weren't able to find a project with no remaining dependencies, - // then we've encountered a cycle in the dependency graph. - + } + // If we weren't able to find a project with no remaining dependencies, + // then we've encountered a cycle in the dependency graph. const hasCycles = batch.length === 0; - if (hasCycles) { const cycleProjectNames = [...projectsLeftToBatch]; const message = 'Encountered a cycle in the dependency graph. Projects in cycle are:\n' + cycleProjectNames.join(', '); throw new _errors.CliError(message); } - batches.push(batch); batch.forEach(project => projectsLeftToBatch.delete(project.name)); } - return batches; } - function includeTransitiveProjects(subsetOfProjects, allProjects, { onlyProductionDependencies = false } = {}) { - const projectsWithDependents = new Map(); // the current list of packages we are expanding using breadth-first-search + const projectsWithDependents = new Map(); + // the current list of packages we are expanding using breadth-first-search const toProcess = [...subsetOfProjects]; - while (toProcess.length > 0) { const project = toProcess.shift(); const dependencies = onlyProductionDependencies ? project.productionDependencies : project.allDependencies; @@ -11567,7 +11410,6 @@ function includeTransitiveProjects(subsetOfProjects, allProjects, { }); projectsWithDependents.set(project.name, project); } - return projectsWithDependents; } @@ -14963,7 +14805,6 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.CliError = void 0; - /* * SPDX-License-Identifier: Apache-2.0 * @@ -14993,14 +14834,13 @@ exports.CliError = void 0; * specific language governing permissions and limitations * under the License. */ + class CliError extends Error { constructor(message, meta = {}) { super(message); this.meta = meta; } - } - exports.CliError = CliError; /***/ }), @@ -15014,107 +14854,115 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.Project = void 0; - -var _fs = _interopRequireDefault(__webpack_require__(134)); - -var _path = _interopRequireDefault(__webpack_require__(4)); - +var _fs = __webpack_require__(134); +var _path = __webpack_require__(4); var _util = __webpack_require__(112); - var _errors = __webpack_require__(164); - var _log = __webpack_require__(145); - var _package_json = __webpack_require__(166); - -var _scripts = __webpack_require__(282); - -var _targeted_build = __webpack_require__(328); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } - +var _scripts = __webpack_require__(287); +var _targeted_build = __webpack_require__(334); +function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } +function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); } +function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } /* + * SPDX-License-Identifier: Apache-2.0 + * + * The OpenSearch Contributors require contributions made to + * this file be licensed under the Apache-2.0 license or a + * compatible open source license. + * + * Any modifications Copyright OpenSearch Contributors. See + * GitHub history for details. + */ /* + * Licensed to Elasticsearch B.V. under one or more contributor + * license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright + * ownership. Elasticsearch B.V. licenses this file to you under + * the Apache License, Version 2.0 (the "License"); you may + * not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ class Project { static async fromPath(path) { const pkgJson = await (0, _package_json.readPackageJson)(path); return new Project(pkgJson, path); } - /** parsed package.json */ + /** parsed package.json */ constructor(packageJson, projectPath) { _defineProperty(this, "json", void 0); - + /** absolute path to the package.json file in the project */ _defineProperty(this, "packageJsonLocation", void 0); - + /** absolute path to the node_modules in the project (might not actually exist) */ _defineProperty(this, "nodeModulesLocation", void 0); - + /** absolute path to the target directory in the project (might not actually exist) */ _defineProperty(this, "targetLocation", void 0); - + /** absolute path to the directory containing the project */ _defineProperty(this, "path", void 0); - + /** the version of the project */ _defineProperty(this, "version", void 0); - + /** merged set of dependencies of the project, [name => version range] */ _defineProperty(this, "allDependencies", void 0); - + /** regular dependencies of the project, [name => version range] */ _defineProperty(this, "productionDependencies", void 0); - + /** development dependencies of the project, [name => version range] */ _defineProperty(this, "devDependencies", void 0); - + /** scripts defined in the package.json file for the project [name => body] */ _defineProperty(this, "scripts", void 0); - + /** custom definitions for the project, @osd/pm: { key: value } */ _defineProperty(this, "customDefinitions", void 0); - + /** build targets from the custom definitions, @osd/pm: { node: true, web: true } */ _defineProperty(this, "buildTargets", void 0); - _defineProperty(this, "isWorkspaceRoot", false); - _defineProperty(this, "isWorkspaceProject", false); - this.json = Object.freeze(packageJson); this.path = projectPath; - this.packageJsonLocation = _path.default.resolve(this.path, 'package.json'); - this.nodeModulesLocation = _path.default.resolve(this.path, 'node_modules'); - this.targetLocation = _path.default.resolve(this.path, 'target'); + this.packageJsonLocation = (0, _path.resolve)(this.path, 'package.json'); + this.nodeModulesLocation = (0, _path.resolve)(this.path, 'node_modules'); + this.targetLocation = (0, _path.resolve)(this.path, 'target'); this.version = this.json.version; this.productionDependencies = this.json.dependencies || {}; this.devDependencies = this.json.devDependencies || {}; - this.allDependencies = { ...this.devDependencies, + this.allDependencies = { + ...this.devDependencies, ...this.productionDependencies }; this.isWorkspaceRoot = this.json.hasOwnProperty('workspaces'); this.scripts = this.json.scripts || {}; this.customDefinitions = this.json['@osd/pm'] || {}; this.buildTargets = []; - for (const target of _targeted_build.BuildTargets) { if (this.customDefinitions[target]) this.buildTargets.push(target); } } - get name() { return this.json.name; } - ensureValidProjectDependency(project, dependentProjectIsInWorkspace) { const versionInPackageJson = this.allDependencies[project.name]; let expectedVersionInPackageJson; - if (dependentProjectIsInWorkspace) { expectedVersionInPackageJson = project.json.version; } else { - const relativePathToProject = normalizePath(_path.default.relative(this.path, project.path)); + const relativePathToProject = normalizePath((0, _path.relative)(this.path, project.path)); expectedVersionInPackageJson = `link:${relativePathToProject}`; - } // No issues! - + } + // No issues! if (versionInPackageJson === expectedVersionInPackageJson) { return; } - let problemMsg; - if ((0, _package_json.isLinkDependency)(versionInPackageJson) && dependentProjectIsInWorkspace) { problemMsg = `but should be using a workspace`; } else if ((0, _package_json.isLinkDependency)(versionInPackageJson)) { @@ -15122,79 +14970,62 @@ class Project { } else { problemMsg = `but it's not using the local package`; } - throw new _errors.CliError(`[${this.name}] depends on [${project.name}] ${problemMsg}. Update its package.json to the expected value below.`, { actual: `"${project.name}": "${versionInPackageJson}"`, expected: `"${project.name}": "${expectedVersionInPackageJson}"`, package: `${this.name} (${this.packageJsonLocation})` }); } - getBuildConfig() { return this.json.opensearchDashboards && this.json.opensearchDashboards.build || {}; } + /** * Returns the directory that should be copied into the OpenSearch Dashboards build artifact. * This config can be specified to only include the project's build artifacts * instead of everything located in the project directory. */ - - getIntermediateBuildDirectory() { - return _path.default.resolve(this.path, this.getBuildConfig().intermediateBuildDirectory || '.'); + return (0, _path.resolve)(this.path, this.getBuildConfig().intermediateBuildDirectory || '.'); } - getCleanConfig() { return this.json.opensearchDashboards && this.json.opensearchDashboards.clean || {}; } - isFlaggedAsDevOnly() { return !!(this.json.opensearchDashboards && this.json.opensearchDashboards.devOnly); } - hasScript(name) { return name in this.scripts; } - hasBuildTargets() { return this.buildTargets.length > 0; } - getExecutables() { const raw = this.json.bin; - if (!raw) { return {}; } - if (typeof raw === 'string') { return { - [this.name]: _path.default.resolve(this.path, raw) + [this.name]: (0, _path.resolve)(this.path, raw) }; } - if (typeof raw === 'object') { const binsConfig = {}; - for (const binName of Object.keys(raw)) { - binsConfig[binName] = _path.default.resolve(this.path, raw[binName]); + binsConfig[binName] = (0, _path.resolve)(this.path, raw[binName]); } - return binsConfig; } - throw new _errors.CliError(`[${this.name}] has an invalid "bin" field in its package.json, ` + `expected an object or a string`, { binConfig: (0, _util.inspect)(raw), package: `${this.name} (${this.packageJsonLocation})` }); } - async runScript(scriptName, args = []) { _log.log.info(`Running script [${scriptName}] in [${this.name}]:`); - return (0, _scripts.runScriptInPackage)(scriptName, args, this); } - runScriptStreaming(scriptName, options = {}) { return (0, _scripts.runScriptInPackageStreaming)({ script: scriptName, @@ -15203,82 +15034,89 @@ class Project { debug: options.debug }); } - buildForTargets(options = {}) { if (!this.hasBuildTargets()) { _log.log.warning(`There are no build targets defined for [${this.name}]`); - return false; } - return (0, _targeted_build.buildTargetedPackage)({ pkg: this, sourceMaps: options.sourceMaps }); } - hasDependencies() { return Object.keys(this.allDependencies).length > 0; } - async installDependencies({ extraArgs }) { _log.log.info(`[${this.name}] running yarn`); - _log.log.write(''); - await (0, _scripts.installInDir)(this.path, extraArgs); - _log.log.write(''); + await this.removeExtraneousNodeModules(); + } + /** + * Install a specific version of a dependency and update the package.json. + * When a range is not specified, ^ is used. The range is then + * placed in the package.json with intentionally no validation. + */ + async installDependencyVersion(depName, version, dev = false, range) { + _log.log.info(`[${this.name}] running yarn to install ${depName}@${version}`); + _log.log.write(''); + const rangeToUse = range || `^${version}`; + const extraArgs = [`${depName}@${version}`]; + if (dev) extraArgs.push('--dev'); + if (this.isWorkspaceProject) { + await (0, _scripts.installInDir)(this.path); + } else { + await (0, _scripts.installInDir)(this.path, extraArgs, true); + } + _log.log.info(`[${this.name}] updating manifests with ${depName}@${rangeToUse}`); + await (0, _scripts.patchFile)(this.packageJsonLocation, `"${depName}": "${version}"`, `"${depName}": "${rangeToUse}"`); + // The lock-file of workspace packages are symlinked to the root project's and editing the one in the project suffices + await (0, _scripts.patchFile)((0, _path.resolve)(this.path, 'yarn.lock'), `${depName}@${version}`, `${depName}@${rangeToUse}`); + _log.log.write(''); await this.removeExtraneousNodeModules(); } + /** * Yarn workspaces symlinks workspace projects to the root node_modules, even * when there is no depenency on the project. This results in unnecicary, and * often duplicated code in the build archives. */ - - async removeExtraneousNodeModules() { // this is only relevant for the root workspace if (!this.isWorkspaceRoot) { return; } - const workspacesInfo = await (0, _scripts.yarnWorkspacesInfo)(this.path); - const unusedWorkspaces = new Set(Object.keys(workspacesInfo)); // check for any cross-project dependency + const unusedWorkspaces = new Set(Object.keys(workspacesInfo)); + // check for any cross-project dependency for (const name of Object.keys(workspacesInfo)) { const workspace = workspacesInfo[name]; workspace.workspaceDependencies.forEach(w => unusedWorkspaces.delete(w)); } - unusedWorkspaces.forEach(name => { const { dependencies, devDependencies } = this.json; - - const nodeModulesPath = _path.default.resolve(this.nodeModulesLocation, name); - + const nodeModulesPath = (0, _path.resolve)(this.nodeModulesLocation, name); const isDependency = dependencies && dependencies.hasOwnProperty(name); const isDevDependency = devDependencies && devDependencies.hasOwnProperty(name); - - if (!isDependency && !isDevDependency && _fs.default.existsSync(nodeModulesPath)) { + if (!isDependency && !isDevDependency && (0, _fs.existsSync)(nodeModulesPath)) { _log.log.debug(`No dependency on ${name}, removing link in node_modules`); - - _fs.default.unlinkSync(nodeModulesPath); + (0, _fs.unlinkSync)(nodeModulesPath); } }); } +} -} // We normalize all path separators to `/` in generated files - - +// We normalize all path separators to `/` in generated files exports.Project = Project; - function normalizePath(path) { return path.replace(/[\\\/]+/g, '/'); } @@ -15296,13 +15134,9 @@ Object.defineProperty(exports, "__esModule", { exports.isLinkDependency = void 0; exports.readPackageJson = readPackageJson; exports.writePackageJson = writePackageJson; - var _readPkg = _interopRequireDefault(__webpack_require__(167)); - -var _writePkg = _interopRequireDefault(__webpack_require__(270)); - +var _writePkg = _interopRequireDefault(__webpack_require__(275)); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - /* * SPDX-License-Identifier: Apache-2.0 * @@ -15332,19 +15166,17 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de * specific language governing permissions and limitations * under the License. */ + function readPackageJson(cwd) { return (0, _readPkg.default)({ cwd, normalize: false }); } - function writePackageJson(path, json) { return (0, _writePkg.default)(path, json); } - const isLinkDependency = depVersion => depVersion.startsWith('link:'); - exports.isLinkDependency = isLinkDependency; /***/ }), @@ -15371,7 +15203,7 @@ module.exports = async options => { const json = parseJson(await readFileAsync(filePath, 'utf8')); if (options.normalize) { - __webpack_require__(189)(json); + __webpack_require__(194)(json); } return json; @@ -15388,7 +15220,7 @@ module.exports.sync = options => { const json = parseJson(fs.readFileSync(filePath, 'utf8')); if (options.normalize) { - __webpack_require__(189)(json); + __webpack_require__(194)(json); } return json; @@ -15830,11 +15662,23 @@ Object.defineProperty(exports, "__esModule", { }); exports.codeFrameColumns = codeFrameColumns; exports.default = _default; - var _highlight = __webpack_require__(174); - +var _chalk = _interopRequireWildcard(__webpack_require__(189), true); +function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); } +function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; } +let chalkWithForcedColor = undefined; +function getChalk(forceColor) { + if (forceColor) { + var _chalkWithForcedColor; + (_chalkWithForcedColor = chalkWithForcedColor) != null ? _chalkWithForcedColor : chalkWithForcedColor = new _chalk.default.constructor({ + enabled: true, + level: 1 + }); + return chalkWithForcedColor; + } + return _chalk.default; +} let deprecationWarningShown = false; - function getDefs(chalk) { return { gutter: chalk.grey, @@ -15842,9 +15686,7 @@ function getDefs(chalk) { message: chalk.red.bold }; } - const NEWLINE = /\r\n|[\n\r\u2028\u2029]/; - function getMarkerLines(loc, source, opts) { const startLoc = Object.assign({ column: 0, @@ -15861,22 +15703,17 @@ function getMarkerLines(loc, source, opts) { const endColumn = endLoc.column; let start = Math.max(startLine - (linesAbove + 1), 0); let end = Math.min(source.length, endLine + linesBelow); - if (startLine === -1) { start = 0; } - if (endLine === -1) { end = source.length; } - const lineDiff = endLine - startLine; const markerLines = {}; - if (lineDiff) { for (let i = 0; i <= lineDiff; i++) { const lineNumber = i + startLine; - if (!startColumn) { markerLines[lineNumber] = true; } else if (i === 0) { @@ -15900,23 +15737,19 @@ function getMarkerLines(loc, source, opts) { markerLines[startLine] = [startColumn, endColumn - startColumn]; } } - return { start, end, markerLines }; } - function codeFrameColumns(rawLines, loc, opts = {}) { const highlighted = (opts.highlightCode || opts.forceColor) && (0, _highlight.shouldHighlight)(opts); - const chalk = (0, _highlight.getChalk)(opts); + const chalk = getChalk(opts.forceColor); const defs = getDefs(chalk); - const maybeHighlight = (chalkFn, string) => { return highlighted ? chalkFn(string) : string; }; - const lines = rawLines.split(NEWLINE); const { start, @@ -15932,42 +15765,34 @@ function codeFrameColumns(rawLines, loc, opts = {}) { const gutter = ` ${paddedNumber} |`; const hasMarker = markerLines[number]; const lastMarkerLine = !markerLines[number + 1]; - if (hasMarker) { let markerLine = ""; - if (Array.isArray(hasMarker)) { const markerSpacing = line.slice(0, Math.max(hasMarker[0] - 1, 0)).replace(/[^\t]/g, " "); const numberOfMarkers = hasMarker[1] || 1; markerLine = ["\n ", maybeHighlight(defs.gutter, gutter.replace(/\d/g, " ")), " ", markerSpacing, maybeHighlight(defs.marker, "^").repeat(numberOfMarkers)].join(""); - if (lastMarkerLine && opts.message) { markerLine += " " + maybeHighlight(defs.message, opts.message); } } - return [maybeHighlight(defs.marker, ">"), maybeHighlight(defs.gutter, gutter), line.length > 0 ? ` ${line}` : "", markerLine].join(""); } else { return ` ${maybeHighlight(defs.gutter, gutter)}${line.length > 0 ? ` ${line}` : ""}`; } }).join("\n"); - if (opts.message && !hasColumns) { frame = `${" ".repeat(numberMaxWidth + 1)}${opts.message}\n${frame}`; } - if (highlighted) { return chalk.reset(frame); } else { return frame; } } - function _default(rawLines, lineNumber, colNumber, opts = {}) { if (!deprecationWarningShown) { deprecationWarningShown = true; const message = "Passing lineNumber and colNumber is deprecated to @babel/code-frame. Please use `codeFrameColumns`."; - if (process.emitWarning) { process.emitWarning(message, "DeprecationWarning"); } else { @@ -15976,7 +15801,6 @@ function _default(rawLines, lineNumber, colNumber, opts = {}) { console.warn(new Error(message)); } } - colNumber = Math.max(colNumber, 0); const location = { start: { @@ -15987,6 +15811,9 @@ function _default(rawLines, lineNumber, colNumber, opts = {}) { return codeFrameColumns(rawLines, location, opts); } +//# sourceMappingURL=index.js.map + + /***/ }), /* 174 */ /***/ (function(module, exports, __webpack_require__) { @@ -15998,17 +15825,13 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.default = highlight; -exports.getChalk = getChalk; exports.shouldHighlight = shouldHighlight; - var _jsTokens = __webpack_require__(175); - var _helperValidatorIdentifier = __webpack_require__(176); - -var _chalk = __webpack_require__(179); - +var _chalk = _interopRequireWildcard(__webpack_require__(179), true); +function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); } +function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; } const sometimesKeywords = new Set(["as", "async", "from", "get", "of", "set"]); - function getDefs(chalk) { return { keyword: chalk.cyan, @@ -16022,45 +15845,35 @@ function getDefs(chalk) { invalid: chalk.white.bgRed.bold }; } - const NEWLINE = /\r\n|[\n\r\u2028\u2029]/; const BRACKET = /^[()[\]{}]$/; let tokenize; { const JSX_TAG = /^[a-z][\w-]*$/i; - const getTokenType = function (token, offset, text) { if (token.type === "name") { if ((0, _helperValidatorIdentifier.isKeyword)(token.value) || (0, _helperValidatorIdentifier.isStrictReservedWord)(token.value, true) || sometimesKeywords.has(token.value)) { return "keyword"; } - - if (JSX_TAG.test(token.value) && (text[offset - 1] === "<" || text.substr(offset - 2, 2) == " colorize(str)).join("\n"); } else { highlighted += value; } } - return highlighted; } - function shouldHighlight(options) { - return !!_chalk.supportsColor || options.forceColor; + return _chalk.default.level > 0 || options.forceColor; +} +let chalkWithForcedColor = undefined; +function getChalk(forceColor) { + if (forceColor) { + var _chalkWithForcedColor; + (_chalkWithForcedColor = chalkWithForcedColor) != null ? _chalkWithForcedColor : chalkWithForcedColor = new _chalk.default.constructor({ + enabled: true, + level: 1 + }); + return chalkWithForcedColor; + } + return _chalk.default; } - -function getChalk(options) { - return options.forceColor ? new _chalk.constructor({ - enabled: true, - level: 1 - }) : _chalk; +{ + exports.getChalk = options => getChalk(options.forceColor); } - function highlight(code, options = {}) { if (code !== "" && shouldHighlight(options)) { - const chalk = getChalk(options); - const defs = getDefs(chalk); + const defs = getDefs(getChalk(options.forceColor)); return highlightTokens(defs, code); } else { return code; } } +//# sourceMappingURL=index.js.map + + /***/ }), /* 175 */ /***/ (function(module, exports) { @@ -16196,11 +16013,12 @@ Object.defineProperty(exports, "isStrictReservedWord", { return _keyword.isStrictReservedWord; } }); - var _identifier = __webpack_require__(177); - var _keyword = __webpack_require__(178); +//# sourceMappingURL=index.js.map + + /***/ }), /* 177 */ /***/ (function(module, exports, __webpack_require__) { @@ -16215,39 +16033,32 @@ exports.isIdentifierChar = isIdentifierChar; exports.isIdentifierName = isIdentifierName; exports.isIdentifierStart = isIdentifierStart; let nonASCIIidentifierStartChars = "\xaa\xb5\xba\xc0-\xd6\xd8-\xf6\xf8-\u02c1\u02c6-\u02d1\u02e0-\u02e4\u02ec\u02ee\u0370-\u0374\u0376\u0377\u037a-\u037d\u037f\u0386\u0388-\u038a\u038c\u038e-\u03a1\u03a3-\u03f5\u03f7-\u0481\u048a-\u052f\u0531-\u0556\u0559\u0560-\u0588\u05d0-\u05ea\u05ef-\u05f2\u0620-\u064a\u066e\u066f\u0671-\u06d3\u06d5\u06e5\u06e6\u06ee\u06ef\u06fa-\u06fc\u06ff\u0710\u0712-\u072f\u074d-\u07a5\u07b1\u07ca-\u07ea\u07f4\u07f5\u07fa\u0800-\u0815\u081a\u0824\u0828\u0840-\u0858\u0860-\u086a\u0870-\u0887\u0889-\u088e\u08a0-\u08c9\u0904-\u0939\u093d\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098c\u098f\u0990\u0993-\u09a8\u09aa-\u09b0\u09b2\u09b6-\u09b9\u09bd\u09ce\u09dc\u09dd\u09df-\u09e1\u09f0\u09f1\u09fc\u0a05-\u0a0a\u0a0f\u0a10\u0a13-\u0a28\u0a2a-\u0a30\u0a32\u0a33\u0a35\u0a36\u0a38\u0a39\u0a59-\u0a5c\u0a5e\u0a72-\u0a74\u0a85-\u0a8d\u0a8f-\u0a91\u0a93-\u0aa8\u0aaa-\u0ab0\u0ab2\u0ab3\u0ab5-\u0ab9\u0abd\u0ad0\u0ae0\u0ae1\u0af9\u0b05-\u0b0c\u0b0f\u0b10\u0b13-\u0b28\u0b2a-\u0b30\u0b32\u0b33\u0b35-\u0b39\u0b3d\u0b5c\u0b5d\u0b5f-\u0b61\u0b71\u0b83\u0b85-\u0b8a\u0b8e-\u0b90\u0b92-\u0b95\u0b99\u0b9a\u0b9c\u0b9e\u0b9f\u0ba3\u0ba4\u0ba8-\u0baa\u0bae-\u0bb9\u0bd0\u0c05-\u0c0c\u0c0e-\u0c10\u0c12-\u0c28\u0c2a-\u0c39\u0c3d\u0c58-\u0c5a\u0c5d\u0c60\u0c61\u0c80\u0c85-\u0c8c\u0c8e-\u0c90\u0c92-\u0ca8\u0caa-\u0cb3\u0cb5-\u0cb9\u0cbd\u0cdd\u0cde\u0ce0\u0ce1\u0cf1\u0cf2\u0d04-\u0d0c\u0d0e-\u0d10\u0d12-\u0d3a\u0d3d\u0d4e\u0d54-\u0d56\u0d5f-\u0d61\u0d7a-\u0d7f\u0d85-\u0d96\u0d9a-\u0db1\u0db3-\u0dbb\u0dbd\u0dc0-\u0dc6\u0e01-\u0e30\u0e32\u0e33\u0e40-\u0e46\u0e81\u0e82\u0e84\u0e86-\u0e8a\u0e8c-\u0ea3\u0ea5\u0ea7-\u0eb0\u0eb2\u0eb3\u0ebd\u0ec0-\u0ec4\u0ec6\u0edc-\u0edf\u0f00\u0f40-\u0f47\u0f49-\u0f6c\u0f88-\u0f8c\u1000-\u102a\u103f\u1050-\u1055\u105a-\u105d\u1061\u1065\u1066\u106e-\u1070\u1075-\u1081\u108e\u10a0-\u10c5\u10c7\u10cd\u10d0-\u10fa\u10fc-\u1248\u124a-\u124d\u1250-\u1256\u1258\u125a-\u125d\u1260-\u1288\u128a-\u128d\u1290-\u12b0\u12b2-\u12b5\u12b8-\u12be\u12c0\u12c2-\u12c5\u12c8-\u12d6\u12d8-\u1310\u1312-\u1315\u1318-\u135a\u1380-\u138f\u13a0-\u13f5\u13f8-\u13fd\u1401-\u166c\u166f-\u167f\u1681-\u169a\u16a0-\u16ea\u16ee-\u16f8\u1700-\u1711\u171f-\u1731\u1740-\u1751\u1760-\u176c\u176e-\u1770\u1780-\u17b3\u17d7\u17dc\u1820-\u1878\u1880-\u18a8\u18aa\u18b0-\u18f5\u1900-\u191e\u1950-\u196d\u1970-\u1974\u1980-\u19ab\u19b0-\u19c9\u1a00-\u1a16\u1a20-\u1a54\u1aa7\u1b05-\u1b33\u1b45-\u1b4c\u1b83-\u1ba0\u1bae\u1baf\u1bba-\u1be5\u1c00-\u1c23\u1c4d-\u1c4f\u1c5a-\u1c7d\u1c80-\u1c88\u1c90-\u1cba\u1cbd-\u1cbf\u1ce9-\u1cec\u1cee-\u1cf3\u1cf5\u1cf6\u1cfa\u1d00-\u1dbf\u1e00-\u1f15\u1f18-\u1f1d\u1f20-\u1f45\u1f48-\u1f4d\u1f50-\u1f57\u1f59\u1f5b\u1f5d\u1f5f-\u1f7d\u1f80-\u1fb4\u1fb6-\u1fbc\u1fbe\u1fc2-\u1fc4\u1fc6-\u1fcc\u1fd0-\u1fd3\u1fd6-\u1fdb\u1fe0-\u1fec\u1ff2-\u1ff4\u1ff6-\u1ffc\u2071\u207f\u2090-\u209c\u2102\u2107\u210a-\u2113\u2115\u2118-\u211d\u2124\u2126\u2128\u212a-\u2139\u213c-\u213f\u2145-\u2149\u214e\u2160-\u2188\u2c00-\u2ce4\u2ceb-\u2cee\u2cf2\u2cf3\u2d00-\u2d25\u2d27\u2d2d\u2d30-\u2d67\u2d6f\u2d80-\u2d96\u2da0-\u2da6\u2da8-\u2dae\u2db0-\u2db6\u2db8-\u2dbe\u2dc0-\u2dc6\u2dc8-\u2dce\u2dd0-\u2dd6\u2dd8-\u2dde\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303c\u3041-\u3096\u309b-\u309f\u30a1-\u30fa\u30fc-\u30ff\u3105-\u312f\u3131-\u318e\u31a0-\u31bf\u31f0-\u31ff\u3400-\u4dbf\u4e00-\ua48c\ua4d0-\ua4fd\ua500-\ua60c\ua610-\ua61f\ua62a\ua62b\ua640-\ua66e\ua67f-\ua69d\ua6a0-\ua6ef\ua717-\ua71f\ua722-\ua788\ua78b-\ua7ca\ua7d0\ua7d1\ua7d3\ua7d5-\ua7d9\ua7f2-\ua801\ua803-\ua805\ua807-\ua80a\ua80c-\ua822\ua840-\ua873\ua882-\ua8b3\ua8f2-\ua8f7\ua8fb\ua8fd\ua8fe\ua90a-\ua925\ua930-\ua946\ua960-\ua97c\ua984-\ua9b2\ua9cf\ua9e0-\ua9e4\ua9e6-\ua9ef\ua9fa-\ua9fe\uaa00-\uaa28\uaa40-\uaa42\uaa44-\uaa4b\uaa60-\uaa76\uaa7a\uaa7e-\uaaaf\uaab1\uaab5\uaab6\uaab9-\uaabd\uaac0\uaac2\uaadb-\uaadd\uaae0-\uaaea\uaaf2-\uaaf4\uab01-\uab06\uab09-\uab0e\uab11-\uab16\uab20-\uab26\uab28-\uab2e\uab30-\uab5a\uab5c-\uab69\uab70-\uabe2\uac00-\ud7a3\ud7b0-\ud7c6\ud7cb-\ud7fb\uf900-\ufa6d\ufa70-\ufad9\ufb00-\ufb06\ufb13-\ufb17\ufb1d\ufb1f-\ufb28\ufb2a-\ufb36\ufb38-\ufb3c\ufb3e\ufb40\ufb41\ufb43\ufb44\ufb46-\ufbb1\ufbd3-\ufd3d\ufd50-\ufd8f\ufd92-\ufdc7\ufdf0-\ufdfb\ufe70-\ufe74\ufe76-\ufefc\uff21-\uff3a\uff41-\uff5a\uff66-\uffbe\uffc2-\uffc7\uffca-\uffcf\uffd2-\uffd7\uffda-\uffdc"; -let nonASCIIidentifierChars = "\u200c\u200d\xb7\u0300-\u036f\u0387\u0483-\u0487\u0591-\u05bd\u05bf\u05c1\u05c2\u05c4\u05c5\u05c7\u0610-\u061a\u064b-\u0669\u0670\u06d6-\u06dc\u06df-\u06e4\u06e7\u06e8\u06ea-\u06ed\u06f0-\u06f9\u0711\u0730-\u074a\u07a6-\u07b0\u07c0-\u07c9\u07eb-\u07f3\u07fd\u0816-\u0819\u081b-\u0823\u0825-\u0827\u0829-\u082d\u0859-\u085b\u0898-\u089f\u08ca-\u08e1\u08e3-\u0903\u093a-\u093c\u093e-\u094f\u0951-\u0957\u0962\u0963\u0966-\u096f\u0981-\u0983\u09bc\u09be-\u09c4\u09c7\u09c8\u09cb-\u09cd\u09d7\u09e2\u09e3\u09e6-\u09ef\u09fe\u0a01-\u0a03\u0a3c\u0a3e-\u0a42\u0a47\u0a48\u0a4b-\u0a4d\u0a51\u0a66-\u0a71\u0a75\u0a81-\u0a83\u0abc\u0abe-\u0ac5\u0ac7-\u0ac9\u0acb-\u0acd\u0ae2\u0ae3\u0ae6-\u0aef\u0afa-\u0aff\u0b01-\u0b03\u0b3c\u0b3e-\u0b44\u0b47\u0b48\u0b4b-\u0b4d\u0b55-\u0b57\u0b62\u0b63\u0b66-\u0b6f\u0b82\u0bbe-\u0bc2\u0bc6-\u0bc8\u0bca-\u0bcd\u0bd7\u0be6-\u0bef\u0c00-\u0c04\u0c3c\u0c3e-\u0c44\u0c46-\u0c48\u0c4a-\u0c4d\u0c55\u0c56\u0c62\u0c63\u0c66-\u0c6f\u0c81-\u0c83\u0cbc\u0cbe-\u0cc4\u0cc6-\u0cc8\u0cca-\u0ccd\u0cd5\u0cd6\u0ce2\u0ce3\u0ce6-\u0cef\u0d00-\u0d03\u0d3b\u0d3c\u0d3e-\u0d44\u0d46-\u0d48\u0d4a-\u0d4d\u0d57\u0d62\u0d63\u0d66-\u0d6f\u0d81-\u0d83\u0dca\u0dcf-\u0dd4\u0dd6\u0dd8-\u0ddf\u0de6-\u0def\u0df2\u0df3\u0e31\u0e34-\u0e3a\u0e47-\u0e4e\u0e50-\u0e59\u0eb1\u0eb4-\u0ebc\u0ec8-\u0ecd\u0ed0-\u0ed9\u0f18\u0f19\u0f20-\u0f29\u0f35\u0f37\u0f39\u0f3e\u0f3f\u0f71-\u0f84\u0f86\u0f87\u0f8d-\u0f97\u0f99-\u0fbc\u0fc6\u102b-\u103e\u1040-\u1049\u1056-\u1059\u105e-\u1060\u1062-\u1064\u1067-\u106d\u1071-\u1074\u1082-\u108d\u108f-\u109d\u135d-\u135f\u1369-\u1371\u1712-\u1715\u1732-\u1734\u1752\u1753\u1772\u1773\u17b4-\u17d3\u17dd\u17e0-\u17e9\u180b-\u180d\u180f-\u1819\u18a9\u1920-\u192b\u1930-\u193b\u1946-\u194f\u19d0-\u19da\u1a17-\u1a1b\u1a55-\u1a5e\u1a60-\u1a7c\u1a7f-\u1a89\u1a90-\u1a99\u1ab0-\u1abd\u1abf-\u1ace\u1b00-\u1b04\u1b34-\u1b44\u1b50-\u1b59\u1b6b-\u1b73\u1b80-\u1b82\u1ba1-\u1bad\u1bb0-\u1bb9\u1be6-\u1bf3\u1c24-\u1c37\u1c40-\u1c49\u1c50-\u1c59\u1cd0-\u1cd2\u1cd4-\u1ce8\u1ced\u1cf4\u1cf7-\u1cf9\u1dc0-\u1dff\u203f\u2040\u2054\u20d0-\u20dc\u20e1\u20e5-\u20f0\u2cef-\u2cf1\u2d7f\u2de0-\u2dff\u302a-\u302f\u3099\u309a\ua620-\ua629\ua66f\ua674-\ua67d\ua69e\ua69f\ua6f0\ua6f1\ua802\ua806\ua80b\ua823-\ua827\ua82c\ua880\ua881\ua8b4-\ua8c5\ua8d0-\ua8d9\ua8e0-\ua8f1\ua8ff-\ua909\ua926-\ua92d\ua947-\ua953\ua980-\ua983\ua9b3-\ua9c0\ua9d0-\ua9d9\ua9e5\ua9f0-\ua9f9\uaa29-\uaa36\uaa43\uaa4c\uaa4d\uaa50-\uaa59\uaa7b-\uaa7d\uaab0\uaab2-\uaab4\uaab7\uaab8\uaabe\uaabf\uaac1\uaaeb-\uaaef\uaaf5\uaaf6\uabe3-\uabea\uabec\uabed\uabf0-\uabf9\ufb1e\ufe00-\ufe0f\ufe20-\ufe2f\ufe33\ufe34\ufe4d-\ufe4f\uff10-\uff19\uff3f"; +let nonASCIIidentifierChars = "\u200c\u200d\xb7\u0300-\u036f\u0387\u0483-\u0487\u0591-\u05bd\u05bf\u05c1\u05c2\u05c4\u05c5\u05c7\u0610-\u061a\u064b-\u0669\u0670\u06d6-\u06dc\u06df-\u06e4\u06e7\u06e8\u06ea-\u06ed\u06f0-\u06f9\u0711\u0730-\u074a\u07a6-\u07b0\u07c0-\u07c9\u07eb-\u07f3\u07fd\u0816-\u0819\u081b-\u0823\u0825-\u0827\u0829-\u082d\u0859-\u085b\u0898-\u089f\u08ca-\u08e1\u08e3-\u0903\u093a-\u093c\u093e-\u094f\u0951-\u0957\u0962\u0963\u0966-\u096f\u0981-\u0983\u09bc\u09be-\u09c4\u09c7\u09c8\u09cb-\u09cd\u09d7\u09e2\u09e3\u09e6-\u09ef\u09fe\u0a01-\u0a03\u0a3c\u0a3e-\u0a42\u0a47\u0a48\u0a4b-\u0a4d\u0a51\u0a66-\u0a71\u0a75\u0a81-\u0a83\u0abc\u0abe-\u0ac5\u0ac7-\u0ac9\u0acb-\u0acd\u0ae2\u0ae3\u0ae6-\u0aef\u0afa-\u0aff\u0b01-\u0b03\u0b3c\u0b3e-\u0b44\u0b47\u0b48\u0b4b-\u0b4d\u0b55-\u0b57\u0b62\u0b63\u0b66-\u0b6f\u0b82\u0bbe-\u0bc2\u0bc6-\u0bc8\u0bca-\u0bcd\u0bd7\u0be6-\u0bef\u0c00-\u0c04\u0c3c\u0c3e-\u0c44\u0c46-\u0c48\u0c4a-\u0c4d\u0c55\u0c56\u0c62\u0c63\u0c66-\u0c6f\u0c81-\u0c83\u0cbc\u0cbe-\u0cc4\u0cc6-\u0cc8\u0cca-\u0ccd\u0cd5\u0cd6\u0ce2\u0ce3\u0ce6-\u0cef\u0cf3\u0d00-\u0d03\u0d3b\u0d3c\u0d3e-\u0d44\u0d46-\u0d48\u0d4a-\u0d4d\u0d57\u0d62\u0d63\u0d66-\u0d6f\u0d81-\u0d83\u0dca\u0dcf-\u0dd4\u0dd6\u0dd8-\u0ddf\u0de6-\u0def\u0df2\u0df3\u0e31\u0e34-\u0e3a\u0e47-\u0e4e\u0e50-\u0e59\u0eb1\u0eb4-\u0ebc\u0ec8-\u0ece\u0ed0-\u0ed9\u0f18\u0f19\u0f20-\u0f29\u0f35\u0f37\u0f39\u0f3e\u0f3f\u0f71-\u0f84\u0f86\u0f87\u0f8d-\u0f97\u0f99-\u0fbc\u0fc6\u102b-\u103e\u1040-\u1049\u1056-\u1059\u105e-\u1060\u1062-\u1064\u1067-\u106d\u1071-\u1074\u1082-\u108d\u108f-\u109d\u135d-\u135f\u1369-\u1371\u1712-\u1715\u1732-\u1734\u1752\u1753\u1772\u1773\u17b4-\u17d3\u17dd\u17e0-\u17e9\u180b-\u180d\u180f-\u1819\u18a9\u1920-\u192b\u1930-\u193b\u1946-\u194f\u19d0-\u19da\u1a17-\u1a1b\u1a55-\u1a5e\u1a60-\u1a7c\u1a7f-\u1a89\u1a90-\u1a99\u1ab0-\u1abd\u1abf-\u1ace\u1b00-\u1b04\u1b34-\u1b44\u1b50-\u1b59\u1b6b-\u1b73\u1b80-\u1b82\u1ba1-\u1bad\u1bb0-\u1bb9\u1be6-\u1bf3\u1c24-\u1c37\u1c40-\u1c49\u1c50-\u1c59\u1cd0-\u1cd2\u1cd4-\u1ce8\u1ced\u1cf4\u1cf7-\u1cf9\u1dc0-\u1dff\u200c\u200d\u203f\u2040\u2054\u20d0-\u20dc\u20e1\u20e5-\u20f0\u2cef-\u2cf1\u2d7f\u2de0-\u2dff\u302a-\u302f\u3099\u309a\u30fb\ua620-\ua629\ua66f\ua674-\ua67d\ua69e\ua69f\ua6f0\ua6f1\ua802\ua806\ua80b\ua823-\ua827\ua82c\ua880\ua881\ua8b4-\ua8c5\ua8d0-\ua8d9\ua8e0-\ua8f1\ua8ff-\ua909\ua926-\ua92d\ua947-\ua953\ua980-\ua983\ua9b3-\ua9c0\ua9d0-\ua9d9\ua9e5\ua9f0-\ua9f9\uaa29-\uaa36\uaa43\uaa4c\uaa4d\uaa50-\uaa59\uaa7b-\uaa7d\uaab0\uaab2-\uaab4\uaab7\uaab8\uaabe\uaabf\uaac1\uaaeb-\uaaef\uaaf5\uaaf6\uabe3-\uabea\uabec\uabed\uabf0-\uabf9\ufb1e\ufe00-\ufe0f\ufe20-\ufe2f\ufe33\ufe34\ufe4d-\ufe4f\uff10-\uff19\uff3f\uff65"; const nonASCIIidentifierStart = new RegExp("[" + nonASCIIidentifierStartChars + "]"); const nonASCIIidentifier = new RegExp("[" + nonASCIIidentifierStartChars + nonASCIIidentifierChars + "]"); nonASCIIidentifierStartChars = nonASCIIidentifierChars = null; -const astralIdentifierStartCodes = [0, 11, 2, 25, 2, 18, 2, 1, 2, 14, 3, 13, 35, 122, 70, 52, 268, 28, 4, 48, 48, 31, 14, 29, 6, 37, 11, 29, 3, 35, 5, 7, 2, 4, 43, 157, 19, 35, 5, 35, 5, 39, 9, 51, 13, 10, 2, 14, 2, 6, 2, 1, 2, 10, 2, 14, 2, 6, 2, 1, 68, 310, 10, 21, 11, 7, 25, 5, 2, 41, 2, 8, 70, 5, 3, 0, 2, 43, 2, 1, 4, 0, 3, 22, 11, 22, 10, 30, 66, 18, 2, 1, 11, 21, 11, 25, 71, 55, 7, 1, 65, 0, 16, 3, 2, 2, 2, 28, 43, 28, 4, 28, 36, 7, 2, 27, 28, 53, 11, 21, 11, 18, 14, 17, 111, 72, 56, 50, 14, 50, 14, 35, 349, 41, 7, 1, 79, 28, 11, 0, 9, 21, 43, 17, 47, 20, 28, 22, 13, 52, 58, 1, 3, 0, 14, 44, 33, 24, 27, 35, 30, 0, 3, 0, 9, 34, 4, 0, 13, 47, 15, 3, 22, 0, 2, 0, 36, 17, 2, 24, 85, 6, 2, 0, 2, 3, 2, 14, 2, 9, 8, 46, 39, 7, 3, 1, 3, 21, 2, 6, 2, 1, 2, 4, 4, 0, 19, 0, 13, 4, 159, 52, 19, 3, 21, 2, 31, 47, 21, 1, 2, 0, 185, 46, 42, 3, 37, 47, 21, 0, 60, 42, 14, 0, 72, 26, 38, 6, 186, 43, 117, 63, 32, 7, 3, 0, 3, 7, 2, 1, 2, 23, 16, 0, 2, 0, 95, 7, 3, 38, 17, 0, 2, 0, 29, 0, 11, 39, 8, 0, 22, 0, 12, 45, 20, 0, 19, 72, 264, 8, 2, 36, 18, 0, 50, 29, 113, 6, 2, 1, 2, 37, 22, 0, 26, 5, 2, 1, 2, 31, 15, 0, 328, 18, 190, 0, 80, 921, 103, 110, 18, 195, 2637, 96, 16, 1070, 4050, 582, 8634, 568, 8, 30, 18, 78, 18, 29, 19, 47, 17, 3, 32, 20, 6, 18, 689, 63, 129, 74, 6, 0, 67, 12, 65, 1, 2, 0, 29, 6135, 9, 1237, 43, 8, 8936, 3, 2, 6, 2, 1, 2, 290, 46, 2, 18, 3, 9, 395, 2309, 106, 6, 12, 4, 8, 8, 9, 5991, 84, 2, 70, 2, 1, 3, 0, 3, 1, 3, 3, 2, 11, 2, 0, 2, 6, 2, 64, 2, 3, 3, 7, 2, 6, 2, 27, 2, 3, 2, 4, 2, 0, 4, 6, 2, 339, 3, 24, 2, 24, 2, 30, 2, 24, 2, 30, 2, 24, 2, 30, 2, 24, 2, 30, 2, 24, 2, 7, 1845, 30, 482, 44, 11, 6, 17, 0, 322, 29, 19, 43, 1269, 6, 2, 3, 2, 1, 2, 14, 2, 196, 60, 67, 8, 0, 1205, 3, 2, 26, 2, 1, 2, 0, 3, 0, 2, 9, 2, 3, 2, 0, 2, 0, 7, 0, 5, 0, 2, 0, 2, 0, 2, 2, 2, 1, 2, 0, 3, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 1, 2, 0, 3, 3, 2, 6, 2, 3, 2, 3, 2, 0, 2, 9, 2, 16, 6, 2, 2, 4, 2, 16, 4421, 42719, 33, 4152, 8, 221, 3, 5761, 15, 7472, 3104, 541, 1507, 4938]; -const astralIdentifierCodes = [509, 0, 227, 0, 150, 4, 294, 9, 1368, 2, 2, 1, 6, 3, 41, 2, 5, 0, 166, 1, 574, 3, 9, 9, 370, 1, 154, 10, 50, 3, 123, 2, 54, 14, 32, 10, 3, 1, 11, 3, 46, 10, 8, 0, 46, 9, 7, 2, 37, 13, 2, 9, 6, 1, 45, 0, 13, 2, 49, 13, 9, 3, 2, 11, 83, 11, 7, 0, 161, 11, 6, 9, 7, 3, 56, 1, 2, 6, 3, 1, 3, 2, 10, 0, 11, 1, 3, 6, 4, 4, 193, 17, 10, 9, 5, 0, 82, 19, 13, 9, 214, 6, 3, 8, 28, 1, 83, 16, 16, 9, 82, 12, 9, 9, 84, 14, 5, 9, 243, 14, 166, 9, 71, 5, 2, 1, 3, 3, 2, 0, 2, 1, 13, 9, 120, 6, 3, 6, 4, 0, 29, 9, 41, 6, 2, 3, 9, 0, 10, 10, 47, 15, 406, 7, 2, 7, 17, 9, 57, 21, 2, 13, 123, 5, 4, 0, 2, 1, 2, 6, 2, 0, 9, 9, 49, 4, 2, 1, 2, 4, 9, 9, 330, 3, 19306, 9, 87, 9, 39, 4, 60, 6, 26, 9, 1014, 0, 2, 54, 8, 3, 82, 0, 12, 1, 19628, 1, 4706, 45, 3, 22, 543, 4, 4, 5, 9, 7, 3, 6, 31, 3, 149, 2, 1418, 49, 513, 54, 5, 49, 9, 0, 15, 0, 23, 4, 2, 14, 1361, 6, 2, 16, 3, 6, 2, 1, 2, 4, 262, 6, 10, 9, 357, 0, 62, 13, 1495, 6, 110, 6, 6, 9, 4759, 9, 787719, 239]; - +const astralIdentifierStartCodes = [0, 11, 2, 25, 2, 18, 2, 1, 2, 14, 3, 13, 35, 122, 70, 52, 268, 28, 4, 48, 48, 31, 14, 29, 6, 37, 11, 29, 3, 35, 5, 7, 2, 4, 43, 157, 19, 35, 5, 35, 5, 39, 9, 51, 13, 10, 2, 14, 2, 6, 2, 1, 2, 10, 2, 14, 2, 6, 2, 1, 68, 310, 10, 21, 11, 7, 25, 5, 2, 41, 2, 8, 70, 5, 3, 0, 2, 43, 2, 1, 4, 0, 3, 22, 11, 22, 10, 30, 66, 18, 2, 1, 11, 21, 11, 25, 71, 55, 7, 1, 65, 0, 16, 3, 2, 2, 2, 28, 43, 28, 4, 28, 36, 7, 2, 27, 28, 53, 11, 21, 11, 18, 14, 17, 111, 72, 56, 50, 14, 50, 14, 35, 349, 41, 7, 1, 79, 28, 11, 0, 9, 21, 43, 17, 47, 20, 28, 22, 13, 52, 58, 1, 3, 0, 14, 44, 33, 24, 27, 35, 30, 0, 3, 0, 9, 34, 4, 0, 13, 47, 15, 3, 22, 0, 2, 0, 36, 17, 2, 24, 20, 1, 64, 6, 2, 0, 2, 3, 2, 14, 2, 9, 8, 46, 39, 7, 3, 1, 3, 21, 2, 6, 2, 1, 2, 4, 4, 0, 19, 0, 13, 4, 159, 52, 19, 3, 21, 2, 31, 47, 21, 1, 2, 0, 185, 46, 42, 3, 37, 47, 21, 0, 60, 42, 14, 0, 72, 26, 38, 6, 186, 43, 117, 63, 32, 7, 3, 0, 3, 7, 2, 1, 2, 23, 16, 0, 2, 0, 95, 7, 3, 38, 17, 0, 2, 0, 29, 0, 11, 39, 8, 0, 22, 0, 12, 45, 20, 0, 19, 72, 264, 8, 2, 36, 18, 0, 50, 29, 113, 6, 2, 1, 2, 37, 22, 0, 26, 5, 2, 1, 2, 31, 15, 0, 328, 18, 16, 0, 2, 12, 2, 33, 125, 0, 80, 921, 103, 110, 18, 195, 2637, 96, 16, 1071, 18, 5, 4026, 582, 8634, 568, 8, 30, 18, 78, 18, 29, 19, 47, 17, 3, 32, 20, 6, 18, 689, 63, 129, 74, 6, 0, 67, 12, 65, 1, 2, 0, 29, 6135, 9, 1237, 43, 8, 8936, 3, 2, 6, 2, 1, 2, 290, 16, 0, 30, 2, 3, 0, 15, 3, 9, 395, 2309, 106, 6, 12, 4, 8, 8, 9, 5991, 84, 2, 70, 2, 1, 3, 0, 3, 1, 3, 3, 2, 11, 2, 0, 2, 6, 2, 64, 2, 3, 3, 7, 2, 6, 2, 27, 2, 3, 2, 4, 2, 0, 4, 6, 2, 339, 3, 24, 2, 24, 2, 30, 2, 24, 2, 30, 2, 24, 2, 30, 2, 24, 2, 30, 2, 24, 2, 7, 1845, 30, 7, 5, 262, 61, 147, 44, 11, 6, 17, 0, 322, 29, 19, 43, 485, 27, 757, 6, 2, 3, 2, 1, 2, 14, 2, 196, 60, 67, 8, 0, 1205, 3, 2, 26, 2, 1, 2, 0, 3, 0, 2, 9, 2, 3, 2, 0, 2, 0, 7, 0, 5, 0, 2, 0, 2, 0, 2, 2, 2, 1, 2, 0, 3, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 1, 2, 0, 3, 3, 2, 6, 2, 3, 2, 3, 2, 0, 2, 9, 2, 16, 6, 2, 2, 4, 2, 16, 4421, 42719, 33, 4153, 7, 221, 3, 5761, 15, 7472, 16, 621, 2467, 541, 1507, 4938, 6, 4191]; +const astralIdentifierCodes = [509, 0, 227, 0, 150, 4, 294, 9, 1368, 2, 2, 1, 6, 3, 41, 2, 5, 0, 166, 1, 574, 3, 9, 9, 370, 1, 81, 2, 71, 10, 50, 3, 123, 2, 54, 14, 32, 10, 3, 1, 11, 3, 46, 10, 8, 0, 46, 9, 7, 2, 37, 13, 2, 9, 6, 1, 45, 0, 13, 2, 49, 13, 9, 3, 2, 11, 83, 11, 7, 0, 3, 0, 158, 11, 6, 9, 7, 3, 56, 1, 2, 6, 3, 1, 3, 2, 10, 0, 11, 1, 3, 6, 4, 4, 193, 17, 10, 9, 5, 0, 82, 19, 13, 9, 214, 6, 3, 8, 28, 1, 83, 16, 16, 9, 82, 12, 9, 9, 84, 14, 5, 9, 243, 14, 166, 9, 71, 5, 2, 1, 3, 3, 2, 0, 2, 1, 13, 9, 120, 6, 3, 6, 4, 0, 29, 9, 41, 6, 2, 3, 9, 0, 10, 10, 47, 15, 406, 7, 2, 7, 17, 9, 57, 21, 2, 13, 123, 5, 4, 0, 2, 1, 2, 6, 2, 0, 9, 9, 49, 4, 2, 1, 2, 4, 9, 9, 330, 3, 10, 1, 2, 0, 49, 6, 4, 4, 14, 9, 5351, 0, 7, 14, 13835, 9, 87, 9, 39, 4, 60, 6, 26, 9, 1014, 0, 2, 54, 8, 3, 82, 0, 12, 1, 19628, 1, 4706, 45, 3, 22, 543, 4, 4, 5, 9, 7, 3, 6, 31, 3, 149, 2, 1418, 49, 513, 54, 5, 49, 9, 0, 15, 0, 23, 4, 2, 14, 1361, 6, 2, 16, 3, 6, 2, 1, 2, 4, 101, 0, 161, 6, 10, 9, 357, 0, 62, 13, 499, 13, 983, 6, 110, 6, 6, 9, 4759, 9, 787719, 239]; function isInAstralSet(code, set) { let pos = 0x10000; - for (let i = 0, length = set.length; i < length; i += 2) { pos += set[i]; if (pos > code) return false; pos += set[i + 1]; if (pos >= code) return true; } - return false; } - function isIdentifierStart(code) { if (code < 65) return code === 36; if (code <= 90) return true; if (code < 97) return code === 95; if (code <= 122) return true; - if (code <= 0xffff) { return code >= 0xaa && nonASCIIidentifierStart.test(String.fromCharCode(code)); } - return isInAstralSet(code, astralIdentifierStartCodes); } - function isIdentifierChar(code) { if (code < 48) return code === 36; if (code < 58) return true; @@ -16255,31 +16066,23 @@ function isIdentifierChar(code) { if (code <= 90) return true; if (code < 97) return code === 95; if (code <= 122) return true; - if (code <= 0xffff) { return code >= 0xaa && nonASCIIidentifier.test(String.fromCharCode(code)); } - return isInAstralSet(code, astralIdentifierStartCodes) || isInAstralSet(code, astralIdentifierCodes); } - function isIdentifierName(name) { let isFirst = true; - for (let i = 0; i < name.length; i++) { let cp = name.charCodeAt(i); - if ((cp & 0xfc00) === 0xd800 && i + 1 < name.length) { const trail = name.charCodeAt(++i); - if ((trail & 0xfc00) === 0xdc00) { cp = 0x10000 + ((cp & 0x3ff) << 10) + (trail & 0x3ff); } } - if (isFirst) { isFirst = false; - if (!isIdentifierStart(cp)) { return false; } @@ -16287,10 +16090,12 @@ function isIdentifierName(name) { return false; } } - return !isFirst; } +//# sourceMappingURL=identifier.js.map + + /***/ }), /* 178 */ /***/ (function(module, exports, __webpack_require__) { @@ -16314,27 +16119,25 @@ const reservedWords = { const keywords = new Set(reservedWords.keyword); const reservedWordsStrictSet = new Set(reservedWords.strict); const reservedWordsStrictBindSet = new Set(reservedWords.strictBind); - function isReservedWord(word, inModule) { return inModule && word === "await" || word === "enum"; } - function isStrictReservedWord(word, inModule) { return isReservedWord(word, inModule) || reservedWordsStrictSet.has(word); } - function isStrictBindOnlyReservedWord(word) { return reservedWordsStrictBindSet.has(word); } - function isStrictBindReservedWord(word, inModule) { return isStrictReservedWord(word, inModule) || isStrictBindOnlyReservedWord(word); } - function isKeyword(word) { return keywords.has(word); } +//# sourceMappingURL=keyword.js.map + + /***/ }), /* 179 */ /***/ (function(module, exports, __webpack_require__) { @@ -18273,12 +18076,708 @@ module.exports = (chalk, tmp) => { /* 189 */ /***/ (function(module, exports, __webpack_require__) { +"use strict"; + +const escapeStringRegexp = __webpack_require__(180); +const ansiStyles = __webpack_require__(190); +const stdoutColor = __webpack_require__(191).stdout; + +const template = __webpack_require__(193); + +const isSimpleWindowsTerm = process.platform === 'win32' && !(process.env.TERM || '').toLowerCase().startsWith('xterm'); + +// `supportsColor.level` → `ansiStyles.color[name]` mapping +const levelMapping = ['ansi', 'ansi', 'ansi256', 'ansi16m']; + +// `color-convert` models to exclude from the Chalk API due to conflicts and such +const skipModels = new Set(['gray']); + +const styles = Object.create(null); + +function applyOptions(obj, options) { + options = options || {}; + + // Detect level if not set manually + const scLevel = stdoutColor ? stdoutColor.level : 0; + obj.level = options.level === undefined ? scLevel : options.level; + obj.enabled = 'enabled' in options ? options.enabled : obj.level > 0; +} + +function Chalk(options) { + // We check for this.template here since calling `chalk.constructor()` + // by itself will have a `this` of a previously constructed chalk object + if (!this || !(this instanceof Chalk) || this.template) { + const chalk = {}; + applyOptions(chalk, options); + + chalk.template = function () { + const args = [].slice.call(arguments); + return chalkTag.apply(null, [chalk.template].concat(args)); + }; + + Object.setPrototypeOf(chalk, Chalk.prototype); + Object.setPrototypeOf(chalk.template, chalk); + + chalk.template.constructor = Chalk; + + return chalk.template; + } + + applyOptions(this, options); +} + +// Use bright blue on Windows as the normal blue color is illegible +if (isSimpleWindowsTerm) { + ansiStyles.blue.open = '\u001B[94m'; +} + +for (const key of Object.keys(ansiStyles)) { + ansiStyles[key].closeRe = new RegExp(escapeStringRegexp(ansiStyles[key].close), 'g'); + + styles[key] = { + get() { + const codes = ansiStyles[key]; + return build.call(this, this._styles ? this._styles.concat(codes) : [codes], this._empty, key); + } + }; +} + +styles.visible = { + get() { + return build.call(this, this._styles || [], true, 'visible'); + } +}; + +ansiStyles.color.closeRe = new RegExp(escapeStringRegexp(ansiStyles.color.close), 'g'); +for (const model of Object.keys(ansiStyles.color.ansi)) { + if (skipModels.has(model)) { + continue; + } + + styles[model] = { + get() { + const level = this.level; + return function () { + const open = ansiStyles.color[levelMapping[level]][model].apply(null, arguments); + const codes = { + open, + close: ansiStyles.color.close, + closeRe: ansiStyles.color.closeRe + }; + return build.call(this, this._styles ? this._styles.concat(codes) : [codes], this._empty, model); + }; + } + }; +} + +ansiStyles.bgColor.closeRe = new RegExp(escapeStringRegexp(ansiStyles.bgColor.close), 'g'); +for (const model of Object.keys(ansiStyles.bgColor.ansi)) { + if (skipModels.has(model)) { + continue; + } + + const bgModel = 'bg' + model[0].toUpperCase() + model.slice(1); + styles[bgModel] = { + get() { + const level = this.level; + return function () { + const open = ansiStyles.bgColor[levelMapping[level]][model].apply(null, arguments); + const codes = { + open, + close: ansiStyles.bgColor.close, + closeRe: ansiStyles.bgColor.closeRe + }; + return build.call(this, this._styles ? this._styles.concat(codes) : [codes], this._empty, model); + }; + } + }; +} + +const proto = Object.defineProperties(() => {}, styles); + +function build(_styles, _empty, key) { + const builder = function () { + return applyStyle.apply(builder, arguments); + }; + + builder._styles = _styles; + builder._empty = _empty; + + const self = this; + + Object.defineProperty(builder, 'level', { + enumerable: true, + get() { + return self.level; + }, + set(level) { + self.level = level; + } + }); + + Object.defineProperty(builder, 'enabled', { + enumerable: true, + get() { + return self.enabled; + }, + set(enabled) { + self.enabled = enabled; + } + }); + + // See below for fix regarding invisible grey/dim combination on Windows + builder.hasGrey = this.hasGrey || key === 'gray' || key === 'grey'; + + // `__proto__` is used because we must return a function, but there is + // no way to create a function with a different prototype + builder.__proto__ = proto; // eslint-disable-line no-proto + + return builder; +} + +function applyStyle() { + // Support varags, but simply cast to string in case there's only one arg + const args = arguments; + const argsLen = args.length; + let str = String(arguments[0]); + + if (argsLen === 0) { + return ''; + } + + if (argsLen > 1) { + // Don't slice `arguments`, it prevents V8 optimizations + for (let a = 1; a < argsLen; a++) { + str += ' ' + args[a]; + } + } + + if (!this.enabled || this.level <= 0 || !str) { + return this._empty ? '' : str; + } + + // Turns out that on Windows dimmed gray text becomes invisible in cmd.exe, + // see https://github.com/chalk/chalk/issues/58 + // If we're on Windows and we're dealing with a gray color, temporarily make 'dim' a noop. + const originalDim = ansiStyles.dim.open; + if (isSimpleWindowsTerm && this.hasGrey) { + ansiStyles.dim.open = ''; + } + + for (const code of this._styles.slice().reverse()) { + // Replace any instances already present with a re-opening code + // otherwise only the part of the string until said closing code + // will be colored, and the rest will simply be 'plain'. + str = code.open + str.replace(code.closeRe, code.open) + code.close; + + // Close the styling before a linebreak and reopen + // after next line to fix a bleed issue on macOS + // https://github.com/chalk/chalk/pull/92 + str = str.replace(/\r?\n/g, `${code.close}$&${code.open}`); + } + + // Reset the original `dim` if we changed it to work around the Windows dimmed gray issue + ansiStyles.dim.open = originalDim; + + return str; +} + +function chalkTag(chalk, strings) { + if (!Array.isArray(strings)) { + // If chalk() was called by itself or with a string, + // return the string itself as a string. + return [].slice.call(arguments, 1).join(' '); + } + + const args = [].slice.call(arguments, 2); + const parts = [strings.raw[0]]; + + for (let i = 1; i < strings.length; i++) { + parts.push(String(args[i - 1]).replace(/[{}\\]/g, '\\$&')); + parts.push(String(strings.raw[i])); + } + + return template(chalk, parts.join('')); +} + +Object.defineProperties(Chalk.prototype, styles); + +module.exports = Chalk(); // eslint-disable-line new-cap +module.exports.supportsColor = stdoutColor; +module.exports.default = module.exports; // For TypeScript + + +/***/ }), +/* 190 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; +/* WEBPACK VAR INJECTION */(function(module) { +const colorConvert = __webpack_require__(182); + +const wrapAnsi16 = (fn, offset) => function () { + const code = fn.apply(colorConvert, arguments); + return `\u001B[${code + offset}m`; +}; + +const wrapAnsi256 = (fn, offset) => function () { + const code = fn.apply(colorConvert, arguments); + return `\u001B[${38 + offset};5;${code}m`; +}; + +const wrapAnsi16m = (fn, offset) => function () { + const rgb = fn.apply(colorConvert, arguments); + return `\u001B[${38 + offset};2;${rgb[0]};${rgb[1]};${rgb[2]}m`; +}; + +function assembleStyles() { + const codes = new Map(); + const styles = { + modifier: { + reset: [0, 0], + // 21 isn't widely supported and 22 does the same thing + bold: [1, 22], + dim: [2, 22], + italic: [3, 23], + underline: [4, 24], + inverse: [7, 27], + hidden: [8, 28], + strikethrough: [9, 29] + }, + color: { + black: [30, 39], + red: [31, 39], + green: [32, 39], + yellow: [33, 39], + blue: [34, 39], + magenta: [35, 39], + cyan: [36, 39], + white: [37, 39], + gray: [90, 39], + + // Bright color + redBright: [91, 39], + greenBright: [92, 39], + yellowBright: [93, 39], + blueBright: [94, 39], + magentaBright: [95, 39], + cyanBright: [96, 39], + whiteBright: [97, 39] + }, + bgColor: { + bgBlack: [40, 49], + bgRed: [41, 49], + bgGreen: [42, 49], + bgYellow: [43, 49], + bgBlue: [44, 49], + bgMagenta: [45, 49], + bgCyan: [46, 49], + bgWhite: [47, 49], + + // Bright color + bgBlackBright: [100, 49], + bgRedBright: [101, 49], + bgGreenBright: [102, 49], + bgYellowBright: [103, 49], + bgBlueBright: [104, 49], + bgMagentaBright: [105, 49], + bgCyanBright: [106, 49], + bgWhiteBright: [107, 49] + } + }; + + // Fix humans + styles.color.grey = styles.color.gray; + + for (const groupName of Object.keys(styles)) { + const group = styles[groupName]; + + for (const styleName of Object.keys(group)) { + const style = group[styleName]; + + styles[styleName] = { + open: `\u001B[${style[0]}m`, + close: `\u001B[${style[1]}m` + }; + + group[styleName] = styles[styleName]; + + codes.set(style[0], style[1]); + } + + Object.defineProperty(styles, groupName, { + value: group, + enumerable: false + }); + + Object.defineProperty(styles, 'codes', { + value: codes, + enumerable: false + }); + } + + const ansi2ansi = n => n; + const rgb2rgb = (r, g, b) => [r, g, b]; + + styles.color.close = '\u001B[39m'; + styles.bgColor.close = '\u001B[49m'; + + styles.color.ansi = { + ansi: wrapAnsi16(ansi2ansi, 0) + }; + styles.color.ansi256 = { + ansi256: wrapAnsi256(ansi2ansi, 0) + }; + styles.color.ansi16m = { + rgb: wrapAnsi16m(rgb2rgb, 0) + }; + + styles.bgColor.ansi = { + ansi: wrapAnsi16(ansi2ansi, 10) + }; + styles.bgColor.ansi256 = { + ansi256: wrapAnsi256(ansi2ansi, 10) + }; + styles.bgColor.ansi16m = { + rgb: wrapAnsi16m(rgb2rgb, 10) + }; + + for (let key of Object.keys(colorConvert)) { + if (typeof colorConvert[key] !== 'object') { + continue; + } + + const suite = colorConvert[key]; + + if (key === 'ansi16') { + key = 'ansi'; + } + + if ('ansi16' in suite) { + styles.color.ansi[key] = wrapAnsi16(suite.ansi16, 0); + styles.bgColor.ansi[key] = wrapAnsi16(suite.ansi16, 10); + } + + if ('ansi256' in suite) { + styles.color.ansi256[key] = wrapAnsi256(suite.ansi256, 0); + styles.bgColor.ansi256[key] = wrapAnsi256(suite.ansi256, 10); + } + + if ('rgb' in suite) { + styles.color.ansi16m[key] = wrapAnsi16m(suite.rgb, 0); + styles.bgColor.ansi16m[key] = wrapAnsi16m(suite.rgb, 10); + } + } + + return styles; +} + +// Make the export immutable +Object.defineProperty(module, 'exports', { + enumerable: true, + get: assembleStyles +}); + +/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(115)(module))) + +/***/ }), +/* 191 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +const os = __webpack_require__(121); +const hasFlag = __webpack_require__(192); + +const env = process.env; + +let forceColor; +if (hasFlag('no-color') || + hasFlag('no-colors') || + hasFlag('color=false')) { + forceColor = false; +} else if (hasFlag('color') || + hasFlag('colors') || + hasFlag('color=true') || + hasFlag('color=always')) { + forceColor = true; +} +if ('FORCE_COLOR' in env) { + forceColor = env.FORCE_COLOR.length === 0 || parseInt(env.FORCE_COLOR, 10) !== 0; +} + +function translateLevel(level) { + if (level === 0) { + return false; + } + + return { + level, + hasBasic: true, + has256: level >= 2, + has16m: level >= 3 + }; +} + +function supportsColor(stream) { + if (forceColor === false) { + return 0; + } + + if (hasFlag('color=16m') || + hasFlag('color=full') || + hasFlag('color=truecolor')) { + return 3; + } + + if (hasFlag('color=256')) { + return 2; + } + + if (stream && !stream.isTTY && forceColor !== true) { + return 0; + } + + const min = forceColor ? 1 : 0; + + if (process.platform === 'win32') { + // Node.js 7.5.0 is the first version of Node.js to include a patch to + // libuv that enables 256 color output on Windows. Anything earlier and it + // won't work. However, here we target Node.js 8 at minimum as it is an LTS + // release, and Node.js 7 is not. Windows 10 build 10586 is the first Windows + // release that supports 256 colors. Windows 10 build 14931 is the first release + // that supports 16m/TrueColor. + const osRelease = os.release().split('.'); + if ( + Number(process.versions.node.split('.')[0]) >= 8 && + Number(osRelease[0]) >= 10 && + Number(osRelease[2]) >= 10586 + ) { + return Number(osRelease[2]) >= 14931 ? 3 : 2; + } + + return 1; + } + + if ('CI' in env) { + if (['TRAVIS', 'CIRCLECI', 'APPVEYOR', 'GITLAB_CI'].some(sign => sign in env) || env.CI_NAME === 'codeship') { + return 1; + } + + return min; + } + + if ('TEAMCITY_VERSION' in env) { + return /^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(env.TEAMCITY_VERSION) ? 1 : 0; + } + + if (env.COLORTERM === 'truecolor') { + return 3; + } + + if ('TERM_PROGRAM' in env) { + const version = parseInt((env.TERM_PROGRAM_VERSION || '').split('.')[0], 10); + + switch (env.TERM_PROGRAM) { + case 'iTerm.app': + return version >= 3 ? 3 : 2; + case 'Apple_Terminal': + return 2; + // No default + } + } + + if (/-256(color)?$/i.test(env.TERM)) { + return 2; + } + + if (/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(env.TERM)) { + return 1; + } + + if ('COLORTERM' in env) { + return 1; + } + + if (env.TERM === 'dumb') { + return min; + } + + return min; +} + +function getSupportLevel(stream) { + const level = supportsColor(stream); + return translateLevel(level); +} + +module.exports = { + supportsColor: getSupportLevel, + stdout: getSupportLevel(process.stdout), + stderr: getSupportLevel(process.stderr) +}; + + +/***/ }), +/* 192 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +module.exports = (flag, argv) => { + argv = argv || process.argv; + const prefix = flag.startsWith('-') ? '' : (flag.length === 1 ? '-' : '--'); + const pos = argv.indexOf(prefix + flag); + const terminatorPos = argv.indexOf('--'); + return pos !== -1 && (terminatorPos === -1 ? true : pos < terminatorPos); +}; + + +/***/ }), +/* 193 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +const TEMPLATE_REGEX = /(?:\\(u[a-f\d]{4}|x[a-f\d]{2}|.))|(?:\{(~)?(\w+(?:\([^)]*\))?(?:\.\w+(?:\([^)]*\))?)*)(?:[ \t]|(?=\r?\n)))|(\})|((?:.|[\r\n\f])+?)/gi; +const STYLE_REGEX = /(?:^|\.)(\w+)(?:\(([^)]*)\))?/g; +const STRING_REGEX = /^(['"])((?:\\.|(?!\1)[^\\])*)\1$/; +const ESCAPE_REGEX = /\\(u[a-f\d]{4}|x[a-f\d]{2}|.)|([^\\])/gi; + +const ESCAPES = new Map([ + ['n', '\n'], + ['r', '\r'], + ['t', '\t'], + ['b', '\b'], + ['f', '\f'], + ['v', '\v'], + ['0', '\0'], + ['\\', '\\'], + ['e', '\u001B'], + ['a', '\u0007'] +]); + +function unescape(c) { + if ((c[0] === 'u' && c.length === 5) || (c[0] === 'x' && c.length === 3)) { + return String.fromCharCode(parseInt(c.slice(1), 16)); + } + + return ESCAPES.get(c) || c; +} + +function parseArguments(name, args) { + const results = []; + const chunks = args.trim().split(/\s*,\s*/g); + let matches; + + for (const chunk of chunks) { + if (!isNaN(chunk)) { + results.push(Number(chunk)); + } else if ((matches = chunk.match(STRING_REGEX))) { + results.push(matches[2].replace(ESCAPE_REGEX, (m, escape, chr) => escape ? unescape(escape) : chr)); + } else { + throw new Error(`Invalid Chalk template style argument: ${chunk} (in style '${name}')`); + } + } + + return results; +} + +function parseStyle(style) { + STYLE_REGEX.lastIndex = 0; + + const results = []; + let matches; + + while ((matches = STYLE_REGEX.exec(style)) !== null) { + const name = matches[1]; + + if (matches[2]) { + const args = parseArguments(name, matches[2]); + results.push([name].concat(args)); + } else { + results.push([name]); + } + } + + return results; +} + +function buildStyle(chalk, styles) { + const enabled = {}; + + for (const layer of styles) { + for (const style of layer.styles) { + enabled[style[0]] = layer.inverse ? null : style.slice(1); + } + } + + let current = chalk; + for (const styleName of Object.keys(enabled)) { + if (Array.isArray(enabled[styleName])) { + if (!(styleName in current)) { + throw new Error(`Unknown Chalk style: ${styleName}`); + } + + if (enabled[styleName].length > 0) { + current = current[styleName].apply(current, enabled[styleName]); + } else { + current = current[styleName]; + } + } + } + + return current; +} + +module.exports = (chalk, tmp) => { + const styles = []; + const chunks = []; + let chunk = []; + + // eslint-disable-next-line max-params + tmp.replace(TEMPLATE_REGEX, (m, escapeChar, inverse, style, close, chr) => { + if (escapeChar) { + chunk.push(unescape(escapeChar)); + } else if (style) { + const str = chunk.join(''); + chunk = []; + chunks.push(styles.length === 0 ? str : buildStyle(chalk, styles)(str)); + styles.push({inverse, styles: parseStyle(style)}); + } else if (close) { + if (styles.length === 0) { + throw new Error('Found extraneous } in Chalk template literal'); + } + + chunks.push(buildStyle(chalk, styles)(chunk.join(''))); + chunk = []; + styles.pop(); + } else { + chunk.push(chr); + } + }); + + chunks.push(chunk.join('')); + + if (styles.length > 0) { + const errMsg = `Chalk template literal is missing ${styles.length} closing bracket${styles.length === 1 ? '' : 's'} (\`}\`)`; + throw new Error(errMsg); + } + + return chunks.join(''); +}; + + +/***/ }), +/* 194 */ +/***/ (function(module, exports, __webpack_require__) { + module.exports = normalize -var fixer = __webpack_require__(190) +var fixer = __webpack_require__(195) normalize.fixer = fixer -var makeWarning = __webpack_require__(268) +var makeWarning = __webpack_require__(273) var fieldsToFix = ['name','version','description','repository','modules','scripts' ,'files','bin','man','bugs','keywords','readme','homepage','license'] @@ -18315,17 +18814,17 @@ function ucFirst (string) { /***/ }), -/* 190 */ +/* 195 */ /***/ (function(module, exports, __webpack_require__) { -var semver = __webpack_require__(191) -var validateLicense = __webpack_require__(238); -var hostedGitInfo = __webpack_require__(246) -var isBuiltinModule = __webpack_require__(250).isCore +var semver = __webpack_require__(196) +var validateLicense = __webpack_require__(243); +var hostedGitInfo = __webpack_require__(251) +var isBuiltinModule = __webpack_require__(255).isCore var depTypes = ["dependencies","devDependencies","optionalDependencies"] -var extractDescription = __webpack_require__(266) -var url = __webpack_require__(247) -var typos = __webpack_require__(267) +var extractDescription = __webpack_require__(271) +var url = __webpack_require__(252) +var typos = __webpack_require__(272) var fixer = module.exports = { // default warning function @@ -18739,51 +19238,51 @@ function bugsTypos(bugs, warn) { /***/ }), -/* 191 */ +/* 196 */ /***/ (function(module, exports, __webpack_require__) { // just pre-load all the stuff that index.js lazily exports -const internalRe = __webpack_require__(192) -const constants = __webpack_require__(193) -const SemVer = __webpack_require__(195) -const identifiers = __webpack_require__(197) -const parse = __webpack_require__(198) -const valid = __webpack_require__(199) -const clean = __webpack_require__(200) -const inc = __webpack_require__(201) -const diff = __webpack_require__(202) -const major = __webpack_require__(203) -const minor = __webpack_require__(204) -const patch = __webpack_require__(205) -const prerelease = __webpack_require__(206) -const compare = __webpack_require__(207) -const rcompare = __webpack_require__(208) -const compareLoose = __webpack_require__(209) -const compareBuild = __webpack_require__(210) -const sort = __webpack_require__(211) -const rsort = __webpack_require__(212) -const gt = __webpack_require__(213) -const lt = __webpack_require__(214) -const eq = __webpack_require__(215) -const neq = __webpack_require__(216) -const gte = __webpack_require__(217) -const lte = __webpack_require__(218) -const cmp = __webpack_require__(219) -const coerce = __webpack_require__(220) -const Comparator = __webpack_require__(221) -const Range = __webpack_require__(222) -const satisfies = __webpack_require__(226) -const toComparators = __webpack_require__(227) -const maxSatisfying = __webpack_require__(228) -const minSatisfying = __webpack_require__(229) -const minVersion = __webpack_require__(230) -const validRange = __webpack_require__(231) -const outside = __webpack_require__(232) -const gtr = __webpack_require__(233) -const ltr = __webpack_require__(234) -const intersects = __webpack_require__(235) -const simplifyRange = __webpack_require__(236) -const subset = __webpack_require__(237) +const internalRe = __webpack_require__(197) +const constants = __webpack_require__(198) +const SemVer = __webpack_require__(200) +const identifiers = __webpack_require__(202) +const parse = __webpack_require__(203) +const valid = __webpack_require__(204) +const clean = __webpack_require__(205) +const inc = __webpack_require__(206) +const diff = __webpack_require__(207) +const major = __webpack_require__(208) +const minor = __webpack_require__(209) +const patch = __webpack_require__(210) +const prerelease = __webpack_require__(211) +const compare = __webpack_require__(212) +const rcompare = __webpack_require__(213) +const compareLoose = __webpack_require__(214) +const compareBuild = __webpack_require__(215) +const sort = __webpack_require__(216) +const rsort = __webpack_require__(217) +const gt = __webpack_require__(218) +const lt = __webpack_require__(219) +const eq = __webpack_require__(220) +const neq = __webpack_require__(221) +const gte = __webpack_require__(222) +const lte = __webpack_require__(223) +const cmp = __webpack_require__(224) +const coerce = __webpack_require__(225) +const Comparator = __webpack_require__(226) +const Range = __webpack_require__(227) +const satisfies = __webpack_require__(231) +const toComparators = __webpack_require__(232) +const maxSatisfying = __webpack_require__(233) +const minSatisfying = __webpack_require__(234) +const minVersion = __webpack_require__(235) +const validRange = __webpack_require__(236) +const outside = __webpack_require__(237) +const gtr = __webpack_require__(238) +const ltr = __webpack_require__(239) +const intersects = __webpack_require__(240) +const simplifyRange = __webpack_require__(241) +const subset = __webpack_require__(242) module.exports = { parse, valid, @@ -18834,11 +19333,15 @@ module.exports = { /***/ }), -/* 192 */ +/* 197 */ /***/ (function(module, exports, __webpack_require__) { -const { MAX_SAFE_COMPONENT_LENGTH, MAX_SAFE_BUILD_LENGTH } = __webpack_require__(193) -const debug = __webpack_require__(194) +const { + MAX_SAFE_COMPONENT_LENGTH, + MAX_SAFE_BUILD_LENGTH, + MAX_LENGTH, +} = __webpack_require__(198) +const debug = __webpack_require__(199) exports = module.exports = {} // The actual regexps go on exports.re @@ -18858,7 +19361,7 @@ const LETTERDASHNUMBER = '[a-zA-Z0-9-]' // all input should have extra whitespace removed. const safeRegexReplacements = [ ['\\s', 1], - ['\\d', MAX_SAFE_COMPONENT_LENGTH], + ['\\d', MAX_LENGTH], [LETTERDASHNUMBER, MAX_SAFE_BUILD_LENGTH], ] @@ -19048,7 +19551,7 @@ createToken('GTE0PRE', '^\\s*>=\\s*0\\.0\\.0-0\\s*$') /***/ }), -/* 193 */ +/* 198 */ /***/ (function(module, exports) { // Note: this is the semver.org version of the spec that it implements @@ -19089,7 +19592,7 @@ module.exports = { /***/ }), -/* 194 */ +/* 199 */ /***/ (function(module, exports) { const debug = ( @@ -19104,15 +19607,15 @@ module.exports = debug /***/ }), -/* 195 */ +/* 200 */ /***/ (function(module, exports, __webpack_require__) { -const debug = __webpack_require__(194) -const { MAX_LENGTH, MAX_SAFE_INTEGER } = __webpack_require__(193) -const { safeRe: re, t } = __webpack_require__(192) +const debug = __webpack_require__(199) +const { MAX_LENGTH, MAX_SAFE_INTEGER } = __webpack_require__(198) +const { safeRe: re, t } = __webpack_require__(197) -const parseOptions = __webpack_require__(196) -const { compareIdentifiers } = __webpack_require__(197) +const parseOptions = __webpack_require__(201) +const { compareIdentifiers } = __webpack_require__(202) class SemVer { constructor (version, options) { options = parseOptions(options) @@ -19412,7 +19915,7 @@ module.exports = SemVer /***/ }), -/* 196 */ +/* 201 */ /***/ (function(module, exports) { // parse out just the options we care about @@ -19433,7 +19936,7 @@ module.exports = parseOptions /***/ }), -/* 197 */ +/* 202 */ /***/ (function(module, exports) { const numeric = /^[0-9]+$/ @@ -19462,10 +19965,10 @@ module.exports = { /***/ }), -/* 198 */ +/* 203 */ /***/ (function(module, exports, __webpack_require__) { -const SemVer = __webpack_require__(195) +const SemVer = __webpack_require__(200) const parse = (version, options, throwErrors = false) => { if (version instanceof SemVer) { return version @@ -19484,10 +19987,10 @@ module.exports = parse /***/ }), -/* 199 */ +/* 204 */ /***/ (function(module, exports, __webpack_require__) { -const parse = __webpack_require__(198) +const parse = __webpack_require__(203) const valid = (version, options) => { const v = parse(version, options) return v ? v.version : null @@ -19496,10 +19999,10 @@ module.exports = valid /***/ }), -/* 200 */ +/* 205 */ /***/ (function(module, exports, __webpack_require__) { -const parse = __webpack_require__(198) +const parse = __webpack_require__(203) const clean = (version, options) => { const s = parse(version.trim().replace(/^[=v]+/, ''), options) return s ? s.version : null @@ -19508,10 +20011,10 @@ module.exports = clean /***/ }), -/* 201 */ +/* 206 */ /***/ (function(module, exports, __webpack_require__) { -const SemVer = __webpack_require__(195) +const SemVer = __webpack_require__(200) const inc = (version, release, options, identifier, identifierBase) => { if (typeof (options) === 'string') { @@ -19533,10 +20036,10 @@ module.exports = inc /***/ }), -/* 202 */ +/* 207 */ /***/ (function(module, exports, __webpack_require__) { -const parse = __webpack_require__(198) +const parse = __webpack_require__(203) const diff = (version1, version2) => { const v1 = parse(version1, null, true) @@ -19604,37 +20107,37 @@ module.exports = diff /***/ }), -/* 203 */ +/* 208 */ /***/ (function(module, exports, __webpack_require__) { -const SemVer = __webpack_require__(195) +const SemVer = __webpack_require__(200) const major = (a, loose) => new SemVer(a, loose).major module.exports = major /***/ }), -/* 204 */ +/* 209 */ /***/ (function(module, exports, __webpack_require__) { -const SemVer = __webpack_require__(195) +const SemVer = __webpack_require__(200) const minor = (a, loose) => new SemVer(a, loose).minor module.exports = minor /***/ }), -/* 205 */ +/* 210 */ /***/ (function(module, exports, __webpack_require__) { -const SemVer = __webpack_require__(195) +const SemVer = __webpack_require__(200) const patch = (a, loose) => new SemVer(a, loose).patch module.exports = patch /***/ }), -/* 206 */ +/* 211 */ /***/ (function(module, exports, __webpack_require__) { -const parse = __webpack_require__(198) +const parse = __webpack_require__(203) const prerelease = (version, options) => { const parsed = parse(version, options) return (parsed && parsed.prerelease.length) ? parsed.prerelease : null @@ -19643,10 +20146,10 @@ module.exports = prerelease /***/ }), -/* 207 */ +/* 212 */ /***/ (function(module, exports, __webpack_require__) { -const SemVer = __webpack_require__(195) +const SemVer = __webpack_require__(200) const compare = (a, b, loose) => new SemVer(a, loose).compare(new SemVer(b, loose)) @@ -19654,28 +20157,28 @@ module.exports = compare /***/ }), -/* 208 */ +/* 213 */ /***/ (function(module, exports, __webpack_require__) { -const compare = __webpack_require__(207) +const compare = __webpack_require__(212) const rcompare = (a, b, loose) => compare(b, a, loose) module.exports = rcompare /***/ }), -/* 209 */ +/* 214 */ /***/ (function(module, exports, __webpack_require__) { -const compare = __webpack_require__(207) +const compare = __webpack_require__(212) const compareLoose = (a, b) => compare(a, b, true) module.exports = compareLoose /***/ }), -/* 210 */ +/* 215 */ /***/ (function(module, exports, __webpack_require__) { -const SemVer = __webpack_require__(195) +const SemVer = __webpack_require__(200) const compareBuild = (a, b, loose) => { const versionA = new SemVer(a, loose) const versionB = new SemVer(b, loose) @@ -19685,87 +20188,87 @@ module.exports = compareBuild /***/ }), -/* 211 */ +/* 216 */ /***/ (function(module, exports, __webpack_require__) { -const compareBuild = __webpack_require__(210) +const compareBuild = __webpack_require__(215) const sort = (list, loose) => list.sort((a, b) => compareBuild(a, b, loose)) module.exports = sort /***/ }), -/* 212 */ +/* 217 */ /***/ (function(module, exports, __webpack_require__) { -const compareBuild = __webpack_require__(210) +const compareBuild = __webpack_require__(215) const rsort = (list, loose) => list.sort((a, b) => compareBuild(b, a, loose)) module.exports = rsort /***/ }), -/* 213 */ +/* 218 */ /***/ (function(module, exports, __webpack_require__) { -const compare = __webpack_require__(207) +const compare = __webpack_require__(212) const gt = (a, b, loose) => compare(a, b, loose) > 0 module.exports = gt /***/ }), -/* 214 */ +/* 219 */ /***/ (function(module, exports, __webpack_require__) { -const compare = __webpack_require__(207) +const compare = __webpack_require__(212) const lt = (a, b, loose) => compare(a, b, loose) < 0 module.exports = lt /***/ }), -/* 215 */ +/* 220 */ /***/ (function(module, exports, __webpack_require__) { -const compare = __webpack_require__(207) +const compare = __webpack_require__(212) const eq = (a, b, loose) => compare(a, b, loose) === 0 module.exports = eq /***/ }), -/* 216 */ +/* 221 */ /***/ (function(module, exports, __webpack_require__) { -const compare = __webpack_require__(207) +const compare = __webpack_require__(212) const neq = (a, b, loose) => compare(a, b, loose) !== 0 module.exports = neq /***/ }), -/* 217 */ +/* 222 */ /***/ (function(module, exports, __webpack_require__) { -const compare = __webpack_require__(207) +const compare = __webpack_require__(212) const gte = (a, b, loose) => compare(a, b, loose) >= 0 module.exports = gte /***/ }), -/* 218 */ +/* 223 */ /***/ (function(module, exports, __webpack_require__) { -const compare = __webpack_require__(207) +const compare = __webpack_require__(212) const lte = (a, b, loose) => compare(a, b, loose) <= 0 module.exports = lte /***/ }), -/* 219 */ +/* 224 */ /***/ (function(module, exports, __webpack_require__) { -const eq = __webpack_require__(215) -const neq = __webpack_require__(216) -const gt = __webpack_require__(213) -const gte = __webpack_require__(217) -const lt = __webpack_require__(214) -const lte = __webpack_require__(218) +const eq = __webpack_require__(220) +const neq = __webpack_require__(221) +const gt = __webpack_require__(218) +const gte = __webpack_require__(222) +const lt = __webpack_require__(219) +const lte = __webpack_require__(223) const cmp = (a, op, b, loose) => { switch (op) { @@ -19815,12 +20318,12 @@ module.exports = cmp /***/ }), -/* 220 */ +/* 225 */ /***/ (function(module, exports, __webpack_require__) { -const SemVer = __webpack_require__(195) -const parse = __webpack_require__(198) -const { safeRe: re, t } = __webpack_require__(192) +const SemVer = __webpack_require__(200) +const parse = __webpack_require__(203) +const { safeRe: re, t } = __webpack_require__(197) const coerce = (version, options) => { if (version instanceof SemVer) { @@ -19873,7 +20376,7 @@ module.exports = coerce /***/ }), -/* 221 */ +/* 226 */ /***/ (function(module, exports, __webpack_require__) { const ANY = Symbol('SemVer ANY') @@ -20011,16 +20514,16 @@ class Comparator { module.exports = Comparator -const parseOptions = __webpack_require__(196) -const { safeRe: re, t } = __webpack_require__(192) -const cmp = __webpack_require__(219) -const debug = __webpack_require__(194) -const SemVer = __webpack_require__(195) -const Range = __webpack_require__(222) +const parseOptions = __webpack_require__(201) +const { safeRe: re, t } = __webpack_require__(197) +const cmp = __webpack_require__(224) +const debug = __webpack_require__(199) +const SemVer = __webpack_require__(200) +const Range = __webpack_require__(227) /***/ }), -/* 222 */ +/* 227 */ /***/ (function(module, exports, __webpack_require__) { // hoisted class for cyclic dependency @@ -20063,7 +20566,7 @@ class Range { this.set = this.raw .split('||') // map the range to a 2d array of comparators - .map(r => this.parseRange(r)) + .map(r => this.parseRange(r.trim())) // throw out any comparator lists that are empty // this generally means that it was not a valid range, which is allowed // in loose mode, but will still throw if the WHOLE range is invalid. @@ -20223,21 +20726,21 @@ class Range { module.exports = Range -const LRU = __webpack_require__(223) +const LRU = __webpack_require__(228) const cache = new LRU({ max: 1000 }) -const parseOptions = __webpack_require__(196) -const Comparator = __webpack_require__(221) -const debug = __webpack_require__(194) -const SemVer = __webpack_require__(195) +const parseOptions = __webpack_require__(201) +const Comparator = __webpack_require__(226) +const debug = __webpack_require__(199) +const SemVer = __webpack_require__(200) const { safeRe: re, t, comparatorTrimReplace, tildeTrimReplace, caretTrimReplace, -} = __webpack_require__(192) -const { FLAG_INCLUDE_PRERELEASE, FLAG_LOOSE } = __webpack_require__(193) +} = __webpack_require__(197) +const { FLAG_INCLUDE_PRERELEASE, FLAG_LOOSE } = __webpack_require__(198) const isNullSet = c => c.value === '<0.0.0-0' const isAny = c => c.value === '' @@ -20565,14 +21068,14 @@ const testSet = (set, version, options) => { /***/ }), -/* 223 */ +/* 228 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; // A linked list to keep track of recently-used-ness -const Yallist = __webpack_require__(224) +const Yallist = __webpack_require__(229) const MAX = Symbol('max') const LENGTH = Symbol('length') @@ -20906,7 +21409,7 @@ module.exports = LRUCache /***/ }), -/* 224 */ +/* 229 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -21334,12 +21837,12 @@ function Node (value, prev, next, list) { try { // add if support for Symbol.iterator is present - __webpack_require__(225)(Yallist) + __webpack_require__(230)(Yallist) } catch (er) {} /***/ }), -/* 225 */ +/* 230 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -21354,10 +21857,10 @@ module.exports = function (Yallist) { /***/ }), -/* 226 */ +/* 231 */ /***/ (function(module, exports, __webpack_require__) { -const Range = __webpack_require__(222) +const Range = __webpack_require__(227) const satisfies = (version, range, options) => { try { range = new Range(range, options) @@ -21370,10 +21873,10 @@ module.exports = satisfies /***/ }), -/* 227 */ +/* 232 */ /***/ (function(module, exports, __webpack_require__) { -const Range = __webpack_require__(222) +const Range = __webpack_require__(227) // Mostly just for testing and legacy API reasons const toComparators = (range, options) => @@ -21384,11 +21887,11 @@ module.exports = toComparators /***/ }), -/* 228 */ +/* 233 */ /***/ (function(module, exports, __webpack_require__) { -const SemVer = __webpack_require__(195) -const Range = __webpack_require__(222) +const SemVer = __webpack_require__(200) +const Range = __webpack_require__(227) const maxSatisfying = (versions, range, options) => { let max = null @@ -21415,11 +21918,11 @@ module.exports = maxSatisfying /***/ }), -/* 229 */ +/* 234 */ /***/ (function(module, exports, __webpack_require__) { -const SemVer = __webpack_require__(195) -const Range = __webpack_require__(222) +const SemVer = __webpack_require__(200) +const Range = __webpack_require__(227) const minSatisfying = (versions, range, options) => { let min = null let minSV = null @@ -21445,12 +21948,12 @@ module.exports = minSatisfying /***/ }), -/* 230 */ +/* 235 */ /***/ (function(module, exports, __webpack_require__) { -const SemVer = __webpack_require__(195) -const Range = __webpack_require__(222) -const gt = __webpack_require__(213) +const SemVer = __webpack_require__(200) +const Range = __webpack_require__(227) +const gt = __webpack_require__(218) const minVersion = (range, loose) => { range = new Range(range, loose) @@ -21512,10 +22015,10 @@ module.exports = minVersion /***/ }), -/* 231 */ +/* 236 */ /***/ (function(module, exports, __webpack_require__) { -const Range = __webpack_require__(222) +const Range = __webpack_require__(227) const validRange = (range, options) => { try { // Return '*' instead of '' so that truthiness works. @@ -21529,18 +22032,18 @@ module.exports = validRange /***/ }), -/* 232 */ +/* 237 */ /***/ (function(module, exports, __webpack_require__) { -const SemVer = __webpack_require__(195) -const Comparator = __webpack_require__(221) +const SemVer = __webpack_require__(200) +const Comparator = __webpack_require__(226) const { ANY } = Comparator -const Range = __webpack_require__(222) -const satisfies = __webpack_require__(226) -const gt = __webpack_require__(213) -const lt = __webpack_require__(214) -const lte = __webpack_require__(218) -const gte = __webpack_require__(217) +const Range = __webpack_require__(227) +const satisfies = __webpack_require__(231) +const gt = __webpack_require__(218) +const lt = __webpack_require__(219) +const lte = __webpack_require__(223) +const gte = __webpack_require__(222) const outside = (version, range, hilo, options) => { version = new SemVer(version, options) @@ -21615,30 +22118,30 @@ module.exports = outside /***/ }), -/* 233 */ +/* 238 */ /***/ (function(module, exports, __webpack_require__) { // Determine if version is greater than all the versions possible in the range. -const outside = __webpack_require__(232) +const outside = __webpack_require__(237) const gtr = (version, range, options) => outside(version, range, '>', options) module.exports = gtr /***/ }), -/* 234 */ +/* 239 */ /***/ (function(module, exports, __webpack_require__) { -const outside = __webpack_require__(232) +const outside = __webpack_require__(237) // Determine if version is less than all the versions possible in the range const ltr = (version, range, options) => outside(version, range, '<', options) module.exports = ltr /***/ }), -/* 235 */ +/* 240 */ /***/ (function(module, exports, __webpack_require__) { -const Range = __webpack_require__(222) +const Range = __webpack_require__(227) const intersects = (r1, r2, options) => { r1 = new Range(r1, options) r2 = new Range(r2, options) @@ -21648,14 +22151,14 @@ module.exports = intersects /***/ }), -/* 236 */ +/* 241 */ /***/ (function(module, exports, __webpack_require__) { // given a set of versions and a range, create a "simplified" range // that includes the same versions that the original range does // If the original range is shorter than the simplified one, return that. -const satisfies = __webpack_require__(226) -const compare = __webpack_require__(207) +const satisfies = __webpack_require__(231) +const compare = __webpack_require__(212) module.exports = (versions, range, options) => { const set = [] let first = null @@ -21701,14 +22204,14 @@ module.exports = (versions, range, options) => { /***/ }), -/* 237 */ +/* 242 */ /***/ (function(module, exports, __webpack_require__) { -const Range = __webpack_require__(222) -const Comparator = __webpack_require__(221) +const Range = __webpack_require__(227) +const Comparator = __webpack_require__(226) const { ANY } = Comparator -const satisfies = __webpack_require__(226) -const compare = __webpack_require__(207) +const satisfies = __webpack_require__(231) +const compare = __webpack_require__(212) // Complex range `r1 || r2 || ...` is a subset of `R1 || R2 || ...` iff: // - Every simple range `r1, r2, ...` is a null set, OR @@ -21954,11 +22457,11 @@ module.exports = subset /***/ }), -/* 238 */ +/* 243 */ /***/ (function(module, exports, __webpack_require__) { -var parse = __webpack_require__(239); -var correct = __webpack_require__(245); +var parse = __webpack_require__(244); +var correct = __webpack_require__(250); var genericWarning = ( 'license should be ' + @@ -22046,14 +22549,14 @@ module.exports = function(argument) { /***/ }), -/* 239 */ +/* 244 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var scan = __webpack_require__(240) -var parse = __webpack_require__(244) +var scan = __webpack_require__(245) +var parse = __webpack_require__(249) module.exports = function (source) { return parse(scan(source)) @@ -22061,16 +22564,16 @@ module.exports = function (source) { /***/ }), -/* 240 */ +/* 245 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; var licenses = [] - .concat(__webpack_require__(241)) - .concat(__webpack_require__(242)) -var exceptions = __webpack_require__(243) + .concat(__webpack_require__(246)) + .concat(__webpack_require__(247)) +var exceptions = __webpack_require__(248) module.exports = function (source) { var index = 0 @@ -22199,25 +22702,25 @@ module.exports = function (source) { /***/ }), -/* 241 */ +/* 246 */ /***/ (function(module) { module.exports = JSON.parse("[\"0BSD\",\"AAL\",\"ADSL\",\"AFL-1.1\",\"AFL-1.2\",\"AFL-2.0\",\"AFL-2.1\",\"AFL-3.0\",\"AGPL-1.0-only\",\"AGPL-1.0-or-later\",\"AGPL-3.0-only\",\"AGPL-3.0-or-later\",\"AMDPLPA\",\"AML\",\"AMPAS\",\"ANTLR-PD\",\"ANTLR-PD-fallback\",\"APAFML\",\"APL-1.0\",\"APSL-1.0\",\"APSL-1.1\",\"APSL-1.2\",\"APSL-2.0\",\"Abstyles\",\"Adobe-2006\",\"Adobe-Glyph\",\"Afmparse\",\"Aladdin\",\"Apache-1.0\",\"Apache-1.1\",\"Apache-2.0\",\"Artistic-1.0\",\"Artistic-1.0-Perl\",\"Artistic-1.0-cl8\",\"Artistic-2.0\",\"BSD-1-Clause\",\"BSD-2-Clause\",\"BSD-2-Clause-Patent\",\"BSD-2-Clause-Views\",\"BSD-3-Clause\",\"BSD-3-Clause-Attribution\",\"BSD-3-Clause-Clear\",\"BSD-3-Clause-LBNL\",\"BSD-3-Clause-Modification\",\"BSD-3-Clause-No-Military-License\",\"BSD-3-Clause-No-Nuclear-License\",\"BSD-3-Clause-No-Nuclear-License-2014\",\"BSD-3-Clause-No-Nuclear-Warranty\",\"BSD-3-Clause-Open-MPI\",\"BSD-4-Clause\",\"BSD-4-Clause-Shortened\",\"BSD-4-Clause-UC\",\"BSD-Protection\",\"BSD-Source-Code\",\"BSL-1.0\",\"BUSL-1.1\",\"Bahyph\",\"Barr\",\"Beerware\",\"BitTorrent-1.0\",\"BitTorrent-1.1\",\"BlueOak-1.0.0\",\"Borceux\",\"C-UDA-1.0\",\"CAL-1.0\",\"CAL-1.0-Combined-Work-Exception\",\"CATOSL-1.1\",\"CC-BY-1.0\",\"CC-BY-2.0\",\"CC-BY-2.5\",\"CC-BY-2.5-AU\",\"CC-BY-3.0\",\"CC-BY-3.0-AT\",\"CC-BY-3.0-DE\",\"CC-BY-3.0-NL\",\"CC-BY-3.0-US\",\"CC-BY-4.0\",\"CC-BY-NC-1.0\",\"CC-BY-NC-2.0\",\"CC-BY-NC-2.5\",\"CC-BY-NC-3.0\",\"CC-BY-NC-3.0-DE\",\"CC-BY-NC-4.0\",\"CC-BY-NC-ND-1.0\",\"CC-BY-NC-ND-2.0\",\"CC-BY-NC-ND-2.5\",\"CC-BY-NC-ND-3.0\",\"CC-BY-NC-ND-3.0-DE\",\"CC-BY-NC-ND-3.0-IGO\",\"CC-BY-NC-ND-4.0\",\"CC-BY-NC-SA-1.0\",\"CC-BY-NC-SA-2.0\",\"CC-BY-NC-SA-2.0-FR\",\"CC-BY-NC-SA-2.0-UK\",\"CC-BY-NC-SA-2.5\",\"CC-BY-NC-SA-3.0\",\"CC-BY-NC-SA-3.0-DE\",\"CC-BY-NC-SA-3.0-IGO\",\"CC-BY-NC-SA-4.0\",\"CC-BY-ND-1.0\",\"CC-BY-ND-2.0\",\"CC-BY-ND-2.5\",\"CC-BY-ND-3.0\",\"CC-BY-ND-3.0-DE\",\"CC-BY-ND-4.0\",\"CC-BY-SA-1.0\",\"CC-BY-SA-2.0\",\"CC-BY-SA-2.0-UK\",\"CC-BY-SA-2.1-JP\",\"CC-BY-SA-2.5\",\"CC-BY-SA-3.0\",\"CC-BY-SA-3.0-AT\",\"CC-BY-SA-3.0-DE\",\"CC-BY-SA-4.0\",\"CC-PDDC\",\"CC0-1.0\",\"CDDL-1.0\",\"CDDL-1.1\",\"CDL-1.0\",\"CDLA-Permissive-1.0\",\"CDLA-Permissive-2.0\",\"CDLA-Sharing-1.0\",\"CECILL-1.0\",\"CECILL-1.1\",\"CECILL-2.0\",\"CECILL-2.1\",\"CECILL-B\",\"CECILL-C\",\"CERN-OHL-1.1\",\"CERN-OHL-1.2\",\"CERN-OHL-P-2.0\",\"CERN-OHL-S-2.0\",\"CERN-OHL-W-2.0\",\"CNRI-Jython\",\"CNRI-Python\",\"CNRI-Python-GPL-Compatible\",\"COIL-1.0\",\"CPAL-1.0\",\"CPL-1.0\",\"CPOL-1.02\",\"CUA-OPL-1.0\",\"Caldera\",\"ClArtistic\",\"Community-Spec-1.0\",\"Condor-1.1\",\"Crossword\",\"CrystalStacker\",\"Cube\",\"D-FSL-1.0\",\"DOC\",\"DRL-1.0\",\"DSDP\",\"Dotseqn\",\"ECL-1.0\",\"ECL-2.0\",\"EFL-1.0\",\"EFL-2.0\",\"EPICS\",\"EPL-1.0\",\"EPL-2.0\",\"EUDatagrid\",\"EUPL-1.0\",\"EUPL-1.1\",\"EUPL-1.2\",\"Entessa\",\"ErlPL-1.1\",\"Eurosym\",\"FDK-AAC\",\"FSFAP\",\"FSFUL\",\"FSFULLR\",\"FTL\",\"Fair\",\"Frameworx-1.0\",\"FreeBSD-DOC\",\"FreeImage\",\"GD\",\"GFDL-1.1-invariants-only\",\"GFDL-1.1-invariants-or-later\",\"GFDL-1.1-no-invariants-only\",\"GFDL-1.1-no-invariants-or-later\",\"GFDL-1.1-only\",\"GFDL-1.1-or-later\",\"GFDL-1.2-invariants-only\",\"GFDL-1.2-invariants-or-later\",\"GFDL-1.2-no-invariants-only\",\"GFDL-1.2-no-invariants-or-later\",\"GFDL-1.2-only\",\"GFDL-1.2-or-later\",\"GFDL-1.3-invariants-only\",\"GFDL-1.3-invariants-or-later\",\"GFDL-1.3-no-invariants-only\",\"GFDL-1.3-no-invariants-or-later\",\"GFDL-1.3-only\",\"GFDL-1.3-or-later\",\"GL2PS\",\"GLWTPL\",\"GPL-1.0-only\",\"GPL-1.0-or-later\",\"GPL-2.0-only\",\"GPL-2.0-or-later\",\"GPL-3.0-only\",\"GPL-3.0-or-later\",\"Giftware\",\"Glide\",\"Glulxe\",\"HPND\",\"HPND-sell-variant\",\"HTMLTIDY\",\"HaskellReport\",\"Hippocratic-2.1\",\"IBM-pibs\",\"ICU\",\"IJG\",\"IPA\",\"IPL-1.0\",\"ISC\",\"ImageMagick\",\"Imlib2\",\"Info-ZIP\",\"Intel\",\"Intel-ACPI\",\"Interbase-1.0\",\"JPNIC\",\"JSON\",\"JasPer-2.0\",\"LAL-1.2\",\"LAL-1.3\",\"LGPL-2.0-only\",\"LGPL-2.0-or-later\",\"LGPL-2.1-only\",\"LGPL-2.1-or-later\",\"LGPL-3.0-only\",\"LGPL-3.0-or-later\",\"LGPLLR\",\"LPL-1.0\",\"LPL-1.02\",\"LPPL-1.0\",\"LPPL-1.1\",\"LPPL-1.2\",\"LPPL-1.3a\",\"LPPL-1.3c\",\"Latex2e\",\"Leptonica\",\"LiLiQ-P-1.1\",\"LiLiQ-R-1.1\",\"LiLiQ-Rplus-1.1\",\"Libpng\",\"Linux-OpenIB\",\"Linux-man-pages-copyleft\",\"MIT\",\"MIT-0\",\"MIT-CMU\",\"MIT-Modern-Variant\",\"MIT-advertising\",\"MIT-enna\",\"MIT-feh\",\"MIT-open-group\",\"MITNFA\",\"MPL-1.0\",\"MPL-1.1\",\"MPL-2.0\",\"MPL-2.0-no-copyleft-exception\",\"MS-PL\",\"MS-RL\",\"MTLL\",\"MakeIndex\",\"MirOS\",\"Motosoto\",\"MulanPSL-1.0\",\"MulanPSL-2.0\",\"Multics\",\"Mup\",\"NAIST-2003\",\"NASA-1.3\",\"NBPL-1.0\",\"NCGL-UK-2.0\",\"NCSA\",\"NGPL\",\"NIST-PD\",\"NIST-PD-fallback\",\"NLOD-1.0\",\"NLOD-2.0\",\"NLPL\",\"NOSL\",\"NPL-1.0\",\"NPL-1.1\",\"NPOSL-3.0\",\"NRL\",\"NTP\",\"NTP-0\",\"Naumen\",\"Net-SNMP\",\"NetCDF\",\"Newsletr\",\"Nokia\",\"Noweb\",\"O-UDA-1.0\",\"OCCT-PL\",\"OCLC-2.0\",\"ODC-By-1.0\",\"ODbL-1.0\",\"OFL-1.0\",\"OFL-1.0-RFN\",\"OFL-1.0-no-RFN\",\"OFL-1.1\",\"OFL-1.1-RFN\",\"OFL-1.1-no-RFN\",\"OGC-1.0\",\"OGDL-Taiwan-1.0\",\"OGL-Canada-2.0\",\"OGL-UK-1.0\",\"OGL-UK-2.0\",\"OGL-UK-3.0\",\"OGTSL\",\"OLDAP-1.1\",\"OLDAP-1.2\",\"OLDAP-1.3\",\"OLDAP-1.4\",\"OLDAP-2.0\",\"OLDAP-2.0.1\",\"OLDAP-2.1\",\"OLDAP-2.2\",\"OLDAP-2.2.1\",\"OLDAP-2.2.2\",\"OLDAP-2.3\",\"OLDAP-2.4\",\"OLDAP-2.5\",\"OLDAP-2.6\",\"OLDAP-2.7\",\"OLDAP-2.8\",\"OML\",\"OPL-1.0\",\"OPUBL-1.0\",\"OSET-PL-2.1\",\"OSL-1.0\",\"OSL-1.1\",\"OSL-2.0\",\"OSL-2.1\",\"OSL-3.0\",\"OpenSSL\",\"PDDL-1.0\",\"PHP-3.0\",\"PHP-3.01\",\"PSF-2.0\",\"Parity-6.0.0\",\"Parity-7.0.0\",\"Plexus\",\"PolyForm-Noncommercial-1.0.0\",\"PolyForm-Small-Business-1.0.0\",\"PostgreSQL\",\"Python-2.0\",\"QPL-1.0\",\"Qhull\",\"RHeCos-1.1\",\"RPL-1.1\",\"RPL-1.5\",\"RPSL-1.0\",\"RSA-MD\",\"RSCPL\",\"Rdisc\",\"Ruby\",\"SAX-PD\",\"SCEA\",\"SGI-B-1.0\",\"SGI-B-1.1\",\"SGI-B-2.0\",\"SHL-0.5\",\"SHL-0.51\",\"SISSL\",\"SISSL-1.2\",\"SMLNJ\",\"SMPPL\",\"SNIA\",\"SPL-1.0\",\"SSH-OpenSSH\",\"SSH-short\",\"SSPL-1.0\",\"SWL\",\"Saxpath\",\"Sendmail\",\"Sendmail-8.23\",\"SimPL-2.0\",\"Sleepycat\",\"Spencer-86\",\"Spencer-94\",\"Spencer-99\",\"SugarCRM-1.1.3\",\"TAPR-OHL-1.0\",\"TCL\",\"TCP-wrappers\",\"TMate\",\"TORQUE-1.1\",\"TOSL\",\"TU-Berlin-1.0\",\"TU-Berlin-2.0\",\"UCL-1.0\",\"UPL-1.0\",\"Unicode-DFS-2015\",\"Unicode-DFS-2016\",\"Unicode-TOU\",\"Unlicense\",\"VOSTROM\",\"VSL-1.0\",\"Vim\",\"W3C\",\"W3C-19980720\",\"W3C-20150513\",\"WTFPL\",\"Watcom-1.0\",\"Wsuipa\",\"X11\",\"XFree86-1.1\",\"XSkat\",\"Xerox\",\"Xnet\",\"YPL-1.0\",\"YPL-1.1\",\"ZPL-1.1\",\"ZPL-2.0\",\"ZPL-2.1\",\"Zed\",\"Zend-2.0\",\"Zimbra-1.3\",\"Zimbra-1.4\",\"Zlib\",\"blessing\",\"bzip2-1.0.5\",\"bzip2-1.0.6\",\"copyleft-next-0.3.0\",\"copyleft-next-0.3.1\",\"curl\",\"diffmark\",\"dvipdfm\",\"eGenix\",\"etalab-2.0\",\"gSOAP-1.3b\",\"gnuplot\",\"iMatix\",\"libpng-2.0\",\"libselinux-1.0\",\"libtiff\",\"mpich2\",\"psfrag\",\"psutils\",\"xinetd\",\"xpp\",\"zlib-acknowledgement\"]"); /***/ }), -/* 242 */ +/* 247 */ /***/ (function(module) { module.exports = JSON.parse("[\"AGPL-1.0\",\"AGPL-3.0\",\"BSD-2-Clause-FreeBSD\",\"BSD-2-Clause-NetBSD\",\"GFDL-1.1\",\"GFDL-1.2\",\"GFDL-1.3\",\"GPL-1.0\",\"GPL-2.0\",\"GPL-2.0-with-GCC-exception\",\"GPL-2.0-with-autoconf-exception\",\"GPL-2.0-with-bison-exception\",\"GPL-2.0-with-classpath-exception\",\"GPL-2.0-with-font-exception\",\"GPL-3.0\",\"GPL-3.0-with-GCC-exception\",\"GPL-3.0-with-autoconf-exception\",\"LGPL-2.0\",\"LGPL-2.1\",\"LGPL-3.0\",\"Nunit\",\"StandardML-NJ\",\"eCos-2.0\",\"wxWindows\"]"); /***/ }), -/* 243 */ +/* 248 */ /***/ (function(module) { module.exports = JSON.parse("[\"389-exception\",\"Autoconf-exception-2.0\",\"Autoconf-exception-3.0\",\"Bison-exception-2.2\",\"Bootloader-exception\",\"Classpath-exception-2.0\",\"CLISP-exception-2.0\",\"DigiRule-FOSS-exception\",\"eCos-exception-2.0\",\"Fawkes-Runtime-exception\",\"FLTK-exception\",\"Font-exception-2.0\",\"freertos-exception-2.0\",\"GCC-exception-2.0\",\"GCC-exception-3.1\",\"gnu-javamail-exception\",\"GPL-3.0-linking-exception\",\"GPL-3.0-linking-source-exception\",\"GPL-CC-1.0\",\"i2p-gpl-java-exception\",\"Libtool-exception\",\"Linux-syscall-note\",\"LLVM-exception\",\"LZMA-exception\",\"mif-exception\",\"Nokia-Qt-exception-1.1\",\"OCaml-LGPL-linking-exception\",\"OCCT-exception-1.0\",\"OpenJDK-assembly-exception-1.0\",\"openvpn-openssl-exception\",\"PS-or-PDF-font-exception-20170817\",\"Qt-GPL-exception-1.0\",\"Qt-LGPL-exception-1.1\",\"Qwt-exception-1.0\",\"Swift-exception\",\"u-boot-exception-2.0\",\"Universal-FOSS-exception-1.0\",\"WxWindows-exception-3.1\"]"); /***/ }), -/* 244 */ +/* 249 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -22362,7 +22865,7 @@ module.exports = function (tokens) { /***/ }), -/* 245 */ +/* 250 */ /***/ (function(module, exports, __webpack_require__) { /* @@ -22380,8 +22883,8 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. */ -var parse = __webpack_require__(239) -var spdxLicenseIds = __webpack_require__(241) +var parse = __webpack_require__(244) +var spdxLicenseIds = __webpack_require__(246) function valid (string) { try { @@ -22732,14 +23235,14 @@ function upgradeGPLs (value) { /***/ }), -/* 246 */ +/* 251 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var url = __webpack_require__(247) -var gitHosts = __webpack_require__(248) -var GitHost = module.exports = __webpack_require__(249) +var url = __webpack_require__(252) +var gitHosts = __webpack_require__(253) +var GitHost = module.exports = __webpack_require__(254) var protocolToRepresentationMap = { 'git+ssh:': 'sshurl', @@ -22887,13 +23390,13 @@ function parseGitUrl (giturl) { /***/ }), -/* 247 */ +/* 252 */ /***/ (function(module, exports) { module.exports = require("url"); /***/ }), -/* 248 */ +/* 253 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -22979,12 +23482,12 @@ function formatHashFragment (fragment) { /***/ }), -/* 249 */ +/* 254 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var gitHosts = __webpack_require__(248) +var gitHosts = __webpack_require__(253) /* eslint-disable node/no-deprecated-api */ // copy-pasta util._extend from node's source, to avoid pulling @@ -23142,28 +23645,28 @@ GitHost.prototype.toString = function (opts) { /***/ }), -/* 250 */ +/* 255 */ /***/ (function(module, exports, __webpack_require__) { -var async = __webpack_require__(251); -async.core = __webpack_require__(262); -async.isCore = __webpack_require__(264); -async.sync = __webpack_require__(265); +var async = __webpack_require__(256); +async.core = __webpack_require__(267); +async.isCore = __webpack_require__(269); +async.sync = __webpack_require__(270); module.exports = async; /***/ }), -/* 251 */ +/* 256 */ /***/ (function(module, exports, __webpack_require__) { var fs = __webpack_require__(134); -var getHomedir = __webpack_require__(252); +var getHomedir = __webpack_require__(257); var path = __webpack_require__(4); -var caller = __webpack_require__(253); -var nodeModulesPaths = __webpack_require__(254); -var normalizeOptions = __webpack_require__(256); -var isCore = __webpack_require__(257); +var caller = __webpack_require__(258); +var nodeModulesPaths = __webpack_require__(259); +var normalizeOptions = __webpack_require__(261); +var isCore = __webpack_require__(262); var realpathFS = process.platform !== 'win32' && fs.realpath && typeof fs.realpath.native === 'function' ? fs.realpath.native : fs.realpath; @@ -23489,7 +23992,7 @@ module.exports = function resolve(x, options, callback) { /***/ }), -/* 252 */ +/* 257 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -23520,7 +24023,7 @@ module.exports = os.homedir || function homedir() { /***/ }), -/* 253 */ +/* 258 */ /***/ (function(module, exports) { module.exports = function () { @@ -23534,11 +24037,11 @@ module.exports = function () { /***/ }), -/* 254 */ +/* 259 */ /***/ (function(module, exports, __webpack_require__) { var path = __webpack_require__(4); -var parse = path.parse || __webpack_require__(255); // eslint-disable-line global-require +var parse = path.parse || __webpack_require__(260); // eslint-disable-line global-require var getNodeModulesDirs = function getNodeModulesDirs(absoluteStart, modules) { var prefix = '/'; @@ -23582,7 +24085,7 @@ module.exports = function nodeModulesPaths(start, opts, request) { /***/ }), -/* 255 */ +/* 260 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -23664,7 +24167,7 @@ module.exports.win32 = win32.parse; /***/ }), -/* 256 */ +/* 261 */ /***/ (function(module, exports) { module.exports = function (x, opts) { @@ -23680,13 +24183,13 @@ module.exports = function (x, opts) { /***/ }), -/* 257 */ +/* 262 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var has = __webpack_require__(258); +var has = __webpack_require__(263); function specifierIncluded(current, specifier) { var nodeParts = current.split('.'); @@ -23748,7 +24251,7 @@ function versionIncluded(nodeVersion, specifierValue) { return matchesRange(current, specifierValue); } -var data = __webpack_require__(261); +var data = __webpack_require__(266); module.exports = function isCore(x, nodeVersion) { return has(data, x) && versionIncluded(nodeVersion, data[x]); @@ -23756,31 +24259,31 @@ module.exports = function isCore(x, nodeVersion) { /***/ }), -/* 258 */ +/* 263 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var bind = __webpack_require__(259); +var bind = __webpack_require__(264); module.exports = bind.call(Function.call, Object.prototype.hasOwnProperty); /***/ }), -/* 259 */ +/* 264 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var implementation = __webpack_require__(260); +var implementation = __webpack_require__(265); module.exports = Function.prototype.bind || implementation; /***/ }), -/* 260 */ +/* 265 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -23839,13 +24342,13 @@ module.exports = function bind(that) { /***/ }), -/* 261 */ +/* 266 */ /***/ (function(module) { module.exports = JSON.parse("{\"assert\":true,\"node:assert\":[\">= 14.18 && < 15\",\">= 16\"],\"assert/strict\":\">= 15\",\"node:assert/strict\":\">= 16\",\"async_hooks\":\">= 8\",\"node:async_hooks\":[\">= 14.18 && < 15\",\">= 16\"],\"buffer_ieee754\":\">= 0.5 && < 0.9.7\",\"buffer\":true,\"node:buffer\":[\">= 14.18 && < 15\",\">= 16\"],\"child_process\":true,\"node:child_process\":[\">= 14.18 && < 15\",\">= 16\"],\"cluster\":\">= 0.5\",\"node:cluster\":[\">= 14.18 && < 15\",\">= 16\"],\"console\":true,\"node:console\":[\">= 14.18 && < 15\",\">= 16\"],\"constants\":true,\"node:constants\":[\">= 14.18 && < 15\",\">= 16\"],\"crypto\":true,\"node:crypto\":[\">= 14.18 && < 15\",\">= 16\"],\"_debug_agent\":\">= 1 && < 8\",\"_debugger\":\"< 8\",\"dgram\":true,\"node:dgram\":[\">= 14.18 && < 15\",\">= 16\"],\"diagnostics_channel\":[\">= 14.17 && < 15\",\">= 15.1\"],\"node:diagnostics_channel\":[\">= 14.18 && < 15\",\">= 16\"],\"dns\":true,\"node:dns\":[\">= 14.18 && < 15\",\">= 16\"],\"dns/promises\":\">= 15\",\"node:dns/promises\":\">= 16\",\"domain\":\">= 0.7.12\",\"node:domain\":[\">= 14.18 && < 15\",\">= 16\"],\"events\":true,\"node:events\":[\">= 14.18 && < 15\",\">= 16\"],\"freelist\":\"< 6\",\"fs\":true,\"node:fs\":[\">= 14.18 && < 15\",\">= 16\"],\"fs/promises\":[\">= 10 && < 10.1\",\">= 14\"],\"node:fs/promises\":[\">= 14.18 && < 15\",\">= 16\"],\"_http_agent\":\">= 0.11.1\",\"node:_http_agent\":[\">= 14.18 && < 15\",\">= 16\"],\"_http_client\":\">= 0.11.1\",\"node:_http_client\":[\">= 14.18 && < 15\",\">= 16\"],\"_http_common\":\">= 0.11.1\",\"node:_http_common\":[\">= 14.18 && < 15\",\">= 16\"],\"_http_incoming\":\">= 0.11.1\",\"node:_http_incoming\":[\">= 14.18 && < 15\",\">= 16\"],\"_http_outgoing\":\">= 0.11.1\",\"node:_http_outgoing\":[\">= 14.18 && < 15\",\">= 16\"],\"_http_server\":\">= 0.11.1\",\"node:_http_server\":[\">= 14.18 && < 15\",\">= 16\"],\"http\":true,\"node:http\":[\">= 14.18 && < 15\",\">= 16\"],\"http2\":\">= 8.8\",\"node:http2\":[\">= 14.18 && < 15\",\">= 16\"],\"https\":true,\"node:https\":[\">= 14.18 && < 15\",\">= 16\"],\"inspector\":\">= 8\",\"node:inspector\":[\">= 14.18 && < 15\",\">= 16\"],\"inspector/promises\":[\">= 19\"],\"node:inspector/promises\":[\">= 19\"],\"_linklist\":\"< 8\",\"module\":true,\"node:module\":[\">= 14.18 && < 15\",\">= 16\"],\"net\":true,\"node:net\":[\">= 14.18 && < 15\",\">= 16\"],\"node-inspect/lib/_inspect\":\">= 7.6 && < 12\",\"node-inspect/lib/internal/inspect_client\":\">= 7.6 && < 12\",\"node-inspect/lib/internal/inspect_repl\":\">= 7.6 && < 12\",\"os\":true,\"node:os\":[\">= 14.18 && < 15\",\">= 16\"],\"path\":true,\"node:path\":[\">= 14.18 && < 15\",\">= 16\"],\"path/posix\":\">= 15.3\",\"node:path/posix\":\">= 16\",\"path/win32\":\">= 15.3\",\"node:path/win32\":\">= 16\",\"perf_hooks\":\">= 8.5\",\"node:perf_hooks\":[\">= 14.18 && < 15\",\">= 16\"],\"process\":\">= 1\",\"node:process\":[\">= 14.18 && < 15\",\">= 16\"],\"punycode\":\">= 0.5\",\"node:punycode\":[\">= 14.18 && < 15\",\">= 16\"],\"querystring\":true,\"node:querystring\":[\">= 14.18 && < 15\",\">= 16\"],\"readline\":true,\"node:readline\":[\">= 14.18 && < 15\",\">= 16\"],\"readline/promises\":\">= 17\",\"node:readline/promises\":\">= 17\",\"repl\":true,\"node:repl\":[\">= 14.18 && < 15\",\">= 16\"],\"smalloc\":\">= 0.11.5 && < 3\",\"_stream_duplex\":\">= 0.9.4\",\"node:_stream_duplex\":[\">= 14.18 && < 15\",\">= 16\"],\"_stream_transform\":\">= 0.9.4\",\"node:_stream_transform\":[\">= 14.18 && < 15\",\">= 16\"],\"_stream_wrap\":\">= 1.4.1\",\"node:_stream_wrap\":[\">= 14.18 && < 15\",\">= 16\"],\"_stream_passthrough\":\">= 0.9.4\",\"node:_stream_passthrough\":[\">= 14.18 && < 15\",\">= 16\"],\"_stream_readable\":\">= 0.9.4\",\"node:_stream_readable\":[\">= 14.18 && < 15\",\">= 16\"],\"_stream_writable\":\">= 0.9.4\",\"node:_stream_writable\":[\">= 14.18 && < 15\",\">= 16\"],\"stream\":true,\"node:stream\":[\">= 14.18 && < 15\",\">= 16\"],\"stream/consumers\":\">= 16.7\",\"node:stream/consumers\":\">= 16.7\",\"stream/promises\":\">= 15\",\"node:stream/promises\":\">= 16\",\"stream/web\":\">= 16.5\",\"node:stream/web\":\">= 16.5\",\"string_decoder\":true,\"node:string_decoder\":[\">= 14.18 && < 15\",\">= 16\"],\"sys\":[\">= 0.4 && < 0.7\",\">= 0.8\"],\"node:sys\":[\">= 14.18 && < 15\",\">= 16\"],\"node:test\":[\">= 16.17 && < 17\",\">= 18\"],\"timers\":true,\"node:timers\":[\">= 14.18 && < 15\",\">= 16\"],\"timers/promises\":\">= 15\",\"node:timers/promises\":\">= 16\",\"_tls_common\":\">= 0.11.13\",\"node:_tls_common\":[\">= 14.18 && < 15\",\">= 16\"],\"_tls_legacy\":\">= 0.11.3 && < 10\",\"_tls_wrap\":\">= 0.11.3\",\"node:_tls_wrap\":[\">= 14.18 && < 15\",\">= 16\"],\"tls\":true,\"node:tls\":[\">= 14.18 && < 15\",\">= 16\"],\"trace_events\":\">= 10\",\"node:trace_events\":[\">= 14.18 && < 15\",\">= 16\"],\"tty\":true,\"node:tty\":[\">= 14.18 && < 15\",\">= 16\"],\"url\":true,\"node:url\":[\">= 14.18 && < 15\",\">= 16\"],\"util\":true,\"node:util\":[\">= 14.18 && < 15\",\">= 16\"],\"util/types\":\">= 15.3\",\"node:util/types\":\">= 16\",\"v8/tools/arguments\":\">= 10 && < 12\",\"v8/tools/codemap\":[\">= 4.4 && < 5\",\">= 5.2 && < 12\"],\"v8/tools/consarray\":[\">= 4.4 && < 5\",\">= 5.2 && < 12\"],\"v8/tools/csvparser\":[\">= 4.4 && < 5\",\">= 5.2 && < 12\"],\"v8/tools/logreader\":[\">= 4.4 && < 5\",\">= 5.2 && < 12\"],\"v8/tools/profile_view\":[\">= 4.4 && < 5\",\">= 5.2 && < 12\"],\"v8/tools/splaytree\":[\">= 4.4 && < 5\",\">= 5.2 && < 12\"],\"v8\":\">= 1\",\"node:v8\":[\">= 14.18 && < 15\",\">= 16\"],\"vm\":true,\"node:vm\":[\">= 14.18 && < 15\",\">= 16\"],\"wasi\":\">= 13.4 && < 13.5\",\"worker_threads\":\">= 11.7\",\"node:worker_threads\":[\">= 14.18 && < 15\",\">= 16\"],\"zlib\":\">= 0.5\",\"node:zlib\":[\">= 14.18 && < 15\",\">= 16\"]}"); /***/ }), -/* 262 */ +/* 267 */ /***/ (function(module, exports, __webpack_require__) { var current = (process.versions && process.versions.node && process.versions.node.split('.')) || []; @@ -23891,7 +24394,7 @@ function versionIncluded(specifierValue) { return matchesRange(specifierValue); } -var data = __webpack_require__(263); +var data = __webpack_require__(268); var core = {}; for (var mod in data) { // eslint-disable-line no-restricted-syntax @@ -23903,16 +24406,16 @@ module.exports = core; /***/ }), -/* 263 */ +/* 268 */ /***/ (function(module) { module.exports = JSON.parse("{\"assert\":true,\"node:assert\":[\">= 14.18 && < 15\",\">= 16\"],\"assert/strict\":\">= 15\",\"node:assert/strict\":\">= 16\",\"async_hooks\":\">= 8\",\"node:async_hooks\":[\">= 14.18 && < 15\",\">= 16\"],\"buffer_ieee754\":\">= 0.5 && < 0.9.7\",\"buffer\":true,\"node:buffer\":[\">= 14.18 && < 15\",\">= 16\"],\"child_process\":true,\"node:child_process\":[\">= 14.18 && < 15\",\">= 16\"],\"cluster\":\">= 0.5\",\"node:cluster\":[\">= 14.18 && < 15\",\">= 16\"],\"console\":true,\"node:console\":[\">= 14.18 && < 15\",\">= 16\"],\"constants\":true,\"node:constants\":[\">= 14.18 && < 15\",\">= 16\"],\"crypto\":true,\"node:crypto\":[\">= 14.18 && < 15\",\">= 16\"],\"_debug_agent\":\">= 1 && < 8\",\"_debugger\":\"< 8\",\"dgram\":true,\"node:dgram\":[\">= 14.18 && < 15\",\">= 16\"],\"diagnostics_channel\":[\">= 14.17 && < 15\",\">= 15.1\"],\"node:diagnostics_channel\":[\">= 14.18 && < 15\",\">= 16\"],\"dns\":true,\"node:dns\":[\">= 14.18 && < 15\",\">= 16\"],\"dns/promises\":\">= 15\",\"node:dns/promises\":\">= 16\",\"domain\":\">= 0.7.12\",\"node:domain\":[\">= 14.18 && < 15\",\">= 16\"],\"events\":true,\"node:events\":[\">= 14.18 && < 15\",\">= 16\"],\"freelist\":\"< 6\",\"fs\":true,\"node:fs\":[\">= 14.18 && < 15\",\">= 16\"],\"fs/promises\":[\">= 10 && < 10.1\",\">= 14\"],\"node:fs/promises\":[\">= 14.18 && < 15\",\">= 16\"],\"_http_agent\":\">= 0.11.1\",\"node:_http_agent\":[\">= 14.18 && < 15\",\">= 16\"],\"_http_client\":\">= 0.11.1\",\"node:_http_client\":[\">= 14.18 && < 15\",\">= 16\"],\"_http_common\":\">= 0.11.1\",\"node:_http_common\":[\">= 14.18 && < 15\",\">= 16\"],\"_http_incoming\":\">= 0.11.1\",\"node:_http_incoming\":[\">= 14.18 && < 15\",\">= 16\"],\"_http_outgoing\":\">= 0.11.1\",\"node:_http_outgoing\":[\">= 14.18 && < 15\",\">= 16\"],\"_http_server\":\">= 0.11.1\",\"node:_http_server\":[\">= 14.18 && < 15\",\">= 16\"],\"http\":true,\"node:http\":[\">= 14.18 && < 15\",\">= 16\"],\"http2\":\">= 8.8\",\"node:http2\":[\">= 14.18 && < 15\",\">= 16\"],\"https\":true,\"node:https\":[\">= 14.18 && < 15\",\">= 16\"],\"inspector\":\">= 8\",\"node:inspector\":[\">= 14.18 && < 15\",\">= 16\"],\"_linklist\":\"< 8\",\"module\":true,\"node:module\":[\">= 14.18 && < 15\",\">= 16\"],\"net\":true,\"node:net\":[\">= 14.18 && < 15\",\">= 16\"],\"node-inspect/lib/_inspect\":\">= 7.6 && < 12\",\"node-inspect/lib/internal/inspect_client\":\">= 7.6 && < 12\",\"node-inspect/lib/internal/inspect_repl\":\">= 7.6 && < 12\",\"os\":true,\"node:os\":[\">= 14.18 && < 15\",\">= 16\"],\"path\":true,\"node:path\":[\">= 14.18 && < 15\",\">= 16\"],\"path/posix\":\">= 15.3\",\"node:path/posix\":\">= 16\",\"path/win32\":\">= 15.3\",\"node:path/win32\":\">= 16\",\"perf_hooks\":\">= 8.5\",\"node:perf_hooks\":[\">= 14.18 && < 15\",\">= 16\"],\"process\":\">= 1\",\"node:process\":[\">= 14.18 && < 15\",\">= 16\"],\"punycode\":\">= 0.5\",\"node:punycode\":[\">= 14.18 && < 15\",\">= 16\"],\"querystring\":true,\"node:querystring\":[\">= 14.18 && < 15\",\">= 16\"],\"readline\":true,\"node:readline\":[\">= 14.18 && < 15\",\">= 16\"],\"readline/promises\":\">= 17\",\"node:readline/promises\":\">= 17\",\"repl\":true,\"node:repl\":[\">= 14.18 && < 15\",\">= 16\"],\"smalloc\":\">= 0.11.5 && < 3\",\"_stream_duplex\":\">= 0.9.4\",\"node:_stream_duplex\":[\">= 14.18 && < 15\",\">= 16\"],\"_stream_transform\":\">= 0.9.4\",\"node:_stream_transform\":[\">= 14.18 && < 15\",\">= 16\"],\"_stream_wrap\":\">= 1.4.1\",\"node:_stream_wrap\":[\">= 14.18 && < 15\",\">= 16\"],\"_stream_passthrough\":\">= 0.9.4\",\"node:_stream_passthrough\":[\">= 14.18 && < 15\",\">= 16\"],\"_stream_readable\":\">= 0.9.4\",\"node:_stream_readable\":[\">= 14.18 && < 15\",\">= 16\"],\"_stream_writable\":\">= 0.9.4\",\"node:_stream_writable\":[\">= 14.18 && < 15\",\">= 16\"],\"stream\":true,\"node:stream\":[\">= 14.18 && < 15\",\">= 16\"],\"stream/consumers\":\">= 16.7\",\"node:stream/consumers\":\">= 16.7\",\"stream/promises\":\">= 15\",\"node:stream/promises\":\">= 16\",\"stream/web\":\">= 16.5\",\"node:stream/web\":\">= 16.5\",\"string_decoder\":true,\"node:string_decoder\":[\">= 14.18 && < 15\",\">= 16\"],\"sys\":[\">= 0.4 && < 0.7\",\">= 0.8\"],\"node:sys\":[\">= 14.18 && < 15\",\">= 16\"],\"node:test\":\">= 18\",\"timers\":true,\"node:timers\":[\">= 14.18 && < 15\",\">= 16\"],\"timers/promises\":\">= 15\",\"node:timers/promises\":\">= 16\",\"_tls_common\":\">= 0.11.13\",\"node:_tls_common\":[\">= 14.18 && < 15\",\">= 16\"],\"_tls_legacy\":\">= 0.11.3 && < 10\",\"_tls_wrap\":\">= 0.11.3\",\"node:_tls_wrap\":[\">= 14.18 && < 15\",\">= 16\"],\"tls\":true,\"node:tls\":[\">= 14.18 && < 15\",\">= 16\"],\"trace_events\":\">= 10\",\"node:trace_events\":[\">= 14.18 && < 15\",\">= 16\"],\"tty\":true,\"node:tty\":[\">= 14.18 && < 15\",\">= 16\"],\"url\":true,\"node:url\":[\">= 14.18 && < 15\",\">= 16\"],\"util\":true,\"node:util\":[\">= 14.18 && < 15\",\">= 16\"],\"util/types\":\">= 15.3\",\"node:util/types\":\">= 16\",\"v8/tools/arguments\":\">= 10 && < 12\",\"v8/tools/codemap\":[\">= 4.4 && < 5\",\">= 5.2 && < 12\"],\"v8/tools/consarray\":[\">= 4.4 && < 5\",\">= 5.2 && < 12\"],\"v8/tools/csvparser\":[\">= 4.4 && < 5\",\">= 5.2 && < 12\"],\"v8/tools/logreader\":[\">= 4.4 && < 5\",\">= 5.2 && < 12\"],\"v8/tools/profile_view\":[\">= 4.4 && < 5\",\">= 5.2 && < 12\"],\"v8/tools/splaytree\":[\">= 4.4 && < 5\",\">= 5.2 && < 12\"],\"v8\":\">= 1\",\"node:v8\":[\">= 14.18 && < 15\",\">= 16\"],\"vm\":true,\"node:vm\":[\">= 14.18 && < 15\",\">= 16\"],\"wasi\":\">= 13.4 && < 13.5\",\"worker_threads\":\">= 11.7\",\"node:worker_threads\":[\">= 14.18 && < 15\",\">= 16\"],\"zlib\":\">= 0.5\",\"node:zlib\":[\">= 14.18 && < 15\",\">= 16\"]}"); /***/ }), -/* 264 */ +/* 269 */ /***/ (function(module, exports, __webpack_require__) { -var isCoreModule = __webpack_require__(257); +var isCoreModule = __webpack_require__(262); module.exports = function isCore(x) { return isCoreModule(x); @@ -23920,16 +24423,16 @@ module.exports = function isCore(x) { /***/ }), -/* 265 */ +/* 270 */ /***/ (function(module, exports, __webpack_require__) { -var isCore = __webpack_require__(257); +var isCore = __webpack_require__(262); var fs = __webpack_require__(134); var path = __webpack_require__(4); -var getHomedir = __webpack_require__(252); -var caller = __webpack_require__(253); -var nodeModulesPaths = __webpack_require__(254); -var normalizeOptions = __webpack_require__(256); +var getHomedir = __webpack_require__(257); +var caller = __webpack_require__(258); +var nodeModulesPaths = __webpack_require__(259); +var normalizeOptions = __webpack_require__(261); var realpathFS = process.platform !== 'win32' && fs.realpathSync && typeof fs.realpathSync.native === 'function' ? fs.realpathSync.native : fs.realpathSync; @@ -24134,7 +24637,7 @@ module.exports = function resolveSync(x, options) { /***/ }), -/* 266 */ +/* 271 */ /***/ (function(module, exports) { module.exports = extractDescription @@ -24154,17 +24657,17 @@ function extractDescription (d) { /***/ }), -/* 267 */ +/* 272 */ /***/ (function(module) { module.exports = JSON.parse("{\"topLevel\":{\"dependancies\":\"dependencies\",\"dependecies\":\"dependencies\",\"depdenencies\":\"dependencies\",\"devEependencies\":\"devDependencies\",\"depends\":\"dependencies\",\"dev-dependencies\":\"devDependencies\",\"devDependences\":\"devDependencies\",\"devDepenencies\":\"devDependencies\",\"devdependencies\":\"devDependencies\",\"repostitory\":\"repository\",\"repo\":\"repository\",\"prefereGlobal\":\"preferGlobal\",\"hompage\":\"homepage\",\"hampage\":\"homepage\",\"autohr\":\"author\",\"autor\":\"author\",\"contributers\":\"contributors\",\"publicationConfig\":\"publishConfig\",\"script\":\"scripts\"},\"bugs\":{\"web\":\"url\",\"name\":\"url\"},\"script\":{\"server\":\"start\",\"tests\":\"test\"}}"); /***/ }), -/* 268 */ +/* 273 */ /***/ (function(module, exports, __webpack_require__) { var util = __webpack_require__(112) -var messages = __webpack_require__(269) +var messages = __webpack_require__(274) module.exports = function() { var args = Array.prototype.slice.call(arguments, 0) @@ -24189,20 +24692,20 @@ function makeTypoWarning (providedName, probableName, field) { /***/ }), -/* 269 */ +/* 274 */ /***/ (function(module) { module.exports = JSON.parse("{\"repositories\":\"'repositories' (plural) Not supported. Please pick one as the 'repository' field\",\"missingRepository\":\"No repository field.\",\"brokenGitUrl\":\"Probably broken git url: %s\",\"nonObjectScripts\":\"scripts must be an object\",\"nonStringScript\":\"script values must be string commands\",\"nonArrayFiles\":\"Invalid 'files' member\",\"invalidFilename\":\"Invalid filename in 'files' list: %s\",\"nonArrayBundleDependencies\":\"Invalid 'bundleDependencies' list. Must be array of package names\",\"nonStringBundleDependency\":\"Invalid bundleDependencies member: %s\",\"nonDependencyBundleDependency\":\"Non-dependency in bundleDependencies: %s\",\"nonObjectDependencies\":\"%s field must be an object\",\"nonStringDependency\":\"Invalid dependency: %s %s\",\"deprecatedArrayDependencies\":\"specifying %s as array is deprecated\",\"deprecatedModules\":\"modules field is deprecated\",\"nonArrayKeywords\":\"keywords should be an array of strings\",\"nonStringKeyword\":\"keywords should be an array of strings\",\"conflictingName\":\"%s is also the name of a node core module.\",\"nonStringDescription\":\"'description' field should be a string\",\"missingDescription\":\"No description\",\"missingReadme\":\"No README data\",\"missingLicense\":\"No license field.\",\"nonEmailUrlBugsString\":\"Bug string field must be url, email, or {email,url}\",\"nonUrlBugsUrlField\":\"bugs.url field must be a string url. Deleted.\",\"nonEmailBugsEmailField\":\"bugs.email field must be a string email. Deleted.\",\"emptyNormalizedBugs\":\"Normalized value of bugs field is an empty object. Deleted.\",\"nonUrlHomepage\":\"homepage field must be a string url. Deleted.\",\"invalidLicense\":\"license should be a valid SPDX license expression\",\"typo\":\"%s should probably be %s.\"}"); /***/ }), -/* 270 */ +/* 275 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; const path = __webpack_require__(4); -const writeJsonFile = __webpack_require__(271); -const sortKeys = __webpack_require__(277); +const writeJsonFile = __webpack_require__(276); +const sortKeys = __webpack_require__(282); const dependencyKeys = new Set([ 'dependencies', @@ -24267,18 +24770,18 @@ module.exports.sync = (filePath, data, options) => { /***/ }), -/* 271 */ +/* 276 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; const path = __webpack_require__(4); const fs = __webpack_require__(133); -const writeFileAtomic = __webpack_require__(272); -const sortKeys = __webpack_require__(277); -const makeDir = __webpack_require__(279); -const pify = __webpack_require__(280); -const detectIndent = __webpack_require__(281); +const writeFileAtomic = __webpack_require__(277); +const sortKeys = __webpack_require__(282); +const makeDir = __webpack_require__(284); +const pify = __webpack_require__(285); +const detectIndent = __webpack_require__(286); const init = (fn, filePath, data, options) => { if (!filePath) { @@ -24350,7 +24853,7 @@ module.exports.sync = (filePath, data, options) => { /***/ }), -/* 272 */ +/* 277 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -24361,8 +24864,8 @@ module.exports._getTmpname = getTmpname // for testing module.exports._cleanupOnExit = cleanupOnExit var fs = __webpack_require__(133) -var MurmurHash3 = __webpack_require__(273) -var onExit = __webpack_require__(274) +var MurmurHash3 = __webpack_require__(278) +var onExit = __webpack_require__(279) var path = __webpack_require__(4) var activeFiles = {} @@ -24370,7 +24873,7 @@ var activeFiles = {} /* istanbul ignore next */ var threadId = (function getId () { try { - var workerThreads = __webpack_require__(276) + var workerThreads = __webpack_require__(281) /// if we are in main thread, this is set to `0` return workerThreads.threadId @@ -24595,7 +25098,7 @@ function writeFileSync (filename, data, options) { /***/ }), -/* 273 */ +/* 278 */ /***/ (function(module, exports, __webpack_require__) { /** @@ -24737,7 +25240,7 @@ function writeFileSync (filename, data, options) { /***/ }), -/* 274 */ +/* 279 */ /***/ (function(module, exports, __webpack_require__) { // Note: since nyc uses this module to output coverage, any lines @@ -24766,7 +25269,7 @@ if (!processOk(process)) { } } else { var assert = __webpack_require__(140) - var signals = __webpack_require__(275) + var signals = __webpack_require__(280) var isWin = /^win/i.test(process.platform) var EE = __webpack_require__(157) @@ -24945,7 +25448,7 @@ if (!processOk(process)) { /***/ }), -/* 275 */ +/* 280 */ /***/ (function(module, exports) { // This is not the set of all possible signals. @@ -25004,18 +25507,18 @@ if (process.platform === 'linux') { /***/ }), -/* 276 */ +/* 281 */ /***/ (function(module, exports) { module.exports = require(undefined); /***/ }), -/* 277 */ +/* 282 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const isPlainObj = __webpack_require__(278); +const isPlainObj = __webpack_require__(283); module.exports = (obj, opts) => { if (!isPlainObj(obj)) { @@ -25072,7 +25575,7 @@ module.exports = (obj, opts) => { /***/ }), -/* 278 */ +/* 283 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -25086,15 +25589,15 @@ module.exports = function (x) { /***/ }), -/* 279 */ +/* 284 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; const fs = __webpack_require__(134); const path = __webpack_require__(4); -const pify = __webpack_require__(280); -const semver = __webpack_require__(191); +const pify = __webpack_require__(285); +const semver = __webpack_require__(196); const defaults = { mode: 0o777 & (~process.umask()), @@ -25232,7 +25735,7 @@ module.exports.sync = (input, options) => { /***/ }), -/* 280 */ +/* 285 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -25307,7 +25810,7 @@ module.exports = (input, options) => { /***/ }), -/* 281 */ +/* 286 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -25436,7 +25939,7 @@ module.exports = str => { /***/ }), -/* 282 */ +/* 287 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -25446,12 +25949,13 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.installInDir = installInDir; +exports.patchFile = patchFile; exports.runScriptInPackage = runScriptInPackage; exports.runScriptInPackageStreaming = runScriptInPackageStreaming; exports.yarnWorkspacesInfo = yarnWorkspacesInfo; - -var _child_process = __webpack_require__(283); - +var _fs = __webpack_require__(134); +var _readline = __webpack_require__(288); +var _child_process = __webpack_require__(289); /* * SPDX-License-Identifier: Apache-2.0 * @@ -25481,35 +25985,62 @@ var _child_process = __webpack_require__(283); * specific language governing permissions and limitations * under the License. */ -const YARN_EXEC = process.env.npm_execpath || 'yarn'; +const YARN_EXEC = process.env.npm_execpath || 'yarn'; /** * Install all dependencies in the given directory */ -async function installInDir(directory, extraArgs = []) { - const options = ['install', '--non-interactive', ...extraArgs]; // We pass the mutex flag to ensure only one instance of yarn runs at any - // given time (e.g. to avoid conflicts). +async function installInDir(directory, extraArgs = [], useAdd = false) { + const options = [useAdd ? 'add' : 'install', '--non-interactive', ...extraArgs]; + // We pass the mutex flag to ensure only one instance of yarn runs at any + // given time (e.g. to avoid conflicts). await (0, _child_process.spawn)(YARN_EXEC, options, { cwd: directory }); } + /** - * Run script in the given directory + * Patch a file by replacing a given string */ +function patchFile(filePath, searchValue, replacement) { + return new Promise(async (resolve, reject) => { + const patchWriter = (0, _fs.createWriteStream)(`${filePath}.patched`, { + flags: 'w' + }); + const fileReader = (0, _readline.createInterface)({ + input: (0, _fs.createReadStream)(filePath), + crlfDelay: Infinity + }); + for await (const line of fileReader) { + if (line.includes(searchValue)) { + patchWriter.write(line.replace(searchValue, replacement) + '\n', 'utf8'); + } else { + patchWriter.write(line + '\n', 'utf8'); + } + } + patchWriter.on('finish', () => resolve()); + patchWriter.on('error', reject); + fileReader.close(); + patchWriter.end(); + (0, _fs.unlinkSync)(filePath); + (0, _fs.renameSync)(`${filePath}.patched`, filePath); + }); +} - +/** + * Run script in the given directory + */ async function runScriptInPackage(script, args, pkg) { const execOpts = { cwd: pkg.path }; await (0, _child_process.spawn)(YARN_EXEC, ['run', script, ...args], execOpts); } + /** * Run script in the given directory */ - - function runScriptInPackageStreaming({ script, args, @@ -25524,7 +26055,6 @@ function runScriptInPackageStreaming({ debug }); } - async function yarnWorkspacesInfo(directory) { const { stdout @@ -25532,7 +26062,6 @@ async function yarnWorkspacesInfo(directory) { cwd: directory, stdio: 'pipe' }); - try { return JSON.parse(JSON.parse(stdout).data); } catch (error) { @@ -25541,7 +26070,13 @@ async function yarnWorkspacesInfo(directory) { } /***/ }), -/* 283 */ +/* 288 */ +/***/ (function(module, exports) { + +module.exports = require("readline"); + +/***/ }), +/* 289 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -25552,19 +26087,12 @@ Object.defineProperty(exports, "__esModule", { }); exports.spawn = spawn; exports.spawnStreaming = spawnStreaming; - var _stream = __webpack_require__(138); - var _chalk = _interopRequireDefault(__webpack_require__(113)); - -var _execa = _interopRequireDefault(__webpack_require__(284)); - -var _strongLogTransformer = _interopRequireDefault(__webpack_require__(320)); - +var _execa = _interopRequireDefault(__webpack_require__(290)); +var _strongLogTransformer = _interopRequireDefault(__webpack_require__(326)); var _log = __webpack_require__(145); - function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - /* * SPDX-License-Identifier: Apache-2.0 * @@ -25594,14 +26122,13 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de * specific language governing permissions and limitations * under the License. */ -const colorWheel = [_chalk.default.cyan, _chalk.default.magenta, _chalk.default.blue, _chalk.default.yellow, _chalk.default.green]; +const colorWheel = [_chalk.default.cyan, _chalk.default.magenta, _chalk.default.blue, _chalk.default.yellow, _chalk.default.green]; const getColor = () => { const color = colorWheel.shift(); colorWheel.push(color); return color; }; - function spawn(command, args, opts) { return (0, _execa.default)(command, args, { stdio: 'inherit', @@ -25609,24 +26136,19 @@ function spawn(command, args, opts) { ...opts }); } - function streamToLog(debug = true) { return new _stream.Writable({ objectMode: true, - write(line, _, cb) { if (line.endsWith('\n')) { _log.log[debug ? 'debug' : 'write'](line.slice(0, -1)); } else { _log.log[debug ? 'debug' : 'write'](line); } - cb(); } - }); } - function spawnStreaming(command, args, opts, { prefix, debug @@ -25650,23 +26172,23 @@ function spawnStreaming(command, args, opts, { } /***/ }), -/* 284 */ +/* 290 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; const path = __webpack_require__(4); -const childProcess = __webpack_require__(285); -const crossSpawn = __webpack_require__(286); -const stripFinalNewline = __webpack_require__(299); -const npmRunPath = __webpack_require__(300); -const onetime = __webpack_require__(301); -const makeError = __webpack_require__(303); -const normalizeStdio = __webpack_require__(308); -const {spawnedKill, spawnedCancel, setupTimeout, setExitHandler} = __webpack_require__(309); -const {handleInput, getSpawnedResult, makeAllStream, validateInputSync} = __webpack_require__(310); -const {mergePromise, getSpawnedPromise} = __webpack_require__(318); -const {joinCommand, parseCommand} = __webpack_require__(319); +const childProcess = __webpack_require__(291); +const crossSpawn = __webpack_require__(292); +const stripFinalNewline = __webpack_require__(305); +const npmRunPath = __webpack_require__(306); +const onetime = __webpack_require__(307); +const makeError = __webpack_require__(309); +const normalizeStdio = __webpack_require__(314); +const {spawnedKill, spawnedCancel, setupTimeout, setExitHandler} = __webpack_require__(315); +const {handleInput, getSpawnedResult, makeAllStream, validateInputSync} = __webpack_require__(316); +const {mergePromise, getSpawnedPromise} = __webpack_require__(324); +const {joinCommand, parseCommand} = __webpack_require__(325); const DEFAULT_MAX_BUFFER = 1000 * 1000 * 100; @@ -25917,21 +26439,21 @@ module.exports.node = (scriptPath, args, options = {}) => { /***/ }), -/* 285 */ +/* 291 */ /***/ (function(module, exports) { module.exports = require("child_process"); /***/ }), -/* 286 */ +/* 292 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const cp = __webpack_require__(285); -const parse = __webpack_require__(287); -const enoent = __webpack_require__(298); +const cp = __webpack_require__(291); +const parse = __webpack_require__(293); +const enoent = __webpack_require__(304); function spawn(command, args, options) { // Parse the arguments @@ -25969,16 +26491,16 @@ module.exports._enoent = enoent; /***/ }), -/* 287 */ +/* 293 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; const path = __webpack_require__(4); -const resolveCommand = __webpack_require__(288); -const escape = __webpack_require__(294); -const readShebang = __webpack_require__(295); +const resolveCommand = __webpack_require__(294); +const escape = __webpack_require__(300); +const readShebang = __webpack_require__(301); const isWin = process.platform === 'win32'; const isExecutableRegExp = /\.(?:com|exe)$/i; @@ -26067,15 +26589,15 @@ module.exports = parse; /***/ }), -/* 288 */ +/* 294 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; const path = __webpack_require__(4); -const which = __webpack_require__(289); -const getPathKey = __webpack_require__(293); +const which = __webpack_require__(295); +const getPathKey = __webpack_require__(299); function resolveCommandAttempt(parsed, withoutPathExt) { const env = parsed.options.env || process.env; @@ -26126,7 +26648,7 @@ module.exports = resolveCommand; /***/ }), -/* 289 */ +/* 295 */ /***/ (function(module, exports, __webpack_require__) { const isWindows = process.platform === 'win32' || @@ -26135,7 +26657,7 @@ const isWindows = process.platform === 'win32' || const path = __webpack_require__(4) const COLON = isWindows ? ';' : ':' -const isexe = __webpack_require__(290) +const isexe = __webpack_require__(296) const getNotFoundError = (cmd) => Object.assign(new Error(`not found: ${cmd}`), { code: 'ENOENT' }) @@ -26257,15 +26779,15 @@ which.sync = whichSync /***/ }), -/* 290 */ +/* 296 */ /***/ (function(module, exports, __webpack_require__) { var fs = __webpack_require__(134) var core if (process.platform === 'win32' || global.TESTING_WINDOWS) { - core = __webpack_require__(291) + core = __webpack_require__(297) } else { - core = __webpack_require__(292) + core = __webpack_require__(298) } module.exports = isexe @@ -26320,7 +26842,7 @@ function sync (path, options) { /***/ }), -/* 291 */ +/* 297 */ /***/ (function(module, exports, __webpack_require__) { module.exports = isexe @@ -26368,7 +26890,7 @@ function sync (path, options) { /***/ }), -/* 292 */ +/* 298 */ /***/ (function(module, exports, __webpack_require__) { module.exports = isexe @@ -26415,7 +26937,7 @@ function checkMode (stat, options) { /***/ }), -/* 293 */ +/* 299 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -26438,7 +26960,7 @@ module.exports.default = pathKey; /***/ }), -/* 294 */ +/* 300 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -26490,14 +27012,14 @@ module.exports.argument = escapeArgument; /***/ }), -/* 295 */ +/* 301 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; const fs = __webpack_require__(134); -const shebangCommand = __webpack_require__(296); +const shebangCommand = __webpack_require__(302); function readShebang(command) { // Read the first 150 bytes from the file @@ -26520,12 +27042,12 @@ module.exports = readShebang; /***/ }), -/* 296 */ +/* 302 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const shebangRegex = __webpack_require__(297); +const shebangRegex = __webpack_require__(303); module.exports = (string = '') => { const match = string.match(shebangRegex); @@ -26546,7 +27068,7 @@ module.exports = (string = '') => { /***/ }), -/* 297 */ +/* 303 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -26555,7 +27077,7 @@ module.exports = /^#!(.*)/; /***/ }), -/* 298 */ +/* 304 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -26621,7 +27143,7 @@ module.exports = { /***/ }), -/* 299 */ +/* 305 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -26644,13 +27166,13 @@ module.exports = input => { /***/ }), -/* 300 */ +/* 306 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; const path = __webpack_require__(4); -const pathKey = __webpack_require__(293); +const pathKey = __webpack_require__(299); const npmRunPath = options => { options = { @@ -26698,12 +27220,12 @@ module.exports.env = options => { /***/ }), -/* 301 */ +/* 307 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const mimicFn = __webpack_require__(302); +const mimicFn = __webpack_require__(308); const calledFunctions = new WeakMap(); @@ -26749,7 +27271,7 @@ module.exports.callCount = function_ => { /***/ }), -/* 302 */ +/* 308 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -26769,12 +27291,12 @@ module.exports.default = mimicFn; /***/ }), -/* 303 */ +/* 309 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const {signalsByName} = __webpack_require__(304); +const {signalsByName} = __webpack_require__(310); const getErrorPrefix = ({timedOut, timeout, errorCode, signal, signalDescription, exitCode, isCanceled}) => { if (timedOut) { @@ -26862,14 +27384,14 @@ module.exports = makeError; /***/ }), -/* 304 */ +/* 310 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports,"__esModule",{value:true});exports.signalsByNumber=exports.signalsByName=void 0;var _os=__webpack_require__(121); -var _signals=__webpack_require__(305); -var _realtime=__webpack_require__(307); +var _signals=__webpack_require__(311); +var _realtime=__webpack_require__(313); @@ -26939,14 +27461,14 @@ const signalsByNumber=getSignalsByNumber();exports.signalsByNumber=signalsByNumb //# sourceMappingURL=main.js.map /***/ }), -/* 305 */ +/* 311 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports,"__esModule",{value:true});exports.getSignals=void 0;var _os=__webpack_require__(121); -var _core=__webpack_require__(306); -var _realtime=__webpack_require__(307); +var _core=__webpack_require__(312); +var _realtime=__webpack_require__(313); @@ -26980,7 +27502,7 @@ return{name,number,description,supported,action,forced,standard}; //# sourceMappingURL=signals.js.map /***/ }), -/* 306 */ +/* 312 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -27259,7 +27781,7 @@ standard:"other"}];exports.SIGNALS=SIGNALS; //# sourceMappingURL=core.js.map /***/ }), -/* 307 */ +/* 313 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -27284,7 +27806,7 @@ const SIGRTMAX=64;exports.SIGRTMAX=SIGRTMAX; //# sourceMappingURL=realtime.js.map /***/ }), -/* 308 */ +/* 314 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -27343,13 +27865,13 @@ module.exports.node = opts => { /***/ }), -/* 309 */ +/* 315 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; const os = __webpack_require__(121); -const onExit = __webpack_require__(274); +const onExit = __webpack_require__(279); const DEFAULT_FORCE_KILL_TIMEOUT = 1000 * 5; @@ -27462,14 +27984,14 @@ module.exports = { /***/ }), -/* 310 */ +/* 316 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const isStream = __webpack_require__(311); -const getStream = __webpack_require__(312); -const mergeStream = __webpack_require__(317); +const isStream = __webpack_require__(317); +const getStream = __webpack_require__(318); +const mergeStream = __webpack_require__(323); // `input` option const handleInput = (spawned, input) => { @@ -27566,7 +28088,7 @@ module.exports = { /***/ }), -/* 311 */ +/* 317 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -27601,14 +28123,14 @@ module.exports = isStream; /***/ }), -/* 312 */ +/* 318 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const {constants: BufferConstants} = __webpack_require__(313); -const pump = __webpack_require__(314); -const bufferStream = __webpack_require__(316); +const {constants: BufferConstants} = __webpack_require__(319); +const pump = __webpack_require__(320); +const bufferStream = __webpack_require__(322); class MaxBufferError extends Error { constructor() { @@ -27668,17 +28190,17 @@ module.exports.MaxBufferError = MaxBufferError; /***/ }), -/* 313 */ +/* 319 */ /***/ (function(module, exports) { module.exports = require("buffer"); /***/ }), -/* 314 */ +/* 320 */ /***/ (function(module, exports, __webpack_require__) { var once = __webpack_require__(163) -var eos = __webpack_require__(315) +var eos = __webpack_require__(321) var fs = __webpack_require__(134) // we only need fs to get the ReadStream and WriteStream prototypes var noop = function () {} @@ -27762,7 +28284,7 @@ module.exports = pump /***/ }), -/* 315 */ +/* 321 */ /***/ (function(module, exports, __webpack_require__) { var once = __webpack_require__(163); @@ -27862,7 +28384,7 @@ module.exports = eos; /***/ }), -/* 316 */ +/* 322 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -27921,7 +28443,7 @@ module.exports = options => { /***/ }), -/* 317 */ +/* 323 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -27969,7 +28491,7 @@ module.exports = function (/*streams...*/) { /***/ }), -/* 318 */ +/* 324 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -28022,7 +28544,7 @@ module.exports = { /***/ }), -/* 319 */ +/* 325 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -28061,7 +28583,7 @@ module.exports = { /***/ }), -/* 320 */ +/* 326 */ /***/ (function(module, exports, __webpack_require__) { // Copyright IBM Corp. 2014,2018. All Rights Reserved. @@ -28069,12 +28591,12 @@ module.exports = { // This file is licensed under the Apache License 2.0. // License text available at https://opensource.org/licenses/Apache-2.0 -module.exports = __webpack_require__(321); -module.exports.cli = __webpack_require__(325); +module.exports = __webpack_require__(327); +module.exports.cli = __webpack_require__(331); /***/ }), -/* 321 */ +/* 327 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -28089,9 +28611,9 @@ var stream = __webpack_require__(138); var util = __webpack_require__(112); var fs = __webpack_require__(134); -var through = __webpack_require__(322); -var duplexer = __webpack_require__(323); -var StringDecoder = __webpack_require__(324).StringDecoder; +var through = __webpack_require__(328); +var duplexer = __webpack_require__(329); +var StringDecoder = __webpack_require__(330).StringDecoder; module.exports = Logger; @@ -28280,7 +28802,7 @@ function lineMerger(host) { /***/ }), -/* 322 */ +/* 328 */ /***/ (function(module, exports, __webpack_require__) { var Stream = __webpack_require__(138) @@ -28394,7 +28916,7 @@ function through (write, end, opts) { /***/ }), -/* 323 */ +/* 329 */ /***/ (function(module, exports, __webpack_require__) { var Stream = __webpack_require__(138) @@ -28487,13 +29009,13 @@ function duplex(writer, reader) { /***/ }), -/* 324 */ +/* 330 */ /***/ (function(module, exports) { module.exports = require("string_decoder"); /***/ }), -/* 325 */ +/* 331 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -28504,11 +29026,11 @@ module.exports = require("string_decoder"); -var minimist = __webpack_require__(326); +var minimist = __webpack_require__(332); var path = __webpack_require__(4); -var Logger = __webpack_require__(321); -var pkg = __webpack_require__(327); +var Logger = __webpack_require__(327); +var pkg = __webpack_require__(333); module.exports = cli; @@ -28562,7 +29084,7 @@ function usage($0, p) { /***/ }), -/* 326 */ +/* 332 */ /***/ (function(module, exports) { module.exports = function (args, opts) { @@ -28817,13 +29339,13 @@ function isConstructorOrProto (obj, key) { /***/ }), -/* 327 */ +/* 333 */ /***/ (function(module) { module.exports = JSON.parse("{\"name\":\"strong-log-transformer\",\"version\":\"2.1.0\",\"description\":\"Stream transformer that prefixes lines with timestamps and other things.\",\"author\":\"Ryan Graham \",\"license\":\"Apache-2.0\",\"repository\":{\"type\":\"git\",\"url\":\"git://github.com/strongloop/strong-log-transformer\"},\"keywords\":[\"logging\",\"streams\"],\"bugs\":{\"url\":\"https://github.com/strongloop/strong-log-transformer/issues\"},\"homepage\":\"https://github.com/strongloop/strong-log-transformer\",\"directories\":{\"test\":\"test\"},\"bin\":{\"sl-log-transformer\":\"bin/sl-log-transformer.js\"},\"main\":\"index.js\",\"scripts\":{\"test\":\"tap --100 test/test-*\"},\"dependencies\":{\"duplexer\":\"^0.1.1\",\"minimist\":\"^1.2.0\",\"through\":\"^2.3.4\"},\"devDependencies\":{\"tap\":\"^12.0.1\"},\"engines\":{\"node\":\">=4\"}}"); /***/ }), -/* 328 */ +/* 334 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -28834,51 +29356,41 @@ Object.defineProperty(exports, "__esModule", { }); exports.BuildTargets = void 0; exports.buildTargetedPackage = buildTargetedPackage; - var _promises = __webpack_require__(143); - var _path = __webpack_require__(4); - -var _child_process = __webpack_require__(283); - +var _child_process = __webpack_require__(289); var _log = __webpack_require__(145); - /* * Copyright OpenSearch Contributors * SPDX-License-Identifier: Apache-2.0 */ + const BuildTargetPresets = { web: '@osd/babel-preset/webpack_preset', node: '@osd/babel-preset/node_preset' }; -const BuildTargets = Object.keys(BuildTargetPresets); +const BuildTargets = exports.BuildTargets = Object.keys(BuildTargetPresets); + /** * Run script in the given directory */ - -exports.BuildTargets = BuildTargets; - async function buildTargetedPackage({ pkg, sourceMaps }) { _log.log.debug(`[${pkg.name}] deleting old output`); - await (0, _promises.rm)(pkg.targetLocation, { force: true, recursive: true }); - _log.log.debug(`[${pkg.name}] generating type definitions`); - await (0, _child_process.spawn)('tsc', [...(sourceMaps ? ['--declarationMap', 'true'] : [])], { cwd: pkg.path - }); // Generate [A], [A and B], or [A, B, and C] labels + }); + // Generate [A], [A and B], or [A, B, and C] labels const targetsDisplayLabel = pkg.buildTargets.join(', ').replace(/, ([^,]+)$/, pkg.buildTargets.length > 2 ? ', and $1' : ' and $1'); - _log.log.debug(`[${pkg.name}] transpiling for ${targetsDisplayLabel}`); - await Promise.all([...pkg.buildTargets.map(target => (0, _child_process.spawn)('babel', ['src', '--no-babelrc', '--presets', BuildTargetPresets[target], '--out-dir', (0, _path.resolve)(pkg.targetLocation, target), '--extensions', '.ts,.js,.tsx', '--ignore', '**/*.test.ts,**/*.test.tsx', '--quiet', ...(sourceMaps ? ['--source-maps', 'inline'] : [])], { env: { BABEL_ENV: target @@ -28888,7 +29400,7 @@ async function buildTargetedPackage({ } /***/ }), -/* 329 */ +/* 335 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -28899,23 +29411,14 @@ Object.defineProperty(exports, "__esModule", { }); exports.copyWorkspacePackages = copyWorkspacePackages; exports.workspacePackagePaths = workspacePackagePaths; - var _glob = _interopRequireDefault(__webpack_require__(148)); - var _path = _interopRequireDefault(__webpack_require__(4)); - var _util = __webpack_require__(112); - -var _config = __webpack_require__(330); - +var _config = __webpack_require__(336); var _fs = __webpack_require__(131); - var _package_json = __webpack_require__(166); - var _projects = __webpack_require__(147); - function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - /* * SPDX-License-Identifier: Apache-2.0 * @@ -28945,57 +29448,49 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de * specific language governing permissions and limitations * under the License. */ -const glob = (0, _util.promisify)(_glob.default); +const glob = (0, _util.promisify)(_glob.default); async function workspacePackagePaths(rootPath) { const rootPkgJson = await (0, _package_json.readPackageJson)(rootPath); - if (!rootPkgJson.workspaces) { return []; } - const workspacesPathsPatterns = rootPkgJson.workspaces.packages; let workspaceProjectsPaths = []; - for (const pattern of workspacesPathsPatterns) { workspaceProjectsPaths = workspaceProjectsPaths.concat(await packagesFromGlobPattern({ pattern, rootPath })); - } // Filter out exclude glob patterns - + } + // Filter out exclude glob patterns for (const pattern of workspacesPathsPatterns) { if (pattern.startsWith('!')) { const pathToRemove = _path.default.join(rootPath, pattern.slice(1), 'package.json'); - workspaceProjectsPaths = workspaceProjectsPaths.filter(p => p !== pathToRemove); } } - return workspaceProjectsPaths; } - async function copyWorkspacePackages(rootPath) { const projectPaths = (0, _config.getProjectPaths)({ rootPath }); const projects = await (0, _projects.getProjects)(rootPath, projectPaths); - for (const project of projects.values()) { const dest = _path.default.resolve(rootPath, 'node_modules', project.name); - if ((await (0, _fs.isSymlink)(dest)) === false) { continue; - } // Remove the symlink - + } - await (0, _fs.unlink)(dest); // Copy in the package + // Remove the symlink + await (0, _fs.unlink)(dest); + // Copy in the package await (0, _fs.copyDirectory)(project.path, dest); } } - function packagesFromGlobPattern({ pattern, rootPath @@ -29014,7 +29509,7 @@ function packagesFromGlobPattern({ } /***/ }), -/* 330 */ +/* 336 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -29024,9 +29519,7 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getProjectPaths = getProjectPaths; - var _path = __webpack_require__(4); - /* * SPDX-License-Identifier: Apache-2.0 * @@ -29065,7 +29558,9 @@ function getProjectPaths({ ossOnly, skipOpenSearchDashboardsPlugins }) { - const projectPaths = [rootPath, (0, _path.resolve)(rootPath, 'packages/*')]; // This is needed in order to install the dependencies for the declared + const projectPaths = [rootPath, (0, _path.resolve)(rootPath, 'packages/*')]; + + // This is needed in order to install the dependencies for the declared // plugin functional used in the selenium functional tests. // As we are now using the webpack dll for the client vendors dependencies // when we run the plugin functional tests against the distributable @@ -29074,11 +29569,9 @@ function getProjectPaths({ // into the webpack dll reference plugin. // In anyway, have a plugin declaring their own dependencies is the // correct and the expect behavior. - projectPaths.push((0, _path.resolve)(rootPath, 'test/plugin_functional/plugins/*')); projectPaths.push((0, _path.resolve)(rootPath, 'test/interpreter_functional/plugins/*')); projectPaths.push((0, _path.resolve)(rootPath, 'examples/*')); - if (!skipOpenSearchDashboardsPlugins) { projectPaths.push((0, _path.resolve)(rootPath, '../opensearch-dashboards-extra/*')); projectPaths.push((0, _path.resolve)(rootPath, '../opensearch-dashboards-extra/*/packages/*')); @@ -29087,12 +29580,11 @@ function getProjectPaths({ projectPaths.push((0, _path.resolve)(rootPath, 'plugins/*/packages/*')); projectPaths.push((0, _path.resolve)(rootPath, 'plugins/*/plugins/*')); } - return projectPaths; } /***/ }), -/* 331 */ +/* 337 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -29102,17 +29594,11 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getAllChecksums = getAllChecksums; - var _promises = __webpack_require__(143); - -var _crypto = _interopRequireDefault(__webpack_require__(332)); - -var _execa = _interopRequireDefault(__webpack_require__(284)); - -var _yarn_lock = __webpack_require__(333); - +var _crypto = _interopRequireDefault(__webpack_require__(338)); +var _execa = _interopRequireDefault(__webpack_require__(290)); +var _yarn_lock = __webpack_require__(339); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - /* * SPDX-License-Identifier: Apache-2.0 * @@ -29142,10 +29628,12 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de * specific language governing permissions and limitations * under the License. */ -const projectBySpecificitySorter = (a, b) => b.path.length - a.path.length; -/** Get the changed files for a set of projects */ +/** map of [repo relative path to changed file, type of change] */ +const projectBySpecificitySorter = (a, b) => b.path.length - a.path.length; + +/** Get the changed files for a set of projects */ async function getChangesForProjects(projects, osd, log) { log.verbose('getting changed files'); const { @@ -29155,12 +29643,10 @@ async function getChangesForProjects(projects, osd, log) { }); const output = stdout.trim(); const unassignedChanges = new Map(); - if (output) { for (const line of output.split('\n')) { const [tag, ...pathParts] = line.trim().split(' '); const path = pathParts.join(' '); - switch (tag) { case 'M': case 'C': @@ -29170,17 +29656,13 @@ async function getChangesForProjects(projects, osd, log) { if (unassignedChanges.get(path) !== 'deleted') { unassignedChanges.set(path, 'modified'); } - break; - case 'R': unassignedChanges.set(path, 'deleted'); break; - case '?': unassignedChanges.set(path, 'untracked'); break; - case 'H': case 'S': case 'K': @@ -29191,44 +29673,35 @@ async function getChangesForProjects(projects, osd, log) { } } } - const sortedRelevantProjects = Array.from(projects.values()).sort(projectBySpecificitySorter); const changesByProject = new Map(); - for (const project of sortedRelevantProjects) { if (osd.isOutsideRepo(project)) { changesByProject.set(project, undefined); continue; } - const ownChanges = new Map(); const prefix = osd.getRelative(project.path); - for (const [path, type] of unassignedChanges) { if (path.startsWith(prefix)) { ownChanges.set(path, type); unassignedChanges.delete(path); } } - log.verbose(`[${project.name}] found ${ownChanges.size} changes`); changesByProject.set(project, ownChanges); } - if (unassignedChanges.size) { throw new Error(`unable to assign all change paths to a project: ${JSON.stringify(Array.from(unassignedChanges.entries()))}`); } - return changesByProject; } -/** Get the latest commit sha for a project */ - +/** Get the latest commit sha for a project */ async function getLatestSha(project, osd) { if (osd.isOutsideRepo(project)) { return; } - const { stdout } = await (0, _execa.default)('git', ['log', '-n', '1', '--pretty=format:%H', '--', project.path], { @@ -29236,28 +29709,23 @@ async function getLatestSha(project, osd) { }); return stdout.trim() || undefined; } + /** * Get the checksum for a specific project in the workspace */ - - async function getChecksum(project, changes, yarnLock, osd, log) { const sha = await getLatestSha(project, osd); - if (sha) { log.verbose(`[${project.name}] local sha:`, sha); } - if (!changes || Array.from(changes.values()).includes('invalid')) { log.warning(`[${project.name}] unable to determine local changes, caching disabled`); return; } - const changesSummary = await Promise.all(Array.from(changes).sort((a, b) => a[0].localeCompare(b[0])).map(async ([path, type]) => { if (type === 'deleted') { return `${path}:deleted`; } - const stats = await (0, _promises.stat)(osd.getAbsolute(path)); log.verbose(`[${project.name}] modified time ${stats.mtimeMs} for ${path}`); return `${path}:${stats.mtimeMs}`; @@ -29270,11 +29738,9 @@ async function getChecksum(project, changes, yarnLock, osd, log) { includeDependentProject: false, productionDepsOnly: false }); - if (!depMap) { return; } - const deps = Array.from(depMap.values()).map(({ name, version @@ -29285,29 +29751,25 @@ async function getChecksum(project, changes, yarnLock, osd, log) { changes: changesSummary, deps }, null, 2); - if (process.env.BOOTSTRAP_CACHE_DEBUG_CHECKSUM) { return checksum; } - const hash = _crypto.default.createHash('sha1'); - hash.update(checksum); return hash.digest('hex'); } + /** * Calculate checksums for all projects in the workspace based on * - last git commit to project directory * - un-committed changes * - resolved dependencies from yarn.lock referenced by project package.json */ - - async function getAllChecksums(osd, log, yarnLock) { const projects = osd.getAllProjects(); const changesByProject = await getChangesForProjects(projects, osd, log); - /** map of [project.name, cacheKey] */ + /** map of [project.name, cacheKey] */ const cacheKeys = new Map(); await Promise.all(Array.from(projects.values()).map(async project => { cacheKeys.set(project.name, await getChecksum(project, changesByProject.get(project), yarnLock, osd, log)); @@ -29316,13 +29778,13 @@ async function getAllChecksums(osd, log, yarnLock) { } /***/ }), -/* 332 */ +/* 338 */ /***/ (function(module, exports) { module.exports = require("crypto"); /***/ }), -/* 333 */ +/* 339 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -29333,15 +29795,10 @@ Object.defineProperty(exports, "__esModule", { }); exports.readYarnLock = readYarnLock; exports.resolveDepsForProject = resolveDepsForProject; - -var _lockfile = __webpack_require__(334); - -var _crossPlatform = __webpack_require__(335); - +var _lockfile = __webpack_require__(340); +var _crossPlatform = __webpack_require__(341); var _path = __webpack_require__(4); - var _fs = __webpack_require__(131); - /* * SPDX-License-Identifier: Apache-2.0 * @@ -29371,58 +29828,53 @@ var _fs = __webpack_require__(131); * specific language governing permissions and limitations * under the License. */ + // @ts-expect-error published types are worthless + async function readYarnLock(osd) { try { const contents = await (0, _fs.readFile)(osd.getAbsolute('yarn.lock'), 'utf8'); const yarnLock = (0, _lockfile.parse)(contents); - if (yarnLock.type === 'success') { return fixFileLinks(yarnLock.object, osd.getAbsolute()); } - throw new Error('unable to read yarn.lock file, please run `yarn osd bootstrap`'); } catch (error) { if (error.code !== 'ENOENT') { throw error; } } - return {}; } + /** * Converts relative `file:` paths to absolute paths * Yarn parsing method converts all file URIs to relative paths and this * breaks the single-version requirement as dependencies to the same path * would differ in their URIs across OSD and packages. */ - - function fixFileLinks(yarnLock, projectRoot) { const fileLinkDelimiter = '@file:'; const linkedKeys = Object.keys(yarnLock).filter(key => key.includes(fileLinkDelimiter)); if (linkedKeys.length === 0) return yarnLock; - const updatedYarnLock = { ...yarnLock + const updatedYarnLock = { + ...yarnLock }; - for (const key of linkedKeys) { const [keyName, keyPath, ...rest] = key.split(fileLinkDelimiter); - if (!(0, _path.isAbsolute)(keyPath)) { const updatedKeyName = [keyName, (0, _crossPlatform.standardize)((0, _path.resolve)(projectRoot, keyPath)), ...rest].join(fileLinkDelimiter); updatedYarnLock[updatedKeyName] = updatedYarnLock[key]; } } - return updatedYarnLock; } + /** * Get a list of the absolute dependencies of this project, as resolved * in the yarn.lock file, does not include other projects in the workspace * or their dependencies */ - - function resolveDepsForProject({ project: rootProject, yarnLock, @@ -29436,59 +29888,47 @@ function resolveDepsForProject({ const seenProjects = new Set(); const projectQueue = [rootProject]; const depQueue = []; - while (projectQueue.length) { const project = projectQueue.shift(); - if (seenProjects.has(project)) { continue; } - seenProjects.add(project); const projectDeps = Object.entries(productionDepsOnly ? project.productionDependencies : project.allDependencies); - for (const [name, versionRange] of projectDeps) { depQueue.push([name, versionRange]); } - while (depQueue.length) { const [name, versionRange] = depQueue.shift(); const req = `${name}@${versionRange}`; - if (resolved.has(req)) { continue; } - if (includeDependentProject && osd.hasProject(name)) { projectQueue.push(osd.getProject(name)); } - if (!osd.hasProject(name)) { const pkg = yarnLock[req]; - if (!pkg) { log.warning('yarn.lock file is out of date, please run `yarn osd bootstrap` to re-enable caching'); return; } - resolved.set(req, { name, version: pkg.version }); const allDepsEntries = [...Object.entries(pkg.dependencies || {}), ...Object.entries(pkg.optionalDependencies || {})]; - for (const [childName, childVersionRange] of allDepsEntries) { depQueue.push([childName, childVersionRange]); } } } } - return resolved; } /***/ }), -/* 334 */ +/* 340 */ /***/ (function(module, exports, __webpack_require__) { module.exports = @@ -31047,7 +31487,7 @@ module.exports = invariant; /* 9 */ /***/ (function(module, exports) { -module.exports = __webpack_require__(332); +module.exports = __webpack_require__(338); /***/ }), /* 10 */, @@ -33371,7 +33811,7 @@ function onceStrict (fn) { /* 63 */ /***/ (function(module, exports) { -module.exports = __webpack_require__(313); +module.exports = __webpack_require__(319); /***/ }), /* 64 */, @@ -39766,50 +40206,42 @@ module.exports = process && support(supportLevel); /******/ ]); /***/ }), -/* 335 */ +/* 341 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; + /* * Copyright OpenSearch Contributors * SPDX-License-Identifier: Apache-2.0 */ - Object.defineProperty(exports, "__esModule", { value: true }); - const tslib_1 = __webpack_require__(7); - -tslib_1.__exportStar(__webpack_require__(336), exports); - -tslib_1.__exportStar(__webpack_require__(337), exports); - -tslib_1.__exportStar(__webpack_require__(338), exports); +tslib_1.__exportStar(__webpack_require__(342), exports); +tslib_1.__exportStar(__webpack_require__(343), exports); +tslib_1.__exportStar(__webpack_require__(344), exports); /***/ }), -/* 336 */ +/* 342 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; + /* * Copyright OpenSearch Contributors * SPDX-License-Identifier: Apache-2.0 */ - Object.defineProperty(exports, "__esModule", { value: true }); exports.realshortpathSync = exports.realShortPathSync = exports.realpathSync = exports.realPathSync = exports.resolveToShortNameSync = exports.resolveToShortPathSync = exports.resolveToFullNameSync = exports.resolveToFullPathSync = exports.shortNameSupportedSync = exports.shortNamesSupportedSync = exports.standardize = exports.NAMESPACE_PREFIX = void 0; - -const child_process_1 = __webpack_require__(285); - +const child_process_1 = __webpack_require__(291); const path_1 = __webpack_require__(4); - const fs_1 = __webpack_require__(134); - exports.NAMESPACE_PREFIX = process.platform === 'win32' ? '\\\\?\\' : ''; /** * Get a standardized reference to a path @@ -39818,13 +40250,11 @@ exports.NAMESPACE_PREFIX = process.platform === 'win32' ? '\\\\?\\' : ''; * @param {boolean} [escapedBackslashes=true] - on Windows, double-backslash the reference * @param {boolean} [returnUNC=false] - produce an extended reference */ - exports.standardize = (path, usePosix = true, escapedBackslashes = true, returnUNC = false) => { var _process; - // Force os-dependant separators - const normal = path_1.normalize(path); // Filter out in-browser executions as well as non-windows ones - + const normal = path_1.normalize(path); + // Filter out in-browser executions as well as non-windows ones if (((_process = process) === null || _process === void 0 ? void 0 : _process.platform) !== 'win32') return normal; if (usePosix) return normal.replace(/\\/g, '/');else if (escapedBackslashes) return normal.replace(/\\/g, '\\\\');else if (returnUNC) return '\\\\?\\' + normal; return normal; @@ -39834,22 +40264,18 @@ exports.standardize = (path, usePosix = true, escapedBackslashes = true, returnU * @param {string} path * @private */ - - const getFullPathSync = path => { if (process.platform !== 'win32') return path; - try { var _child_process_1$exec, _child_process_1$exec2; - const fullName = (_child_process_1$exec = child_process_1.execSync(`powershell "(Get-Item -LiteralPath '${path}').FullName"`, { encoding: 'utf8' - })) === null || _child_process_1$exec === void 0 ? void 0 : (_child_process_1$exec2 = _child_process_1$exec.trim) === null || _child_process_1$exec2 === void 0 ? void 0 : _child_process_1$exec2.call(_child_process_1$exec); // Make sure we got something back - + })) === null || _child_process_1$exec === void 0 || (_child_process_1$exec2 = _child_process_1$exec.trim) === null || _child_process_1$exec2 === void 0 ? void 0 : _child_process_1$exec2.call(_child_process_1$exec); + // Make sure we got something back if ((fullName === null || fullName === void 0 ? void 0 : fullName.length) > 2) return fullName; - } catch (ex) {// Do nothing + } catch (ex) { + // Do nothing } - return path; }; /** @@ -39857,136 +40283,113 @@ const getFullPathSync = path => { * @param {string} path * @private */ - - const getShortPathSync = path => { if (process.platform !== 'win32') return path; - try { var _child_process_1$exec3, _child_process_1$exec4; - const shortPath = (_child_process_1$exec3 = child_process_1.execSync(`powershell "$FSO = New-Object -ComObject Scripting.FileSystemObject; $O = (Get-Item -LiteralPath '${path}'); if ($O.PSIsContainer) { $FSO.GetFolder($O.FullName).ShortPath } else { $FSO.GetFile($O.FullName).ShortPath }"`, { encoding: 'utf8' - })) === null || _child_process_1$exec3 === void 0 ? void 0 : (_child_process_1$exec4 = _child_process_1$exec3.trim) === null || _child_process_1$exec4 === void 0 ? void 0 : _child_process_1$exec4.call(_child_process_1$exec3); // Make sure we got something back - + })) === null || _child_process_1$exec3 === void 0 || (_child_process_1$exec4 = _child_process_1$exec3.trim) === null || _child_process_1$exec4 === void 0 ? void 0 : _child_process_1$exec4.call(_child_process_1$exec3); + // Make sure we got something back if ((shortPath === null || shortPath === void 0 ? void 0 : shortPath.length) > 2) return shortPath; - } catch (ex) {// Do nothing + } catch (ex) { + // Do nothing } - return path; }; /** * Checks if Windows 8.3 short names are supported on the volume of the given path * @param {string} [path='.'] - the path to examine */ - - exports.shortNamesSupportedSync = (path = '.') => { if (process.platform !== 'win32') return false; const testFileName = '.___osd-cross-platform-test.file'; - const file = path_1.resolve(path, testFileName); // Create a test file if it doesn't exist - - if (!fs_1.existsSync(file)) fs_1.closeSync(fs_1.openSync(file, 'w')); // If the returned value's basename is not the same as the requested file name, it must be a short name - - const foundShortName = path_1.basename(getShortPathSync(file)) !== testFileName; // Cleanup - + const file = path_1.resolve(path, testFileName); + // Create a test file if it doesn't exist + if (!fs_1.existsSync(file)) fs_1.closeSync(fs_1.openSync(file, 'w')); + // If the returned value's basename is not the same as the requested file name, it must be a short name + const foundShortName = path_1.basename(getShortPathSync(file)) !== testFileName; + // Cleanup fs_1.unlinkSync(file); return foundShortName; }; /** * @borrows shortNamesSupportedSync */ - - exports.shortNameSupportedSync = exports.shortNamesSupportedSync; /** * Get the full pathname * @param {string} path - the path to resolve */ - exports.resolveToFullPathSync = path => getFullPathSync(path_1.resolve(path)); /** * @borrows resolveToFullPathSync */ - - exports.resolveToFullNameSync = exports.resolveToFullPathSync; /** * Get the short pathname * @param {string} path - the path to resolve */ - exports.resolveToShortPathSync = path => getShortPathSync(path_1.resolve(path)); /** * @borrows resolveToShortPathSync */ - - exports.resolveToShortNameSync = exports.resolveToShortPathSync; /** * Get the canonical pathname * @param {string} path - the path to resolve */ - exports.realPathSync = path => getFullPathSync(fs_1.realpathSync(path, 'utf8')); /** * @borrows realPathSync */ - - exports.realpathSync = exports.realPathSync; /** * Get the canonical pathname * @param {string} path - the path to resolve */ - exports.realShortPathSync = path => getShortPathSync(fs_1.realpathSync(path, 'utf8')); /** * @borrows realShortPathSync */ - - exports.realshortpathSync = exports.realShortPathSync; /***/ }), -/* 337 */ +/* 343 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; + /* * Copyright OpenSearch Contributors * SPDX-License-Identifier: Apache-2.0 */ - Object.defineProperty(exports, "__esModule", { value: true }); exports.PROCESS_POSIX_WORKING_DIR = exports.PROCESS_WORKING_DIR = void 0; - -const path_1 = __webpack_require__(336); +const path_1 = __webpack_require__(342); /** * The full pathname of the working directory of the process * @constant * @type {string} */ - - exports.PROCESS_WORKING_DIR = path_1.resolveToFullPathSync(process.cwd()); /** * The full pathname of the working directory of the process, in POSIX format * @constant * @type {string} */ - exports.PROCESS_POSIX_WORKING_DIR = path_1.standardize(exports.PROCESS_WORKING_DIR); /***/ }), -/* 338 */ +/* 344 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; + /* * SPDX-License-Identifier: Apache-2.0 * @@ -39997,12 +40400,10 @@ exports.PROCESS_POSIX_WORKING_DIR = path_1.standardize(exports.PROCESS_WORKING_D * Any modifications Copyright OpenSearch Contributors. See * GitHub history for details. */ - Object.defineProperty(exports, "__esModule", { value: true }); exports.relativeToRepoRoot = exports.getRepoRoot = exports.getMatchingRoot = exports.UPSTREAM_BRANCH = exports.REPO_ROOT_8_3 = exports.REPO_ROOT = void 0; - const tslib_1 = __webpack_require__(7); /* * Licensed to Elasticsearch B.V. under one or more contributor @@ -40022,19 +40423,13 @@ const tslib_1 = __webpack_require__(7); * specific language governing permissions and limitations * under the License. */ - - const path_1 = __webpack_require__(4); - -const load_json_file_1 = tslib_1.__importDefault(__webpack_require__(339)); - -const path_2 = __webpack_require__(336); - +const load_json_file_1 = tslib_1.__importDefault(__webpack_require__(345)); +const path_2 = __webpack_require__(342); const readOpenSearchDashboardsPkgJson = dir => { try { const path = path_1.resolve(dir, 'package.json'); const json = load_json_file_1.default.sync(path); - if ((json === null || json === void 0 ? void 0 : json.name) === 'opensearch-dashboards') { return json; } @@ -40042,11 +40437,9 @@ const readOpenSearchDashboardsPkgJson = dir => { if (error && error.code === 'ENOENT') { return; } - throw error; } }; - const findOpenSearchDashboardsPackageJson = () => { // search for the opensearch-dashboards directory, since this file is moved around it might // not be where we think but should always be a relatively close parent @@ -40056,27 +40449,21 @@ const findOpenSearchDashboardsPackageJson = () => { root: rootDir } = path_1.parse(startDir); let cursor = startDir; - while (true) { const opensearchDashboardsPkgJson = readOpenSearchDashboardsPkgJson(cursor); - if (opensearchDashboardsPkgJson) { return { opensearchDashboardsDir: cursor, opensearchDashboardsPkgJson: opensearchDashboardsPkgJson }; } - const parent = path_1.dirname(cursor); - if (parent === rootDir) { throw new Error(`unable to find opensearch-dashboards directory from ${startDir}`); } - cursor = parent; } }; - const { opensearchDashboardsDir, opensearchDashboardsPkgJson @@ -40084,27 +40471,23 @@ const { exports.REPO_ROOT = path_2.resolveToFullPathSync(opensearchDashboardsDir); exports.REPO_ROOT_8_3 = path_2.resolveToShortPathSync(opensearchDashboardsDir); exports.UPSTREAM_BRANCH = opensearchDashboardsPkgJson.branch; - exports.getMatchingRoot = (path, rootPaths) => { - const rootPathsArray = Array.isArray(rootPaths) ? rootPaths : [rootPaths]; // We can only find the appropriate root if an absolute path was given - + const rootPathsArray = Array.isArray(rootPaths) ? rootPaths : [rootPaths]; + // We can only find the appropriate root if an absolute path was given if (path && path_1.isAbsolute(path)) { // Return the matching root if one is found or return `undefined` return rootPathsArray.find(root => path.startsWith(root)); } - return undefined; }; - exports.getRepoRoot = path => exports.getMatchingRoot(path, [exports.REPO_ROOT, exports.REPO_ROOT_8_3]); - exports.relativeToRepoRoot = path => { const repoRoot = exports.getRepoRoot(path); return repoRoot ? path_1.relative(repoRoot, path) : null; }; /***/ }), -/* 339 */ +/* 345 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -40112,7 +40495,7 @@ exports.relativeToRepoRoot = path => { const path = __webpack_require__(4); const {promisify} = __webpack_require__(112); const fs = __webpack_require__(133); -const stripBom = __webpack_require__(340); +const stripBom = __webpack_require__(346); const parseJson = __webpack_require__(168); const parse = (data, filePath, options = {}) => { @@ -40130,7 +40513,7 @@ module.exports.sync = (filePath, options) => parse(fs.readFileSync(filePath, 'ut /***/ }), -/* 340 */ +/* 346 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -40152,7 +40535,7 @@ module.exports = string => { /***/ }), -/* 341 */ +/* 347 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -40162,56 +40545,73 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.BootstrapCacheFile = void 0; - var _fs = _interopRequireDefault(__webpack_require__(134)); - var _path = _interopRequireDefault(__webpack_require__(4)); - function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } - +function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } +function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); } +function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } /* + * SPDX-License-Identifier: Apache-2.0 + * + * The OpenSearch Contributors require contributions made to + * this file be licensed under the Apache-2.0 license or a + * compatible open source license. + * + * Any modifications Copyright OpenSearch Contributors. See + * GitHub history for details. + */ /* + * Licensed to Elasticsearch B.V. under one or more contributor + * license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright + * ownership. Elasticsearch B.V. licenses this file to you under + * the Apache License, Version 2.0 (the "License"); you may + * not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ class BootstrapCacheFile { constructor(osd, project, checksums) { _defineProperty(this, "path", void 0); - _defineProperty(this, "expectedValue", void 0); - this.path = _path.default.resolve(project.targetLocation, '.bootstrap-cache'); - if (!checksums) { return; } - - const projectAndDepCacheKeys = Array.from(osd.getProjectAndDeps(project.name).values()) // sort deps by name so that the key is stable - .sort((a, b) => a.name.localeCompare(b.name)) // get the cacheKey for each project, return undefined if the cache key couldn't be determined + const projectAndDepCacheKeys = Array.from(osd.getProjectAndDeps(project.name).values()) + // sort deps by name so that the key is stable + .sort((a, b) => a.name.localeCompare(b.name)) + // get the cacheKey for each project, return undefined if the cache key couldn't be determined .map(p => { const cacheKey = checksums.get(p.name); - if (cacheKey) { return `${p.name}:${cacheKey}`; } - }); // if any of the relevant cache keys are undefined then the projectCacheKey must be too + }); + // if any of the relevant cache keys are undefined then the projectCacheKey must be too this.expectedValue = projectAndDepCacheKeys.some(k => !k) ? undefined : [`# this is only human readable for debugging, please don't try to parse this`, ...projectAndDepCacheKeys].join('\n'); } - isValid() { if (!this.expectedValue) { return false; } - try { return _fs.default.readFileSync(this.path, 'utf8') === this.expectedValue; } catch (error) { if (error.code === 'ENOENT') { return false; } - throw error; } } - delete() { try { _fs.default.unlinkSync(this.path); @@ -40221,25 +40621,20 @@ class BootstrapCacheFile { } } } - write() { if (!this.expectedValue) { return; } - _fs.default.mkdirSync(_path.default.dirname(this.path), { recursive: true }); - _fs.default.writeFileSync(this.path, this.expectedValue); } - } - exports.BootstrapCacheFile = BootstrapCacheFile; /***/ }), -/* 342 */ +/* 348 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -40249,21 +40644,16 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.validateDependencies = validateDependencies; - -var _lockfile = __webpack_require__(334); - +var _lockfile = __webpack_require__(340); var _dedent = _interopRequireDefault(__webpack_require__(2)); - var _chalk = _interopRequireDefault(__webpack_require__(113)); - -var _fs = __webpack_require__(131); - +var _path = _interopRequireDefault(__webpack_require__(4)); +var _fs = __webpack_require__(134); +var _semver = __webpack_require__(196); +var _fs2 = __webpack_require__(131); var _log = __webpack_require__(145); - -var _projects_tree = __webpack_require__(343); - +var _projects_tree = __webpack_require__(349); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - /* * SPDX-License-Identifier: Apache-2.0 * @@ -40274,7 +40664,6 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de * Any modifications Copyright OpenSearch Contributors. See * GitHub history for details. */ - /* * Licensed to Elasticsearch B.V. under one or more contributor * license agreements. See the NOTICE file distributed with @@ -40294,29 +40683,58 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de * under the License. */ // @ts-expect-error published types are useless -async function validateDependencies(osd, yarnLock) { - // look through all of the packages in the yarn.lock file to see if +var SingleVersionResolution = /*#__PURE__*/function (SingleVersionResolution) { + SingleVersionResolution["STRICT"] = "strict"; + SingleVersionResolution["LOOSE"] = "loose"; + SingleVersionResolution["FORCE"] = "force"; + SingleVersionResolution["BRUTE_FORCE"] = "brute-force"; + SingleVersionResolution["IGNORE"] = "ignore"; + return SingleVersionResolution; +}(SingleVersionResolution || {}); +async function validateDependencies(osd, yarnLock, +/* `singleVersionResolution` controls how violations of single-version-dependencies is applied. + * STRICT (default): throw an error and exit + * LOOSE: identify and install a single version that satisfies all ranges + * BRUTE_FORCE: identify and install the newest version + * IGNORE: show all errors without exiting + * + * `LOOSE`: + * Reconciles the various versions installed as a result of having multiple ranges for a dependency, by + * choosing one that satisfies all said ranges. Even though installing the chosen version updates the + * lock-files, no package.json changes would be needed. + * + * `BRUTE_FORCE`: + * With no care for reconciliation, the newest of the various versions installed is chosen, irrespective of + * whether it satisfies any of the ranges. Installing the chosen version updates the lock-files and a range + * in the form of `^` is applied to all `package.json` files that declared the dependency. + * + * `FORCE`: + * For each dependency, first LOOSE resolution is attempted but if that fails, BRUTE_FORCE is applied. + * + * `IGNORE`: + * Behaves just like `strict` by showing errors when different ranges of a package are marked as + * dependencies, but it does not terminate the script. + */ +singleVersionResolution = SingleVersionResolution.STRICT) { + // look through all the packages in the yarn.lock file to see if // we have accidentally installed multiple lodash v4 versions const lodash4Versions = new Set(); const lodash4Reqs = new Set(); - for (const [req, dep] of Object.entries(yarnLock)) { if (req.startsWith('lodash@') && dep.version.startsWith('4.')) { lodash4Reqs.add(req); lodash4Versions.add(dep.version); } - } // if we find more than one lodash v4 version installed then delete + } + + // if we find more than one lodash v4 version installed then delete // lodash v4 requests from the yarn.lock file and prompt the user to // retry bootstrap so that a single v4 version will be installed - - if (lodash4Versions.size > 1) { for (const req of lodash4Reqs) { delete yarnLock[req]; } - - await (0, _fs.writeFile)(osd.getAbsolute('yarn.lock'), (0, _lockfile.stringify)(yarnLock), 'utf8'); - + await (0, _fs2.writeFile)(osd.getAbsolute('yarn.lock'), (0, _lockfile.stringify)(yarnLock), 'utf8'); _log.log.error((0, _dedent.default)` Multiple version of lodash v4 were detected, so they have been removed @@ -40330,23 +40748,21 @@ async function validateDependencies(osd, yarnLock) { If you have questions about this please reach out to the operations team. `); - process.exit(1); - } // look through all the dependencies of production packages and production + } + + // look through all the dependencies of production packages and production // dependencies of those packages to determine if we're shipping any versions // of lodash v3 in the distributable - - const prodDependencies = osd.resolveAllProductionDependencies(yarnLock, _log.log); const lodash3Versions = new Set(); - for (const dep of prodDependencies.values()) { if (dep.name === 'lodash' && dep.version.startsWith('3.')) { lodash3Versions.add(dep.version); } - } // if any lodash v3 packages were found we abort and tell the user to fix things - + } + // if any lodash v3 packages were found we abort and tell the user to fix things if (lodash3Versions.size) { _log.log.error((0, _dedent.default)` @@ -40361,18 +40777,17 @@ async function validateDependencies(osd, yarnLock) { If you have questions about this please reack out to the operations team. `); - process.exit(1); - } // TODO: remove this once we move into a single package.json - // look through all the package.json files to find packages which have mismatched version ranges - + } + let hasIssues = false; + // look through all the package.json files to find packages which have mismatched version ranges const depRanges = new Map(); - for (const project of osd.getAllProjects().values()) { - for (const [dep, range] of Object.entries(project.allDependencies)) { + for (const [dep, range] of Object.entries( + // Don't be bothered with validating dev-deps when validating single-version loosely + singleVersionResolution === SingleVersionResolution.LOOSE ? project.productionDependencies : project.allDependencies)) { const existingDep = depRanges.get(dep); - if (!existingDep) { depRanges.set(dep, [{ range, @@ -40380,9 +40795,7 @@ async function validateDependencies(osd, yarnLock) { }]); continue; } - const existingRange = existingDep.find(existing => existing.range === range); - if (!existingRange) { existingDep.push({ range, @@ -40390,17 +40803,148 @@ async function validateDependencies(osd, yarnLock) { }); continue; } - existingRange.projects.push(project); } } + const cachedManifests = new Map(); + const violatingSingleVersionDepRanges = new Map(); + depRangesLoop: for (const [depName, ranges] of depRanges) { + // No violation if just a single range of a dependency is used + if (ranges.length === 1) continue; + const installedVersions = new Set(); + const installedDepVersionsCache = new Map(); + const desiredRanges = new Map(); + rangesLoop: for (const { + range, + projects + } of ranges) { + for (const project of projects) { + var _deps; + if (!cachedManifests.has(project.path)) cachedManifests.set(project.path, + // If there are errors reading or parsing the lockfiles, don't catch and let them fall through + (0, _lockfile.parse)((0, _fs.readFileSync)(_path.default.join(project.path, 'yarn.lock'), 'utf-8'))); + const { + object: deps + } = cachedManifests.get(project.path); + if (deps !== null && deps !== void 0 && (_deps = deps[`${depName}@${range}`]) !== null && _deps !== void 0 && _deps.version) { + installedVersions.add(deps[`${depName}@${range}`].version); + installedDepVersionsCache.set(`${project.name}#${depName}`, deps[`${depName}@${range}`].version); + } else { + _log.log.warning(`Failed to find the installed version for ${depName}@${range}`); + // If we cannot read any one of the installed versions of a depName, there is no point in continuing with it + installedVersions.clear(); + desiredRanges.clear(); + break rangesLoop; + } + } + desiredRanges.set(range, projects); + } - const duplicateRanges = Array.from(depRanges.entries()).filter(([, ranges]) => ranges.length > 1).reduce((acc, [dep, ranges]) => [...acc, dep, ...ranges.map(({ - range, - projects - }) => ` ${range} => ${projects.map(p => p.name).join(', ')}`)], []).join('\n '); + // More than one range is used but couldn't get all the installed versions: call out violation + if (installedVersions.size === 0) { + violatingSingleVersionDepRanges.set(depName, ranges); + continue; // go to the next depRange + } - if (duplicateRanges) { + if (singleVersionResolution === SingleVersionResolution.LOOSE || + // validating with force first acts like loose + singleVersionResolution === SingleVersionResolution.FORCE) { + if (installedVersions.size === 1) { + hasIssues = true; + + /* When validating single-version loosely, ignore multiple ranges when they result in the installation of + * a single version. + */ + _log.log.info(`Ignored single version requirement for ${depName} as all installations are using v${installedVersions.values().next().value}.`); + continue; // go to the next depRange + } + + const sortedInstalledVersion = Array.from(installedVersions).sort(_semver.rcompare); + const rangePatterns = Array.from(desiredRanges.keys()); + for (const installedVersion of sortedInstalledVersion) { + if (rangePatterns.every(range => (0, _semver.satisfies)(installedVersion, range))) { + // Install the version on all projects that have this dep; keep the original range. + for (const { + range, + projects + } of ranges) { + for (const project of projects) { + // Don't bother updating anything if the desired version is already installed + if (installedDepVersionsCache.get(`${project.name}#${depName}`) === installedVersion) continue; + await project.installDependencyVersion(depName, installedVersion, depName in project.devDependencies, + // When validating single-version loosely, when a version change is needed, the range shouldn't change + range); + } + } + hasIssues = true; + const conflictingRanges = ranges.map(({ + range, + projects + }) => `${range} => ${projects.map(p => p.name).join(', ')}`).join('\n '); + _log.log.warning((0, _dedent.default)` + + [single_version_dependencies] Multiple version ranges for package "${depName}" + were found across different package.json files. A suitable version, v${installedVersion}, was + identified and installed. + + The conflicting version ranges are: + ${conflictingRanges} + `); + + // A usable version was identified so no need to check the lower versions + continue depRangesLoop; // go to the next depRange + } + } + + /* Here because a suitable version was not found. When validating single-version loosely and here, give up. + * However, don't give up when validating with force and act like brute-force! + */ + if (singleVersionResolution === SingleVersionResolution.LOOSE) { + violatingSingleVersionDepRanges.set(depName, ranges); + continue; // go to the next depRange + } + } + + if (singleVersionResolution === SingleVersionResolution.BRUTE_FORCE || + // validating with force here means we failed to get results when acting loosely + singleVersionResolution === SingleVersionResolution.FORCE) { + const sortedInstalledVersion = Array.from(installedVersions).sort(_semver.rcompare); + hasIssues = true; + const suitableVersion = sortedInstalledVersion[0]; + const suitableRange = `^${suitableVersion}`; + + // Install the version on all projects that have this dep; use the suitable range. + for (const { + projects + } of ranges) { + for (const project of projects) { + await project.installDependencyVersion(depName, suitableVersion, depName in project.devDependencies, suitableRange); + } + } + const conflictingRanges = ranges.map(({ + range, + projects + }) => `${range} => ${projects.map(p => p.name).join(', ')}`).join('\n '); + _log.log.warning((0, _dedent.default)` + + [single_version_dependencies] Multiple version ranges for package "${depName}" + were found across different package.json files. A version, v${suitableVersion}, was identified as the most recent + already installed replacement. All package.json files have been updated to indicate a dependency on \`${depName}@${suitableRange}\`. + + The conflicting version ranges are: + ${conflictingRanges} + `); + continue; // go to the next depRange + } + + // Here because validation was not loose, forced, or brute-forced; just call out the vilation. + violatingSingleVersionDepRanges.set(depName, ranges); + } + if (violatingSingleVersionDepRanges.size > 0) { + const duplicateRanges = Array.from(violatingSingleVersionDepRanges.entries()).reduce((acc, [dep, ranges]) => [...acc, dep, ...ranges.map(({ + range, + projects + }) => ` ${range} => ${projects.map(p => p.name).join(', ')}`)], []).join('\n '); _log.log.error((0, _dedent.default)` [single_version_dependencies] Multiple version ranges for the same dependency @@ -40414,14 +40958,14 @@ async function validateDependencies(osd, yarnLock) { ${duplicateRanges} `); + if (singleVersionResolution !== SingleVersionResolution.IGNORE) { + process.exit(1); + } + } - process.exit(1); - } // look for packages that have the the `opensearchDashboards.devOnly` flag in their package.json + // look for packages that have the `opensearchDashboards.devOnly` flag in their package.json // and make sure they aren't included in the production dependencies of OpenSearch Dashboards - - const devOnlyProjectsInProduction = getDevOnlyProductionDepsTree(osd, 'opensearch-dashboards'); - if (devOnlyProjectsInProduction) { _log.log.error((0, _dedent.default)` Some of the packages in the production dependency chain for OpenSearch Dashboards are @@ -40432,22 +40976,17 @@ async function validateDependencies(osd, yarnLock) { ${(0, _projects_tree.treeToString)(devOnlyProjectsInProduction).split('\n').join('\n ')} `); - process.exit(1); } - - _log.log.success('yarn.lock analysis completed without any issues'); + _log.log.success(hasIssues ? 'yarn.lock analysis completed' : 'yarn.lock analysis completed without any issues'); } - function getDevOnlyProductionDepsTree(osd, projectName) { const project = osd.getProject(projectName); const childProjectNames = [...Object.keys(project.productionDependencies).filter(name => osd.hasProject(name))]; const children = childProjectNames.map(n => getDevOnlyProductionDepsTree(osd, n)).filter(t => !!t); - if (!children.length && !project.isFlaggedAsDevOnly()) { return; } - const tree = { name: project.isFlaggedAsDevOnly() ? _chalk.default.red.bold(projectName) : projectName, children @@ -40456,7 +40995,7 @@ function getDevOnlyProductionDepsTree(osd, projectName) { } /***/ }), -/* 343 */ +/* 349 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -40467,15 +41006,10 @@ Object.defineProperty(exports, "__esModule", { }); exports.renderProjectsTree = renderProjectsTree; exports.treeToString = treeToString; - var _chalk = _interopRequireDefault(__webpack_require__(113)); - var _path = _interopRequireDefault(__webpack_require__(4)); - -var _crossPlatform = __webpack_require__(335); - +var _crossPlatform = __webpack_require__(341); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - /* * SPDX-License-Identifier: Apache-2.0 * @@ -40505,22 +41039,24 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de * specific language governing permissions and limitations * under the License. */ -const projectKey = Symbol('__project'); +const projectKey = Symbol('__project'); function renderProjectsTree(rootPath, projects) { const projectsTree = buildProjectsTree(rootPath, projects); return treeToString(createTreeStructure(projectsTree)); } +// eslint-disable-next-line @typescript-eslint/no-empty-interface + +// eslint-disable-next-line @typescript-eslint/no-empty-interface + function treeToString(tree) { return [tree.name].concat(childrenToStrings(tree.children, '')).join('\n'); } - function childrenToStrings(tree, treePrefix) { if (tree === undefined) { return []; } - let strings = []; tree.forEach((node, index) => { const isLastNode = tree.length - 1 === index; @@ -40532,22 +41068,20 @@ function childrenToStrings(tree, treePrefix) { }); return strings; } - function createTreeStructure(tree) { let name; const children = []; - for (const [dir, project] of tree.entries()) { // This is a leaf node (aka a project) if (typeof project === 'string') { name = _chalk.default.green(project); continue; - } // If there's only one project and the key indicates it's a leaf node, we + } + + // If there's only one project and the key indicates it's a leaf node, we // know that we're at a package folder that contains a package.json, so we // "inline it" so we don't get unnecessary levels, i.e. we'll just see // `foo` instead of `foo -> foo`. - - if (project.size === 1 && project.has(projectKey)) { const projectName = project.get(projectKey); children.push({ @@ -40556,10 +41090,10 @@ function createTreeStructure(tree) { }); continue; } + const subtree = createTreeStructure(project); - const subtree = createTreeStructure(project); // If the name is specified, we know there's a package at the "root" of the + // If the name is specified, we know there's a package at the "root" of the // subtree itself. - if (subtree.name !== undefined) { const projectName = subtree.name; children.push({ @@ -40567,72 +41101,60 @@ function createTreeStructure(tree) { name: dirOrProjectName(dir, projectName) }); continue; - } // Special-case whenever we have one child, so we don't get unnecessary + } + + // Special-case whenever we have one child, so we don't get unnecessary // folders in the output. E.g. instead of `foo -> bar -> baz` we get // `foo/bar/baz` instead. - - if (subtree.children && subtree.children.length === 1) { const child = subtree.children[0]; - const newName = _chalk.default.dim((0, _crossPlatform.standardize)(_path.default.join(dir.toString(), child.name), true)); - children.push({ children: child.children, name: newName }); continue; } - children.push({ children: subtree.children, name: _chalk.default.dim(dir.toString()) }); } - return { name, children }; } - function dirOrProjectName(dir, projectName) { return dir === projectName ? _chalk.default.green(dir) : (0, _chalk.default)`{dim ${dir.toString()} ({reset.green ${projectName}})}`; } - function buildProjectsTree(rootPath, projects) { const tree = new Map(); - for (const project of projects.values()) { if (rootPath === project.path) { tree.set(projectKey, project.name); } else { const relativeProjectPath = _path.default.relative(rootPath, project.path); - addProjectToTree(tree, relativeProjectPath.split(_path.default.sep), project); } } - return tree; } - function addProjectToTree(tree, pathParts, project) { if (pathParts.length === 0) { tree.set(projectKey, project.name); } else { const [currentDir, ...rest] = pathParts; - if (!tree.has(currentDir)) { tree.set(currentDir, new Map()); } - const subtree = tree.get(currentDir); addProjectToTree(subtree, rest, project); } } /***/ }), -/* 344 */ +/* 350 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -40642,19 +41164,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.CleanCommand = void 0; - -var _del = _interopRequireDefault(__webpack_require__(345)); - -var _ora = _interopRequireDefault(__webpack_require__(434)); - +var _del = _interopRequireDefault(__webpack_require__(351)); +var _ora = _interopRequireDefault(__webpack_require__(440)); var _path = __webpack_require__(4); - var _fs = __webpack_require__(131); - var _log = __webpack_require__(145); - function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - /* * SPDX-License-Identifier: Apache-2.0 * @@ -40684,13 +41199,12 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de * specific language governing permissions and limitations * under the License. */ -const CleanCommand = { + +const CleanCommand = exports.CleanCommand = { description: 'Remove the node_modules and target directories from all projects.', name: 'clean', - async run(projects) { const toDelete = []; - for (const project of projects.values()) { if (await (0, _fs.isDirectory)(project.nodeModulesLocation)) { toDelete.push({ @@ -40698,18 +41212,15 @@ const CleanCommand = { pattern: (0, _path.relative)(project.path, project.nodeModulesLocation) }); } - if (await (0, _fs.isDirectory)(project.targetLocation)) { toDelete.push({ cwd: project.path, pattern: (0, _path.relative)(project.path, project.targetLocation) }); } - const { extraPatterns } = project.getCleanConfig(); - if (extraPatterns) { toDelete.push({ cwd: project.path, @@ -40717,7 +41228,6 @@ const CleanCommand = { }); } } - if (toDelete.length === 0) { _log.log.success('Nothing to delete'); } else { @@ -40731,7 +41241,6 @@ const CleanCommand = { * patterns and does not impact the cwd check. */ const originalCwd = process.cwd(); - try { for (const { pattern, @@ -40739,11 +41248,9 @@ const CleanCommand = { } of toDelete) { process.chdir(cwd); const promise = (0, _del.default)(pattern); - if (_log.log.wouldLogLevel('info')) { _ora.default.promise(promise, (0, _path.relative)(originalCwd, (0, _path.join)(cwd, String(pattern)))); } - await promise; } } finally { @@ -40751,26 +41258,24 @@ const CleanCommand = { } } } - }; -exports.CleanCommand = CleanCommand; /***/ }), -/* 345 */ +/* 351 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; const {promisify} = __webpack_require__(112); const path = __webpack_require__(4); -const globby = __webpack_require__(346); -const isGlob = __webpack_require__(358); -const slash = __webpack_require__(425); +const globby = __webpack_require__(352); +const isGlob = __webpack_require__(364); +const slash = __webpack_require__(431); const gracefulFs = __webpack_require__(133); -const isPathCwd = __webpack_require__(427); -const isPathInside = __webpack_require__(428); -const rimraf = __webpack_require__(429); -const pMap = __webpack_require__(430); +const isPathCwd = __webpack_require__(433); +const isPathInside = __webpack_require__(434); +const rimraf = __webpack_require__(435); +const pMap = __webpack_require__(436); const rimrafP = promisify(rimraf); @@ -40902,18 +41407,18 @@ module.exports.sync = (patterns, {force, dryRun, cwd = process.cwd(), ...options /***/ }), -/* 346 */ +/* 352 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; const fs = __webpack_require__(134); -const arrayUnion = __webpack_require__(347); -const merge2 = __webpack_require__(348); -const fastGlob = __webpack_require__(349); -const dirGlob = __webpack_require__(421); -const gitignore = __webpack_require__(423); -const {FilterStream, UniqueStream} = __webpack_require__(426); +const arrayUnion = __webpack_require__(353); +const merge2 = __webpack_require__(354); +const fastGlob = __webpack_require__(355); +const dirGlob = __webpack_require__(427); +const gitignore = __webpack_require__(429); +const {FilterStream, UniqueStream} = __webpack_require__(432); const DEFAULT_FILTER = () => false; @@ -41090,7 +41595,7 @@ module.exports.gitignore = gitignore; /***/ }), -/* 347 */ +/* 353 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -41102,7 +41607,7 @@ module.exports = (...arguments_) => { /***/ }), -/* 348 */ +/* 354 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -41253,18 +41758,18 @@ function pauseStreams (streams, options) { /***/ }), -/* 349 */ +/* 355 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const taskManager = __webpack_require__(350); -const patternManager = __webpack_require__(379); -const async_1 = __webpack_require__(380); -const stream_1 = __webpack_require__(417); -const sync_1 = __webpack_require__(418); -const settings_1 = __webpack_require__(420); -const utils = __webpack_require__(351); +const taskManager = __webpack_require__(356); +const patternManager = __webpack_require__(385); +const async_1 = __webpack_require__(386); +const stream_1 = __webpack_require__(423); +const sync_1 = __webpack_require__(424); +const settings_1 = __webpack_require__(426); +const utils = __webpack_require__(357); async function FastGlob(source, options) { assertPatternsInput(source); const works = getWorks(source, async_1.default, options); @@ -41328,14 +41833,14 @@ module.exports = FastGlob; /***/ }), -/* 350 */ +/* 356 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.convertPatternGroupToTask = exports.convertPatternGroupsToTasks = exports.groupPatternsByBaseDirectory = exports.getNegativePatternsAsPositive = exports.getPositivePatterns = exports.convertPatternsToTasks = exports.generate = void 0; -const utils = __webpack_require__(351); +const utils = __webpack_require__(357); function generate(patterns, settings) { const positivePatterns = getPositivePatterns(patterns); const negativePatterns = getNegativePatternsAsPositive(patterns, settings.ignore); @@ -41415,31 +41920,31 @@ exports.convertPatternGroupToTask = convertPatternGroupToTask; /***/ }), -/* 351 */ +/* 357 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.string = exports.stream = exports.pattern = exports.path = exports.fs = exports.errno = exports.array = void 0; -const array = __webpack_require__(352); +const array = __webpack_require__(358); exports.array = array; -const errno = __webpack_require__(353); +const errno = __webpack_require__(359); exports.errno = errno; -const fs = __webpack_require__(354); +const fs = __webpack_require__(360); exports.fs = fs; -const path = __webpack_require__(355); +const path = __webpack_require__(361); exports.path = path; -const pattern = __webpack_require__(356); +const pattern = __webpack_require__(362); exports.pattern = pattern; -const stream = __webpack_require__(377); +const stream = __webpack_require__(383); exports.stream = stream; -const string = __webpack_require__(378); +const string = __webpack_require__(384); exports.string = string; /***/ }), -/* 352 */ +/* 358 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -41468,7 +41973,7 @@ exports.splitWhen = splitWhen; /***/ }), -/* 353 */ +/* 359 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -41482,7 +41987,7 @@ exports.isEnoentCodeError = isEnoentCodeError; /***/ }), -/* 354 */ +/* 360 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -41508,7 +42013,7 @@ exports.createDirentFromStats = createDirentFromStats; /***/ }), -/* 355 */ +/* 361 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -41548,7 +42053,7 @@ exports.removeLeadingDotSegment = removeLeadingDotSegment; /***/ }), -/* 356 */ +/* 362 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -41556,8 +42061,8 @@ exports.removeLeadingDotSegment = removeLeadingDotSegment; Object.defineProperty(exports, "__esModule", { value: true }); exports.matchAny = exports.convertPatternsToRe = exports.makeRe = exports.getPatternParts = exports.expandBraceExpansion = exports.expandPatternsWithBraceExpansion = exports.isAffectDepthOfReadingPattern = exports.endsWithSlashGlobStar = exports.hasGlobStar = exports.getBaseDirectory = exports.isPatternRelatedToParentDirectory = exports.getPatternsOutsideCurrentDirectory = exports.getPatternsInsideCurrentDirectory = exports.getPositivePatterns = exports.getNegativePatterns = exports.isPositivePattern = exports.isNegativePattern = exports.convertToNegativePattern = exports.convertToPositivePattern = exports.isDynamicPattern = exports.isStaticPattern = void 0; const path = __webpack_require__(4); -const globParent = __webpack_require__(357); -const micromatch = __webpack_require__(360); +const globParent = __webpack_require__(363); +const micromatch = __webpack_require__(366); const GLOBSTAR = '**'; const ESCAPE_SYMBOL = '\\'; const COMMON_GLOB_SYMBOLS_RE = /[*?]|^!/; @@ -41724,13 +42229,13 @@ exports.matchAny = matchAny; /***/ }), -/* 357 */ +/* 363 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var isGlob = __webpack_require__(358); +var isGlob = __webpack_require__(364); var pathPosixDirname = __webpack_require__(4).posix.dirname; var isWin32 = __webpack_require__(121).platform() === 'win32'; @@ -41806,7 +42311,7 @@ function isGlobby(str) { /***/ }), -/* 358 */ +/* 364 */ /***/ (function(module, exports, __webpack_require__) { /*! @@ -41816,7 +42321,7 @@ function isGlobby(str) { * Released under the MIT License. */ -var isExtglob = __webpack_require__(359); +var isExtglob = __webpack_require__(365); var chars = { '{': '}', '(': ')', '[': ']'}; var strictCheck = function(str) { if (str[0] === '!') { @@ -41962,7 +42467,7 @@ module.exports = function isGlob(str, options) { /***/ }), -/* 359 */ +/* 365 */ /***/ (function(module, exports) { /*! @@ -41988,16 +42493,16 @@ module.exports = function isExtglob(str) { /***/ }), -/* 360 */ +/* 366 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; const util = __webpack_require__(112); -const braces = __webpack_require__(361); -const picomatch = __webpack_require__(371); -const utils = __webpack_require__(374); +const braces = __webpack_require__(367); +const picomatch = __webpack_require__(377); +const utils = __webpack_require__(380); const isEmptyString = val => val === '' || val === './'; /** @@ -42462,16 +42967,16 @@ module.exports = micromatch; /***/ }), -/* 361 */ +/* 367 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const stringify = __webpack_require__(362); -const compile = __webpack_require__(364); -const expand = __webpack_require__(368); -const parse = __webpack_require__(369); +const stringify = __webpack_require__(368); +const compile = __webpack_require__(370); +const expand = __webpack_require__(374); +const parse = __webpack_require__(375); /** * Expand the given pattern or create a regex-compatible string. @@ -42639,13 +43144,13 @@ module.exports = braces; /***/ }), -/* 362 */ +/* 368 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const utils = __webpack_require__(363); +const utils = __webpack_require__(369); module.exports = (ast, options = {}) => { let stringify = (node, parent = {}) => { @@ -42678,7 +43183,7 @@ module.exports = (ast, options = {}) => { /***/ }), -/* 363 */ +/* 369 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -42797,14 +43302,14 @@ exports.flatten = (...args) => { /***/ }), -/* 364 */ +/* 370 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const fill = __webpack_require__(365); -const utils = __webpack_require__(363); +const fill = __webpack_require__(371); +const utils = __webpack_require__(369); const compile = (ast, options = {}) => { let walk = (node, parent = {}) => { @@ -42861,7 +43366,7 @@ module.exports = compile; /***/ }), -/* 365 */ +/* 371 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -42875,7 +43380,7 @@ module.exports = compile; const util = __webpack_require__(112); -const toRegexRange = __webpack_require__(366); +const toRegexRange = __webpack_require__(372); const isObject = val => val !== null && typeof val === 'object' && !Array.isArray(val); @@ -43117,7 +43622,7 @@ module.exports = fill; /***/ }), -/* 366 */ +/* 372 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -43130,7 +43635,7 @@ module.exports = fill; -const isNumber = __webpack_require__(367); +const isNumber = __webpack_require__(373); const toRegexRange = (min, max, options) => { if (isNumber(min) === false) { @@ -43412,7 +43917,7 @@ module.exports = toRegexRange; /***/ }), -/* 367 */ +/* 373 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -43437,15 +43942,15 @@ module.exports = function(num) { /***/ }), -/* 368 */ +/* 374 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const fill = __webpack_require__(365); -const stringify = __webpack_require__(362); -const utils = __webpack_require__(363); +const fill = __webpack_require__(371); +const stringify = __webpack_require__(368); +const utils = __webpack_require__(369); const append = (queue = '', stash = '', enclose = false) => { let result = []; @@ -43557,13 +44062,13 @@ module.exports = expand; /***/ }), -/* 369 */ +/* 375 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const stringify = __webpack_require__(362); +const stringify = __webpack_require__(368); /** * Constants @@ -43585,7 +44090,7 @@ const { CHAR_SINGLE_QUOTE, /* ' */ CHAR_NO_BREAK_SPACE, CHAR_ZERO_WIDTH_NOBREAK_SPACE -} = __webpack_require__(370); +} = __webpack_require__(376); /** * parse @@ -43897,7 +44402,7 @@ module.exports = parse; /***/ }), -/* 370 */ +/* 376 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -43961,27 +44466,27 @@ module.exports = { /***/ }), -/* 371 */ +/* 377 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -module.exports = __webpack_require__(372); +module.exports = __webpack_require__(378); /***/ }), -/* 372 */ +/* 378 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; const path = __webpack_require__(4); -const scan = __webpack_require__(373); -const parse = __webpack_require__(376); -const utils = __webpack_require__(374); -const constants = __webpack_require__(375); +const scan = __webpack_require__(379); +const parse = __webpack_require__(382); +const utils = __webpack_require__(380); +const constants = __webpack_require__(381); const isObject = val => val && typeof val === 'object' && !Array.isArray(val); /** @@ -44320,13 +44825,13 @@ module.exports = picomatch; /***/ }), -/* 373 */ +/* 379 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const utils = __webpack_require__(374); +const utils = __webpack_require__(380); const { CHAR_ASTERISK, /* * */ CHAR_AT, /* @ */ @@ -44343,7 +44848,7 @@ const { CHAR_RIGHT_CURLY_BRACE, /* } */ CHAR_RIGHT_PARENTHESES, /* ) */ CHAR_RIGHT_SQUARE_BRACKET /* ] */ -} = __webpack_require__(375); +} = __webpack_require__(381); const isPathSeparator = code => { return code === CHAR_FORWARD_SLASH || code === CHAR_BACKWARD_SLASH; @@ -44718,7 +45223,7 @@ module.exports = scan; /***/ }), -/* 374 */ +/* 380 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -44731,7 +45236,7 @@ const { REGEX_REMOVE_BACKSLASH, REGEX_SPECIAL_CHARS, REGEX_SPECIAL_CHARS_GLOBAL -} = __webpack_require__(375); +} = __webpack_require__(381); exports.isObject = val => val !== null && typeof val === 'object' && !Array.isArray(val); exports.hasRegexChars = str => REGEX_SPECIAL_CHARS.test(str); @@ -44789,7 +45294,7 @@ exports.wrapOutput = (input, state = {}, options = {}) => { /***/ }), -/* 375 */ +/* 381 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -44975,14 +45480,14 @@ module.exports = { /***/ }), -/* 376 */ +/* 382 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const constants = __webpack_require__(375); -const utils = __webpack_require__(374); +const constants = __webpack_require__(381); +const utils = __webpack_require__(380); /** * Constants @@ -46073,14 +46578,14 @@ module.exports = parse; /***/ }), -/* 377 */ +/* 383 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.merge = void 0; -const merge2 = __webpack_require__(348); +const merge2 = __webpack_require__(354); function merge(streams) { const mergedStream = merge2(streams); streams.forEach((stream) => { @@ -46097,7 +46602,7 @@ function propagateCloseEventToSources(streams) { /***/ }), -/* 378 */ +/* 384 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -46115,7 +46620,7 @@ exports.isEmpty = isEmpty; /***/ }), -/* 379 */ +/* 385 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -46143,14 +46648,14 @@ exports.removeDuplicateSlashes = removeDuplicateSlashes; /***/ }), -/* 380 */ +/* 386 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -const stream_1 = __webpack_require__(381); -const provider_1 = __webpack_require__(410); +const stream_1 = __webpack_require__(387); +const provider_1 = __webpack_require__(416); class ProviderAsync extends provider_1.default { constructor() { super(...arguments); @@ -46178,16 +46683,16 @@ exports.default = ProviderAsync; /***/ }), -/* 381 */ +/* 387 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const stream_1 = __webpack_require__(138); -const fsStat = __webpack_require__(382); -const fsWalk = __webpack_require__(387); -const reader_1 = __webpack_require__(409); +const fsStat = __webpack_require__(388); +const fsWalk = __webpack_require__(393); +const reader_1 = __webpack_require__(415); class ReaderStream extends reader_1.default { constructor() { super(...arguments); @@ -46240,16 +46745,16 @@ exports.default = ReaderStream; /***/ }), -/* 382 */ +/* 388 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.statSync = exports.stat = exports.Settings = void 0; -const async = __webpack_require__(383); -const sync = __webpack_require__(384); -const settings_1 = __webpack_require__(385); +const async = __webpack_require__(389); +const sync = __webpack_require__(390); +const settings_1 = __webpack_require__(391); exports.Settings = settings_1.default; function stat(path, optionsOrSettingsOrCallback, callback) { if (typeof optionsOrSettingsOrCallback === 'function') { @@ -46273,7 +46778,7 @@ function getSettings(settingsOrOptions = {}) { /***/ }), -/* 383 */ +/* 389 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -46316,7 +46821,7 @@ function callSuccessCallback(callback, result) { /***/ }), -/* 384 */ +/* 390 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -46346,13 +46851,13 @@ exports.read = read; /***/ }), -/* 385 */ +/* 391 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -const fs = __webpack_require__(386); +const fs = __webpack_require__(392); class Settings { constructor(_options = {}) { this._options = _options; @@ -46369,7 +46874,7 @@ exports.default = Settings; /***/ }), -/* 386 */ +/* 392 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -46393,17 +46898,17 @@ exports.createFileSystemAdapter = createFileSystemAdapter; /***/ }), -/* 387 */ +/* 393 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.Settings = exports.walkStream = exports.walkSync = exports.walk = void 0; -const async_1 = __webpack_require__(388); -const stream_1 = __webpack_require__(405); -const sync_1 = __webpack_require__(406); -const settings_1 = __webpack_require__(408); +const async_1 = __webpack_require__(394); +const stream_1 = __webpack_require__(411); +const sync_1 = __webpack_require__(412); +const settings_1 = __webpack_require__(414); exports.Settings = settings_1.default; function walk(directory, optionsOrSettingsOrCallback, callback) { if (typeof optionsOrSettingsOrCallback === 'function') { @@ -46434,13 +46939,13 @@ function getSettings(settingsOrOptions = {}) { /***/ }), -/* 388 */ +/* 394 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -const async_1 = __webpack_require__(389); +const async_1 = __webpack_require__(395); class AsyncProvider { constructor(_root, _settings) { this._root = _root; @@ -46471,17 +46976,17 @@ function callSuccessCallback(callback, entries) { /***/ }), -/* 389 */ +/* 395 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const events_1 = __webpack_require__(157); -const fsScandir = __webpack_require__(390); -const fastq = __webpack_require__(401); -const common = __webpack_require__(403); -const reader_1 = __webpack_require__(404); +const fsScandir = __webpack_require__(396); +const fastq = __webpack_require__(407); +const common = __webpack_require__(409); +const reader_1 = __webpack_require__(410); class AsyncReader extends reader_1.default { constructor(_root, _settings) { super(_root, _settings); @@ -46575,16 +47080,16 @@ exports.default = AsyncReader; /***/ }), -/* 390 */ +/* 396 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.Settings = exports.scandirSync = exports.scandir = void 0; -const async = __webpack_require__(391); -const sync = __webpack_require__(398); -const settings_1 = __webpack_require__(399); +const async = __webpack_require__(397); +const sync = __webpack_require__(404); +const settings_1 = __webpack_require__(405); exports.Settings = settings_1.default; function scandir(path, optionsOrSettingsOrCallback, callback) { if (typeof optionsOrSettingsOrCallback === 'function') { @@ -46608,18 +47113,18 @@ function getSettings(settingsOrOptions = {}) { /***/ }), -/* 391 */ +/* 397 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.readdir = exports.readdirWithFileTypes = exports.read = void 0; -const fsStat = __webpack_require__(382); -const rpl = __webpack_require__(392); -const constants_1 = __webpack_require__(394); -const utils = __webpack_require__(395); -const common = __webpack_require__(397); +const fsStat = __webpack_require__(388); +const rpl = __webpack_require__(398); +const constants_1 = __webpack_require__(400); +const utils = __webpack_require__(401); +const common = __webpack_require__(403); function read(directory, settings, callback) { if (!settings.stats && constants_1.IS_SUPPORT_READDIR_WITH_FILE_TYPES) { readdirWithFileTypes(directory, settings, callback); @@ -46719,13 +47224,13 @@ function callSuccessCallback(callback, result) { /***/ }), -/* 392 */ +/* 398 */ /***/ (function(module, exports, __webpack_require__) { /*! run-parallel. MIT License. Feross Aboukhadijeh */ module.exports = runParallel -const queueMicrotask = __webpack_require__(393) +const queueMicrotask = __webpack_require__(399) function runParallel (tasks, cb) { let results, pending, keys @@ -46776,7 +47281,7 @@ function runParallel (tasks, cb) { /***/ }), -/* 393 */ +/* 399 */ /***/ (function(module, exports) { /*! queue-microtask. MIT License. Feross Aboukhadijeh */ @@ -46791,7 +47296,7 @@ module.exports = typeof queueMicrotask === 'function' /***/ }), -/* 394 */ +/* 400 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -46815,19 +47320,19 @@ exports.IS_SUPPORT_READDIR_WITH_FILE_TYPES = IS_MATCHED_BY_MAJOR || IS_MATCHED_B /***/ }), -/* 395 */ +/* 401 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.fs = void 0; -const fs = __webpack_require__(396); +const fs = __webpack_require__(402); exports.fs = fs; /***/ }), -/* 396 */ +/* 402 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -46853,7 +47358,7 @@ exports.createDirentFromStats = createDirentFromStats; /***/ }), -/* 397 */ +/* 403 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -46873,17 +47378,17 @@ exports.joinPathSegments = joinPathSegments; /***/ }), -/* 398 */ +/* 404 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.readdir = exports.readdirWithFileTypes = exports.read = void 0; -const fsStat = __webpack_require__(382); -const constants_1 = __webpack_require__(394); -const utils = __webpack_require__(395); -const common = __webpack_require__(397); +const fsStat = __webpack_require__(388); +const constants_1 = __webpack_require__(400); +const utils = __webpack_require__(401); +const common = __webpack_require__(403); function read(directory, settings) { if (!settings.stats && constants_1.IS_SUPPORT_READDIR_WITH_FILE_TYPES) { return readdirWithFileTypes(directory, settings); @@ -46934,15 +47439,15 @@ exports.readdir = readdir; /***/ }), -/* 399 */ +/* 405 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const path = __webpack_require__(4); -const fsStat = __webpack_require__(382); -const fs = __webpack_require__(400); +const fsStat = __webpack_require__(388); +const fs = __webpack_require__(406); class Settings { constructor(_options = {}) { this._options = _options; @@ -46965,7 +47470,7 @@ exports.default = Settings; /***/ }), -/* 400 */ +/* 406 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -46991,7 +47496,7 @@ exports.createFileSystemAdapter = createFileSystemAdapter; /***/ }), -/* 401 */ +/* 407 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -46999,7 +47504,7 @@ exports.createFileSystemAdapter = createFileSystemAdapter; /* eslint-disable no-var */ -var reusify = __webpack_require__(402) +var reusify = __webpack_require__(408) function fastqueue (context, worker, concurrency) { if (typeof context === 'function') { @@ -47281,7 +47786,7 @@ module.exports.promise = queueAsPromised /***/ }), -/* 402 */ +/* 408 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -47321,7 +47826,7 @@ module.exports = reusify /***/ }), -/* 403 */ +/* 409 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -47359,13 +47864,13 @@ exports.joinPathSegments = joinPathSegments; /***/ }), -/* 404 */ +/* 410 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -const common = __webpack_require__(403); +const common = __webpack_require__(409); class Reader { constructor(_root, _settings) { this._root = _root; @@ -47377,14 +47882,14 @@ exports.default = Reader; /***/ }), -/* 405 */ +/* 411 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const stream_1 = __webpack_require__(138); -const async_1 = __webpack_require__(389); +const async_1 = __webpack_require__(395); class StreamProvider { constructor(_root, _settings) { this._root = _root; @@ -47418,13 +47923,13 @@ exports.default = StreamProvider; /***/ }), -/* 406 */ +/* 412 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -const sync_1 = __webpack_require__(407); +const sync_1 = __webpack_require__(413); class SyncProvider { constructor(_root, _settings) { this._root = _root; @@ -47439,15 +47944,15 @@ exports.default = SyncProvider; /***/ }), -/* 407 */ +/* 413 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -const fsScandir = __webpack_require__(390); -const common = __webpack_require__(403); -const reader_1 = __webpack_require__(404); +const fsScandir = __webpack_require__(396); +const common = __webpack_require__(409); +const reader_1 = __webpack_require__(410); class SyncReader extends reader_1.default { constructor() { super(...arguments); @@ -47505,14 +48010,14 @@ exports.default = SyncReader; /***/ }), -/* 408 */ +/* 414 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const path = __webpack_require__(4); -const fsScandir = __webpack_require__(390); +const fsScandir = __webpack_require__(396); class Settings { constructor(_options = {}) { this._options = _options; @@ -47538,15 +48043,15 @@ exports.default = Settings; /***/ }), -/* 409 */ +/* 415 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const path = __webpack_require__(4); -const fsStat = __webpack_require__(382); -const utils = __webpack_require__(351); +const fsStat = __webpack_require__(388); +const utils = __webpack_require__(357); class Reader { constructor(_settings) { this._settings = _settings; @@ -47578,17 +48083,17 @@ exports.default = Reader; /***/ }), -/* 410 */ +/* 416 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const path = __webpack_require__(4); -const deep_1 = __webpack_require__(411); -const entry_1 = __webpack_require__(414); -const error_1 = __webpack_require__(415); -const entry_2 = __webpack_require__(416); +const deep_1 = __webpack_require__(417); +const entry_1 = __webpack_require__(420); +const error_1 = __webpack_require__(421); +const entry_2 = __webpack_require__(422); class Provider { constructor(_settings) { this._settings = _settings; @@ -47633,14 +48138,14 @@ exports.default = Provider; /***/ }), -/* 411 */ +/* 417 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -const utils = __webpack_require__(351); -const partial_1 = __webpack_require__(412); +const utils = __webpack_require__(357); +const partial_1 = __webpack_require__(418); class DeepFilter { constructor(_settings, _micromatchOptions) { this._settings = _settings; @@ -47702,13 +48207,13 @@ exports.default = DeepFilter; /***/ }), -/* 412 */ +/* 418 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -const matcher_1 = __webpack_require__(413); +const matcher_1 = __webpack_require__(419); class PartialMatcher extends matcher_1.default { match(filepath) { const parts = filepath.split('/'); @@ -47747,13 +48252,13 @@ exports.default = PartialMatcher; /***/ }), -/* 413 */ +/* 419 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -const utils = __webpack_require__(351); +const utils = __webpack_require__(357); class Matcher { constructor(_patterns, _settings, _micromatchOptions) { this._patterns = _patterns; @@ -47804,13 +48309,13 @@ exports.default = Matcher; /***/ }), -/* 414 */ +/* 420 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -const utils = __webpack_require__(351); +const utils = __webpack_require__(357); class EntryFilter { constructor(_settings, _micromatchOptions) { this._settings = _settings; @@ -47871,13 +48376,13 @@ exports.default = EntryFilter; /***/ }), -/* 415 */ +/* 421 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -const utils = __webpack_require__(351); +const utils = __webpack_require__(357); class ErrorFilter { constructor(_settings) { this._settings = _settings; @@ -47893,13 +48398,13 @@ exports.default = ErrorFilter; /***/ }), -/* 416 */ +/* 422 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -const utils = __webpack_require__(351); +const utils = __webpack_require__(357); class EntryTransformer { constructor(_settings) { this._settings = _settings; @@ -47926,15 +48431,15 @@ exports.default = EntryTransformer; /***/ }), -/* 417 */ +/* 423 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const stream_1 = __webpack_require__(138); -const stream_2 = __webpack_require__(381); -const provider_1 = __webpack_require__(410); +const stream_2 = __webpack_require__(387); +const provider_1 = __webpack_require__(416); class ProviderStream extends provider_1.default { constructor() { super(...arguments); @@ -47964,14 +48469,14 @@ exports.default = ProviderStream; /***/ }), -/* 418 */ +/* 424 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -const sync_1 = __webpack_require__(419); -const provider_1 = __webpack_require__(410); +const sync_1 = __webpack_require__(425); +const provider_1 = __webpack_require__(416); class ProviderSync extends provider_1.default { constructor() { super(...arguments); @@ -47994,15 +48499,15 @@ exports.default = ProviderSync; /***/ }), -/* 419 */ +/* 425 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -const fsStat = __webpack_require__(382); -const fsWalk = __webpack_require__(387); -const reader_1 = __webpack_require__(409); +const fsStat = __webpack_require__(388); +const fsWalk = __webpack_require__(393); +const reader_1 = __webpack_require__(415); class ReaderSync extends reader_1.default { constructor() { super(...arguments); @@ -48044,7 +48549,7 @@ exports.default = ReaderSync; /***/ }), -/* 420 */ +/* 426 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -48108,13 +48613,13 @@ exports.default = Settings; /***/ }), -/* 421 */ +/* 427 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; const path = __webpack_require__(4); -const pathType = __webpack_require__(422); +const pathType = __webpack_require__(428); const getExtensions = extensions => extensions.length > 1 ? `{${extensions.join(',')}}` : extensions[0]; @@ -48190,7 +48695,7 @@ module.exports.sync = (input, options) => { /***/ }), -/* 422 */ +/* 428 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -48240,7 +48745,7 @@ exports.isSymlinkSync = isTypeSync.bind(null, 'lstatSync', 'isSymbolicLink'); /***/ }), -/* 423 */ +/* 429 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -48248,9 +48753,9 @@ exports.isSymlinkSync = isTypeSync.bind(null, 'lstatSync', 'isSymbolicLink'); const {promisify} = __webpack_require__(112); const fs = __webpack_require__(134); const path = __webpack_require__(4); -const fastGlob = __webpack_require__(349); -const gitIgnore = __webpack_require__(424); -const slash = __webpack_require__(425); +const fastGlob = __webpack_require__(355); +const gitIgnore = __webpack_require__(430); +const slash = __webpack_require__(431); const DEFAULT_IGNORE = [ '**/node_modules/**', @@ -48367,7 +48872,7 @@ module.exports.sync = options => { /***/ }), -/* 424 */ +/* 430 */ /***/ (function(module, exports) { // A simple implementation of make-array @@ -48976,7 +49481,7 @@ if ( /***/ }), -/* 425 */ +/* 431 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -48994,7 +49499,7 @@ module.exports = path => { /***/ }), -/* 426 */ +/* 432 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -49047,7 +49552,7 @@ module.exports = { /***/ }), -/* 427 */ +/* 433 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -49069,7 +49574,7 @@ module.exports = path_ => { /***/ }), -/* 428 */ +/* 434 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -49088,7 +49593,7 @@ module.exports = (childPath, parentPath) => { /***/ }), -/* 429 */ +/* 435 */ /***/ (function(module, exports, __webpack_require__) { const assert = __webpack_require__(140) @@ -49454,12 +49959,12 @@ rimraf.sync = rimrafSync /***/ }), -/* 430 */ +/* 436 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const AggregateError = __webpack_require__(431); +const AggregateError = __webpack_require__(437); module.exports = async ( iterable, @@ -49542,13 +50047,13 @@ module.exports = async ( /***/ }), -/* 431 */ +/* 437 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const indentString = __webpack_require__(432); -const cleanStack = __webpack_require__(433); +const indentString = __webpack_require__(438); +const cleanStack = __webpack_require__(439); const cleanInternalStack = stack => stack.replace(/\s+at .*aggregate-error\/index.js:\d+:\d+\)?/g, ''); @@ -49596,7 +50101,7 @@ module.exports = AggregateError; /***/ }), -/* 432 */ +/* 438 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -49638,7 +50143,7 @@ module.exports = (string, count = 1, options) => { /***/ }), -/* 433 */ +/* 439 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -49685,20 +50190,20 @@ module.exports = (stack, options) => { /***/ }), -/* 434 */ +/* 440 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const readline = __webpack_require__(435); -const chalk = __webpack_require__(436); -const cliCursor = __webpack_require__(439); -const cliSpinners = __webpack_require__(441); -const logSymbols = __webpack_require__(443); -const stripAnsi = __webpack_require__(449); -const wcwidth = __webpack_require__(451); -const isInteractive = __webpack_require__(455); -const MuteStream = __webpack_require__(456); +const readline = __webpack_require__(288); +const chalk = __webpack_require__(441); +const cliCursor = __webpack_require__(444); +const cliSpinners = __webpack_require__(446); +const logSymbols = __webpack_require__(448); +const stripAnsi = __webpack_require__(454); +const wcwidth = __webpack_require__(456); +const isInteractive = __webpack_require__(460); +const MuteStream = __webpack_require__(461); const TEXT = Symbol('text'); const PREFIX_TEXT = Symbol('prefixText'); @@ -50051,13 +50556,7 @@ module.exports.promise = (action, options) => { /***/ }), -/* 435 */ -/***/ (function(module, exports) { - -module.exports = require("readline"); - -/***/ }), -/* 436 */ +/* 441 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -50067,7 +50566,7 @@ const {stdout: stdoutColor, stderr: stderrColor} = __webpack_require__(120); const { stringReplaceAll, stringEncaseCRLFWithFirstIndex -} = __webpack_require__(437); +} = __webpack_require__(442); // `supportsColor.level` → `ansiStyles.color[name]` mapping const levelMapping = [ @@ -50268,7 +50767,7 @@ const chalkTag = (chalk, ...strings) => { } if (template === undefined) { - template = __webpack_require__(438); + template = __webpack_require__(443); } return template(chalk, parts.join('')); @@ -50297,7 +50796,7 @@ module.exports = chalk; /***/ }), -/* 437 */ +/* 442 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -50343,7 +50842,7 @@ module.exports = { /***/ }), -/* 438 */ +/* 443 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -50484,12 +50983,12 @@ module.exports = (chalk, temporary) => { /***/ }), -/* 439 */ +/* 444 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const restoreCursor = __webpack_require__(440); +const restoreCursor = __webpack_require__(445); let isHidden = false; @@ -50526,13 +51025,13 @@ exports.toggle = (force, writableStream) => { /***/ }), -/* 440 */ +/* 445 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const onetime = __webpack_require__(301); -const signalExit = __webpack_require__(274); +const onetime = __webpack_require__(307); +const signalExit = __webpack_require__(279); module.exports = onetime(() => { signalExit(() => { @@ -50542,13 +51041,13 @@ module.exports = onetime(() => { /***/ }), -/* 441 */ +/* 446 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const spinners = Object.assign({}, __webpack_require__(442)); // eslint-disable-line import/extensions +const spinners = Object.assign({}, __webpack_require__(447)); // eslint-disable-line import/extensions const spinnersList = Object.keys(spinners); @@ -50564,18 +51063,18 @@ module.exports = spinners; /***/ }), -/* 442 */ +/* 447 */ /***/ (function(module) { module.exports = JSON.parse("{\"dots\":{\"interval\":80,\"frames\":[\"⠋\",\"⠙\",\"⠹\",\"⠸\",\"⠼\",\"⠴\",\"⠦\",\"⠧\",\"⠇\",\"⠏\"]},\"dots2\":{\"interval\":80,\"frames\":[\"⣾\",\"⣽\",\"⣻\",\"⢿\",\"⡿\",\"⣟\",\"⣯\",\"⣷\"]},\"dots3\":{\"interval\":80,\"frames\":[\"⠋\",\"⠙\",\"⠚\",\"⠞\",\"⠖\",\"⠦\",\"⠴\",\"⠲\",\"⠳\",\"⠓\"]},\"dots4\":{\"interval\":80,\"frames\":[\"⠄\",\"⠆\",\"⠇\",\"⠋\",\"⠙\",\"⠸\",\"⠰\",\"⠠\",\"⠰\",\"⠸\",\"⠙\",\"⠋\",\"⠇\",\"⠆\"]},\"dots5\":{\"interval\":80,\"frames\":[\"⠋\",\"⠙\",\"⠚\",\"⠒\",\"⠂\",\"⠂\",\"⠒\",\"⠲\",\"⠴\",\"⠦\",\"⠖\",\"⠒\",\"⠐\",\"⠐\",\"⠒\",\"⠓\",\"⠋\"]},\"dots6\":{\"interval\":80,\"frames\":[\"⠁\",\"⠉\",\"⠙\",\"⠚\",\"⠒\",\"⠂\",\"⠂\",\"⠒\",\"⠲\",\"⠴\",\"⠤\",\"⠄\",\"⠄\",\"⠤\",\"⠴\",\"⠲\",\"⠒\",\"⠂\",\"⠂\",\"⠒\",\"⠚\",\"⠙\",\"⠉\",\"⠁\"]},\"dots7\":{\"interval\":80,\"frames\":[\"⠈\",\"⠉\",\"⠋\",\"⠓\",\"⠒\",\"⠐\",\"⠐\",\"⠒\",\"⠖\",\"⠦\",\"⠤\",\"⠠\",\"⠠\",\"⠤\",\"⠦\",\"⠖\",\"⠒\",\"⠐\",\"⠐\",\"⠒\",\"⠓\",\"⠋\",\"⠉\",\"⠈\"]},\"dots8\":{\"interval\":80,\"frames\":[\"⠁\",\"⠁\",\"⠉\",\"⠙\",\"⠚\",\"⠒\",\"⠂\",\"⠂\",\"⠒\",\"⠲\",\"⠴\",\"⠤\",\"⠄\",\"⠄\",\"⠤\",\"⠠\",\"⠠\",\"⠤\",\"⠦\",\"⠖\",\"⠒\",\"⠐\",\"⠐\",\"⠒\",\"⠓\",\"⠋\",\"⠉\",\"⠈\",\"⠈\"]},\"dots9\":{\"interval\":80,\"frames\":[\"⢹\",\"⢺\",\"⢼\",\"⣸\",\"⣇\",\"⡧\",\"⡗\",\"⡏\"]},\"dots10\":{\"interval\":80,\"frames\":[\"⢄\",\"⢂\",\"⢁\",\"⡁\",\"⡈\",\"⡐\",\"⡠\"]},\"dots11\":{\"interval\":100,\"frames\":[\"⠁\",\"⠂\",\"⠄\",\"⡀\",\"⢀\",\"⠠\",\"⠐\",\"⠈\"]},\"dots12\":{\"interval\":80,\"frames\":[\"⢀⠀\",\"⡀⠀\",\"⠄⠀\",\"⢂⠀\",\"⡂⠀\",\"⠅⠀\",\"⢃⠀\",\"⡃⠀\",\"⠍⠀\",\"⢋⠀\",\"⡋⠀\",\"⠍⠁\",\"⢋⠁\",\"⡋⠁\",\"⠍⠉\",\"⠋⠉\",\"⠋⠉\",\"⠉⠙\",\"⠉⠙\",\"⠉⠩\",\"⠈⢙\",\"⠈⡙\",\"⢈⠩\",\"⡀⢙\",\"⠄⡙\",\"⢂⠩\",\"⡂⢘\",\"⠅⡘\",\"⢃⠨\",\"⡃⢐\",\"⠍⡐\",\"⢋⠠\",\"⡋⢀\",\"⠍⡁\",\"⢋⠁\",\"⡋⠁\",\"⠍⠉\",\"⠋⠉\",\"⠋⠉\",\"⠉⠙\",\"⠉⠙\",\"⠉⠩\",\"⠈⢙\",\"⠈⡙\",\"⠈⠩\",\"⠀⢙\",\"⠀⡙\",\"⠀⠩\",\"⠀⢘\",\"⠀⡘\",\"⠀⠨\",\"⠀⢐\",\"⠀⡐\",\"⠀⠠\",\"⠀⢀\",\"⠀⡀\"]},\"dots8Bit\":{\"interval\":80,\"frames\":[\"⠀\",\"⠁\",\"⠂\",\"⠃\",\"⠄\",\"⠅\",\"⠆\",\"⠇\",\"⡀\",\"⡁\",\"⡂\",\"⡃\",\"⡄\",\"⡅\",\"⡆\",\"⡇\",\"⠈\",\"⠉\",\"⠊\",\"⠋\",\"⠌\",\"⠍\",\"⠎\",\"⠏\",\"⡈\",\"⡉\",\"⡊\",\"⡋\",\"⡌\",\"⡍\",\"⡎\",\"⡏\",\"⠐\",\"⠑\",\"⠒\",\"⠓\",\"⠔\",\"⠕\",\"⠖\",\"⠗\",\"⡐\",\"⡑\",\"⡒\",\"⡓\",\"⡔\",\"⡕\",\"⡖\",\"⡗\",\"⠘\",\"⠙\",\"⠚\",\"⠛\",\"⠜\",\"⠝\",\"⠞\",\"⠟\",\"⡘\",\"⡙\",\"⡚\",\"⡛\",\"⡜\",\"⡝\",\"⡞\",\"⡟\",\"⠠\",\"⠡\",\"⠢\",\"⠣\",\"⠤\",\"⠥\",\"⠦\",\"⠧\",\"⡠\",\"⡡\",\"⡢\",\"⡣\",\"⡤\",\"⡥\",\"⡦\",\"⡧\",\"⠨\",\"⠩\",\"⠪\",\"⠫\",\"⠬\",\"⠭\",\"⠮\",\"⠯\",\"⡨\",\"⡩\",\"⡪\",\"⡫\",\"⡬\",\"⡭\",\"⡮\",\"⡯\",\"⠰\",\"⠱\",\"⠲\",\"⠳\",\"⠴\",\"⠵\",\"⠶\",\"⠷\",\"⡰\",\"⡱\",\"⡲\",\"⡳\",\"⡴\",\"⡵\",\"⡶\",\"⡷\",\"⠸\",\"⠹\",\"⠺\",\"⠻\",\"⠼\",\"⠽\",\"⠾\",\"⠿\",\"⡸\",\"⡹\",\"⡺\",\"⡻\",\"⡼\",\"⡽\",\"⡾\",\"⡿\",\"⢀\",\"⢁\",\"⢂\",\"⢃\",\"⢄\",\"⢅\",\"⢆\",\"⢇\",\"⣀\",\"⣁\",\"⣂\",\"⣃\",\"⣄\",\"⣅\",\"⣆\",\"⣇\",\"⢈\",\"⢉\",\"⢊\",\"⢋\",\"⢌\",\"⢍\",\"⢎\",\"⢏\",\"⣈\",\"⣉\",\"⣊\",\"⣋\",\"⣌\",\"⣍\",\"⣎\",\"⣏\",\"⢐\",\"⢑\",\"⢒\",\"⢓\",\"⢔\",\"⢕\",\"⢖\",\"⢗\",\"⣐\",\"⣑\",\"⣒\",\"⣓\",\"⣔\",\"⣕\",\"⣖\",\"⣗\",\"⢘\",\"⢙\",\"⢚\",\"⢛\",\"⢜\",\"⢝\",\"⢞\",\"⢟\",\"⣘\",\"⣙\",\"⣚\",\"⣛\",\"⣜\",\"⣝\",\"⣞\",\"⣟\",\"⢠\",\"⢡\",\"⢢\",\"⢣\",\"⢤\",\"⢥\",\"⢦\",\"⢧\",\"⣠\",\"⣡\",\"⣢\",\"⣣\",\"⣤\",\"⣥\",\"⣦\",\"⣧\",\"⢨\",\"⢩\",\"⢪\",\"⢫\",\"⢬\",\"⢭\",\"⢮\",\"⢯\",\"⣨\",\"⣩\",\"⣪\",\"⣫\",\"⣬\",\"⣭\",\"⣮\",\"⣯\",\"⢰\",\"⢱\",\"⢲\",\"⢳\",\"⢴\",\"⢵\",\"⢶\",\"⢷\",\"⣰\",\"⣱\",\"⣲\",\"⣳\",\"⣴\",\"⣵\",\"⣶\",\"⣷\",\"⢸\",\"⢹\",\"⢺\",\"⢻\",\"⢼\",\"⢽\",\"⢾\",\"⢿\",\"⣸\",\"⣹\",\"⣺\",\"⣻\",\"⣼\",\"⣽\",\"⣾\",\"⣿\"]},\"line\":{\"interval\":130,\"frames\":[\"-\",\"\\\\\",\"|\",\"/\"]},\"line2\":{\"interval\":100,\"frames\":[\"⠂\",\"-\",\"–\",\"—\",\"–\",\"-\"]},\"pipe\":{\"interval\":100,\"frames\":[\"┤\",\"┘\",\"┴\",\"└\",\"├\",\"┌\",\"┬\",\"┐\"]},\"simpleDots\":{\"interval\":400,\"frames\":[\". \",\".. \",\"...\",\" \"]},\"simpleDotsScrolling\":{\"interval\":200,\"frames\":[\". \",\".. \",\"...\",\" ..\",\" .\",\" \"]},\"star\":{\"interval\":70,\"frames\":[\"✶\",\"✸\",\"✹\",\"✺\",\"✹\",\"✷\"]},\"star2\":{\"interval\":80,\"frames\":[\"+\",\"x\",\"*\"]},\"flip\":{\"interval\":70,\"frames\":[\"_\",\"_\",\"_\",\"-\",\"`\",\"`\",\"'\",\"´\",\"-\",\"_\",\"_\",\"_\"]},\"hamburger\":{\"interval\":100,\"frames\":[\"☱\",\"☲\",\"☴\"]},\"growVertical\":{\"interval\":120,\"frames\":[\"▁\",\"▃\",\"▄\",\"▅\",\"▆\",\"▇\",\"▆\",\"▅\",\"▄\",\"▃\"]},\"growHorizontal\":{\"interval\":120,\"frames\":[\"▏\",\"▎\",\"▍\",\"▌\",\"▋\",\"▊\",\"▉\",\"▊\",\"▋\",\"▌\",\"▍\",\"▎\"]},\"balloon\":{\"interval\":140,\"frames\":[\" \",\".\",\"o\",\"O\",\"@\",\"*\",\" \"]},\"balloon2\":{\"interval\":120,\"frames\":[\".\",\"o\",\"O\",\"°\",\"O\",\"o\",\".\"]},\"noise\":{\"interval\":100,\"frames\":[\"▓\",\"▒\",\"░\"]},\"bounce\":{\"interval\":120,\"frames\":[\"⠁\",\"⠂\",\"⠄\",\"⠂\"]},\"boxBounce\":{\"interval\":120,\"frames\":[\"▖\",\"▘\",\"▝\",\"▗\"]},\"boxBounce2\":{\"interval\":100,\"frames\":[\"▌\",\"▀\",\"▐\",\"▄\"]},\"triangle\":{\"interval\":50,\"frames\":[\"◢\",\"◣\",\"◤\",\"◥\"]},\"arc\":{\"interval\":100,\"frames\":[\"◜\",\"◠\",\"◝\",\"◞\",\"◡\",\"◟\"]},\"circle\":{\"interval\":120,\"frames\":[\"◡\",\"⊙\",\"◠\"]},\"squareCorners\":{\"interval\":180,\"frames\":[\"◰\",\"◳\",\"◲\",\"◱\"]},\"circleQuarters\":{\"interval\":120,\"frames\":[\"◴\",\"◷\",\"◶\",\"◵\"]},\"circleHalves\":{\"interval\":50,\"frames\":[\"◐\",\"◓\",\"◑\",\"◒\"]},\"squish\":{\"interval\":100,\"frames\":[\"╫\",\"╪\"]},\"toggle\":{\"interval\":250,\"frames\":[\"⊶\",\"⊷\"]},\"toggle2\":{\"interval\":80,\"frames\":[\"▫\",\"▪\"]},\"toggle3\":{\"interval\":120,\"frames\":[\"□\",\"■\"]},\"toggle4\":{\"interval\":100,\"frames\":[\"■\",\"□\",\"▪\",\"▫\"]},\"toggle5\":{\"interval\":100,\"frames\":[\"▮\",\"▯\"]},\"toggle6\":{\"interval\":300,\"frames\":[\"ဝ\",\"၀\"]},\"toggle7\":{\"interval\":80,\"frames\":[\"⦾\",\"⦿\"]},\"toggle8\":{\"interval\":100,\"frames\":[\"◍\",\"◌\"]},\"toggle9\":{\"interval\":100,\"frames\":[\"◉\",\"◎\"]},\"toggle10\":{\"interval\":100,\"frames\":[\"㊂\",\"㊀\",\"㊁\"]},\"toggle11\":{\"interval\":50,\"frames\":[\"⧇\",\"⧆\"]},\"toggle12\":{\"interval\":120,\"frames\":[\"☗\",\"☖\"]},\"toggle13\":{\"interval\":80,\"frames\":[\"=\",\"*\",\"-\"]},\"arrow\":{\"interval\":100,\"frames\":[\"←\",\"↖\",\"↑\",\"↗\",\"→\",\"↘\",\"↓\",\"↙\"]},\"arrow2\":{\"interval\":80,\"frames\":[\"⬆️ \",\"↗️ \",\"➡️ \",\"↘️ \",\"⬇️ \",\"↙️ \",\"⬅️ \",\"↖️ \"]},\"arrow3\":{\"interval\":120,\"frames\":[\"▹▹▹▹▹\",\"▸▹▹▹▹\",\"▹▸▹▹▹\",\"▹▹▸▹▹\",\"▹▹▹▸▹\",\"▹▹▹▹▸\"]},\"bouncingBar\":{\"interval\":80,\"frames\":[\"[ ]\",\"[= ]\",\"[== ]\",\"[=== ]\",\"[ ===]\",\"[ ==]\",\"[ =]\",\"[ ]\",\"[ =]\",\"[ ==]\",\"[ ===]\",\"[====]\",\"[=== ]\",\"[== ]\",\"[= ]\"]},\"bouncingBall\":{\"interval\":80,\"frames\":[\"( ● )\",\"( ● )\",\"( ● )\",\"( ● )\",\"( ●)\",\"( ● )\",\"( ● )\",\"( ● )\",\"( ● )\",\"(● )\"]},\"smiley\":{\"interval\":200,\"frames\":[\"😄 \",\"😝 \"]},\"monkey\":{\"interval\":300,\"frames\":[\"🙈 \",\"🙈 \",\"🙉 \",\"🙊 \"]},\"hearts\":{\"interval\":100,\"frames\":[\"💛 \",\"💙 \",\"💜 \",\"💚 \",\"❤️ \"]},\"clock\":{\"interval\":100,\"frames\":[\"🕛 \",\"🕐 \",\"🕑 \",\"🕒 \",\"🕓 \",\"🕔 \",\"🕕 \",\"🕖 \",\"🕗 \",\"🕘 \",\"🕙 \",\"🕚 \"]},\"earth\":{\"interval\":180,\"frames\":[\"🌍 \",\"🌎 \",\"🌏 \"]},\"material\":{\"interval\":17,\"frames\":[\"█▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁\",\"██▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁\",\"███▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁\",\"████▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁\",\"██████▁▁▁▁▁▁▁▁▁▁▁▁▁▁\",\"██████▁▁▁▁▁▁▁▁▁▁▁▁▁▁\",\"███████▁▁▁▁▁▁▁▁▁▁▁▁▁\",\"████████▁▁▁▁▁▁▁▁▁▁▁▁\",\"█████████▁▁▁▁▁▁▁▁▁▁▁\",\"█████████▁▁▁▁▁▁▁▁▁▁▁\",\"██████████▁▁▁▁▁▁▁▁▁▁\",\"███████████▁▁▁▁▁▁▁▁▁\",\"█████████████▁▁▁▁▁▁▁\",\"██████████████▁▁▁▁▁▁\",\"██████████████▁▁▁▁▁▁\",\"▁██████████████▁▁▁▁▁\",\"▁██████████████▁▁▁▁▁\",\"▁██████████████▁▁▁▁▁\",\"▁▁██████████████▁▁▁▁\",\"▁▁▁██████████████▁▁▁\",\"▁▁▁▁█████████████▁▁▁\",\"▁▁▁▁██████████████▁▁\",\"▁▁▁▁██████████████▁▁\",\"▁▁▁▁▁██████████████▁\",\"▁▁▁▁▁██████████████▁\",\"▁▁▁▁▁██████████████▁\",\"▁▁▁▁▁▁██████████████\",\"▁▁▁▁▁▁██████████████\",\"▁▁▁▁▁▁▁█████████████\",\"▁▁▁▁▁▁▁█████████████\",\"▁▁▁▁▁▁▁▁████████████\",\"▁▁▁▁▁▁▁▁████████████\",\"▁▁▁▁▁▁▁▁▁███████████\",\"▁▁▁▁▁▁▁▁▁███████████\",\"▁▁▁▁▁▁▁▁▁▁██████████\",\"▁▁▁▁▁▁▁▁▁▁██████████\",\"▁▁▁▁▁▁▁▁▁▁▁▁████████\",\"▁▁▁▁▁▁▁▁▁▁▁▁▁███████\",\"▁▁▁▁▁▁▁▁▁▁▁▁▁▁██████\",\"▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁█████\",\"▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁█████\",\"█▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁████\",\"██▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁███\",\"██▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁███\",\"███▁▁▁▁▁▁▁▁▁▁▁▁▁▁███\",\"████▁▁▁▁▁▁▁▁▁▁▁▁▁▁██\",\"█████▁▁▁▁▁▁▁▁▁▁▁▁▁▁█\",\"█████▁▁▁▁▁▁▁▁▁▁▁▁▁▁█\",\"██████▁▁▁▁▁▁▁▁▁▁▁▁▁█\",\"████████▁▁▁▁▁▁▁▁▁▁▁▁\",\"█████████▁▁▁▁▁▁▁▁▁▁▁\",\"█████████▁▁▁▁▁▁▁▁▁▁▁\",\"█████████▁▁▁▁▁▁▁▁▁▁▁\",\"█████████▁▁▁▁▁▁▁▁▁▁▁\",\"███████████▁▁▁▁▁▁▁▁▁\",\"████████████▁▁▁▁▁▁▁▁\",\"████████████▁▁▁▁▁▁▁▁\",\"██████████████▁▁▁▁▁▁\",\"██████████████▁▁▁▁▁▁\",\"▁██████████████▁▁▁▁▁\",\"▁██████████████▁▁▁▁▁\",\"▁▁▁█████████████▁▁▁▁\",\"▁▁▁▁▁████████████▁▁▁\",\"▁▁▁▁▁████████████▁▁▁\",\"▁▁▁▁▁▁███████████▁▁▁\",\"▁▁▁▁▁▁▁▁█████████▁▁▁\",\"▁▁▁▁▁▁▁▁█████████▁▁▁\",\"▁▁▁▁▁▁▁▁▁█████████▁▁\",\"▁▁▁▁▁▁▁▁▁█████████▁▁\",\"▁▁▁▁▁▁▁▁▁▁█████████▁\",\"▁▁▁▁▁▁▁▁▁▁▁████████▁\",\"▁▁▁▁▁▁▁▁▁▁▁████████▁\",\"▁▁▁▁▁▁▁▁▁▁▁▁███████▁\",\"▁▁▁▁▁▁▁▁▁▁▁▁███████▁\",\"▁▁▁▁▁▁▁▁▁▁▁▁▁███████\",\"▁▁▁▁▁▁▁▁▁▁▁▁▁███████\",\"▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁█████\",\"▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁████\",\"▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁████\",\"▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁████\",\"▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁███\",\"▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁███\",\"▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁██\",\"▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁██\",\"▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁██\",\"▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁█\",\"▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁█\",\"▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁█\",\"▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁\",\"▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁\",\"▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁\",\"▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁\"]},\"moon\":{\"interval\":80,\"frames\":[\"🌑 \",\"🌒 \",\"🌓 \",\"🌔 \",\"🌕 \",\"🌖 \",\"🌗 \",\"🌘 \"]},\"runner\":{\"interval\":140,\"frames\":[\"🚶 \",\"🏃 \"]},\"pong\":{\"interval\":80,\"frames\":[\"▐⠂ ▌\",\"▐⠈ ▌\",\"▐ ⠂ ▌\",\"▐ ⠠ ▌\",\"▐ ⡀ ▌\",\"▐ ⠠ ▌\",\"▐ ⠂ ▌\",\"▐ ⠈ ▌\",\"▐ ⠂ ▌\",\"▐ ⠠ ▌\",\"▐ ⡀ ▌\",\"▐ ⠠ ▌\",\"▐ ⠂ ▌\",\"▐ ⠈ ▌\",\"▐ ⠂▌\",\"▐ ⠠▌\",\"▐ ⡀▌\",\"▐ ⠠ ▌\",\"▐ ⠂ ▌\",\"▐ ⠈ ▌\",\"▐ ⠂ ▌\",\"▐ ⠠ ▌\",\"▐ ⡀ ▌\",\"▐ ⠠ ▌\",\"▐ ⠂ ▌\",\"▐ ⠈ ▌\",\"▐ ⠂ ▌\",\"▐ ⠠ ▌\",\"▐ ⡀ ▌\",\"▐⠠ ▌\"]},\"shark\":{\"interval\":120,\"frames\":[\"▐|\\\\____________▌\",\"▐_|\\\\___________▌\",\"▐__|\\\\__________▌\",\"▐___|\\\\_________▌\",\"▐____|\\\\________▌\",\"▐_____|\\\\_______▌\",\"▐______|\\\\______▌\",\"▐_______|\\\\_____▌\",\"▐________|\\\\____▌\",\"▐_________|\\\\___▌\",\"▐__________|\\\\__▌\",\"▐___________|\\\\_▌\",\"▐____________|\\\\▌\",\"▐____________/|▌\",\"▐___________/|_▌\",\"▐__________/|__▌\",\"▐_________/|___▌\",\"▐________/|____▌\",\"▐_______/|_____▌\",\"▐______/|______▌\",\"▐_____/|_______▌\",\"▐____/|________▌\",\"▐___/|_________▌\",\"▐__/|__________▌\",\"▐_/|___________▌\",\"▐/|____________▌\"]},\"dqpb\":{\"interval\":100,\"frames\":[\"d\",\"q\",\"p\",\"b\"]},\"weather\":{\"interval\":100,\"frames\":[\"☀️ \",\"☀️ \",\"☀️ \",\"🌤 \",\"⛅️ \",\"🌥 \",\"☁️ \",\"🌧 \",\"🌨 \",\"🌧 \",\"🌨 \",\"🌧 \",\"🌨 \",\"⛈ \",\"🌨 \",\"🌧 \",\"🌨 \",\"☁️ \",\"🌥 \",\"⛅️ \",\"🌤 \",\"☀️ \",\"☀️ \"]},\"christmas\":{\"interval\":400,\"frames\":[\"🌲\",\"🎄\"]},\"grenade\":{\"interval\":80,\"frames\":[\"، \",\"′ \",\" ´ \",\" ‾ \",\" ⸌\",\" ⸊\",\" |\",\" ⁎\",\" ⁕\",\" ෴ \",\" ⁓\",\" \",\" \",\" \"]},\"point\":{\"interval\":125,\"frames\":[\"∙∙∙\",\"●∙∙\",\"∙●∙\",\"∙∙●\",\"∙∙∙\"]},\"layer\":{\"interval\":150,\"frames\":[\"-\",\"=\",\"≡\"]},\"betaWave\":{\"interval\":80,\"frames\":[\"ρββββββ\",\"βρβββββ\",\"ββρββββ\",\"βββρβββ\",\"ββββρββ\",\"βββββρβ\",\"ββββββρ\"]},\"fingerDance\":{\"interval\":160,\"frames\":[\"🤘 \",\"🤟 \",\"🖖 \",\"✋ \",\"🤚 \",\"👆 \"]},\"fistBump\":{\"interval\":80,\"frames\":[\"🤜    🤛 \",\"🤜    🤛 \",\"🤜    🤛 \",\" 🤜  🤛  \",\"  🤜🤛   \",\" 🤜✨🤛   \",\"🤜 ✨ 🤛  \"]},\"soccerHeader\":{\"interval\":80,\"frames\":[\" 🧑⚽️ 🧑 \",\"🧑 ⚽️ 🧑 \",\"🧑 ⚽️ 🧑 \",\"🧑 ⚽️ 🧑 \",\"🧑 ⚽️ 🧑 \",\"🧑 ⚽️ 🧑 \",\"🧑 ⚽️🧑 \",\"🧑 ⚽️ 🧑 \",\"🧑 ⚽️ 🧑 \",\"🧑 ⚽️ 🧑 \",\"🧑 ⚽️ 🧑 \",\"🧑 ⚽️ 🧑 \"]},\"mindblown\":{\"interval\":160,\"frames\":[\"😐 \",\"😐 \",\"😮 \",\"😮 \",\"😦 \",\"😦 \",\"😧 \",\"😧 \",\"🤯 \",\"💥 \",\"✨ \",\"  \",\"  \",\"  \"]},\"speaker\":{\"interval\":160,\"frames\":[\"🔈 \",\"🔉 \",\"🔊 \",\"🔉 \"]},\"orangePulse\":{\"interval\":100,\"frames\":[\"🔸 \",\"🔶 \",\"🟠 \",\"🟠 \",\"🔶 \"]},\"bluePulse\":{\"interval\":100,\"frames\":[\"🔹 \",\"🔷 \",\"🔵 \",\"🔵 \",\"🔷 \"]},\"orangeBluePulse\":{\"interval\":100,\"frames\":[\"🔸 \",\"🔶 \",\"🟠 \",\"🟠 \",\"🔶 \",\"🔹 \",\"🔷 \",\"🔵 \",\"🔵 \",\"🔷 \"]},\"timeTravel\":{\"interval\":100,\"frames\":[\"🕛 \",\"🕚 \",\"🕙 \",\"🕘 \",\"🕗 \",\"🕖 \",\"🕕 \",\"🕔 \",\"🕓 \",\"🕒 \",\"🕑 \",\"🕐 \"]},\"aesthetic\":{\"interval\":80,\"frames\":[\"▰▱▱▱▱▱▱\",\"▰▰▱▱▱▱▱\",\"▰▰▰▱▱▱▱\",\"▰▰▰▰▱▱▱\",\"▰▰▰▰▰▱▱\",\"▰▰▰▰▰▰▱\",\"▰▰▰▰▰▰▰\",\"▰▱▱▱▱▱▱\"]}}"); /***/ }), -/* 443 */ +/* 448 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const chalk = __webpack_require__(444); +const chalk = __webpack_require__(449); const isSupported = process.platform !== 'win32' || process.env.CI || process.env.TERM === 'xterm-256color'; @@ -50597,16 +51096,16 @@ module.exports = isSupported ? main : fallbacks; /***/ }), -/* 444 */ +/* 449 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; const escapeStringRegexp = __webpack_require__(180); -const ansiStyles = __webpack_require__(445); -const stdoutColor = __webpack_require__(446).stdout; +const ansiStyles = __webpack_require__(450); +const stdoutColor = __webpack_require__(451).stdout; -const template = __webpack_require__(448); +const template = __webpack_require__(453); const isSimpleWindowsTerm = process.platform === 'win32' && !(process.env.TERM || '').toLowerCase().startsWith('xterm'); @@ -50832,7 +51331,7 @@ module.exports.default = module.exports; // For TypeScript /***/ }), -/* 445 */ +/* 450 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -51005,13 +51504,13 @@ Object.defineProperty(module, 'exports', { /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(115)(module))) /***/ }), -/* 446 */ +/* 451 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; const os = __webpack_require__(121); -const hasFlag = __webpack_require__(447); +const hasFlag = __webpack_require__(452); const env = process.env; @@ -51143,7 +51642,7 @@ module.exports = { /***/ }), -/* 447 */ +/* 452 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -51158,7 +51657,7 @@ module.exports = (flag, argv) => { /***/ }), -/* 448 */ +/* 453 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -51293,18 +51792,18 @@ module.exports = (chalk, tmp) => { /***/ }), -/* 449 */ +/* 454 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const ansiRegex = __webpack_require__(450); +const ansiRegex = __webpack_require__(455); module.exports = string => typeof string === 'string' ? string.replace(ansiRegex(), '') : string; /***/ }), -/* 450 */ +/* 455 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -51321,14 +51820,14 @@ module.exports = ({onlyFirst = false} = {}) => { /***/ }), -/* 451 */ +/* 456 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var defaults = __webpack_require__(452) -var combining = __webpack_require__(454) +var defaults = __webpack_require__(457) +var combining = __webpack_require__(459) var DEFAULTS = { nul: 0, @@ -51427,10 +51926,10 @@ function bisearch(ucs) { /***/ }), -/* 452 */ +/* 457 */ /***/ (function(module, exports, __webpack_require__) { -var clone = __webpack_require__(453); +var clone = __webpack_require__(458); module.exports = function(options, defaults) { options = options || {}; @@ -51445,7 +51944,7 @@ module.exports = function(options, defaults) { }; /***/ }), -/* 453 */ +/* 458 */ /***/ (function(module, exports, __webpack_require__) { var clone = (function() { @@ -51617,7 +52116,7 @@ if ( true && module.exports) { /***/ }), -/* 454 */ +/* 459 */ /***/ (function(module, exports) { module.exports = [ @@ -51673,7 +52172,7 @@ module.exports = [ /***/ }), -/* 455 */ +/* 460 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -51689,7 +52188,7 @@ module.exports = ({stream = process.stdout} = {}) => { /***/ }), -/* 456 */ +/* 461 */ /***/ (function(module, exports, __webpack_require__) { var Stream = __webpack_require__(138) @@ -51840,7 +52339,7 @@ MuteStream.prototype.close = proxy('close') /***/ }), -/* 457 */ +/* 462 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -51850,15 +52349,10 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.RunCommand = void 0; - var _errors = __webpack_require__(164); - var _log = __webpack_require__(145); - var _parallelize = __webpack_require__(146); - var _projects = __webpack_require__(147); - /* * SPDX-License-Identifier: Apache-2.0 * @@ -51888,39 +52382,33 @@ var _projects = __webpack_require__(147); * specific language governing permissions and limitations * under the License. */ -const RunCommand = { + +const RunCommand = exports.RunCommand = { description: 'Run script defined in package.json in each package that contains that script.', name: 'run', - async run(projects, projectGraph, { extraArgs }) { const batchedProjects = (0, _projects.topologicallyBatchProjects)(projects, projectGraph); - if (extraArgs.length === 0) { throw new _errors.CliError('No script specified'); } - const scriptName = extraArgs[0]; const scriptArgs = extraArgs.slice(1); await (0, _parallelize.parallelizeBatches)(batchedProjects, async project => { if (project.hasScript(scriptName)) { _log.log.info(`[${project.name}] running "${scriptName}" script`); - await project.runScriptStreaming(scriptName, { args: scriptArgs }); - _log.log.success(`[${project.name}] complete`); } }); } - }; -exports.RunCommand = RunCommand; /***/ }), -/* 458 */ +/* 463 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -51930,17 +52418,11 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.WatchCommand = void 0; - var _errors = __webpack_require__(164); - var _log = __webpack_require__(145); - var _parallelize = __webpack_require__(146); - var _projects = __webpack_require__(147); - -var _watch = __webpack_require__(459); - +var _watch = __webpack_require__(464); /* * SPDX-License-Identifier: Apache-2.0 * @@ -51975,11 +52457,12 @@ var _watch = __webpack_require__(459); * Name of the script in the package/project package.json file to run during `osd watch`. */ const watchScriptName = 'osd:watch'; + /** * Name of the OpenSearch Dashboards project. */ - const opensearchDashboardsProjectName = 'opensearch-dashboards'; + /** * Command that traverses through list of available projects/packages that have `osd:watch` script in their * package.json files, groups them into topology aware batches and then processes theses batches one by one @@ -51990,52 +52473,41 @@ const opensearchDashboardsProjectName = 'opensearch-dashboards'; * the `osd:watch` script and eventually for the entire batch. Currently we support completion "markers" for * `webpack` and `tsc` only, for the rest we rely on predefined timeouts. */ - -const WatchCommand = { +const WatchCommand = exports.WatchCommand = { description: 'Runs `osd:watch` script for every project.', name: 'watch', - async run(projects, projectGraph) { const projectsToWatch = new Map(); - for (const project of projects.values()) { // We can't watch project that doesn't have `osd:watch` script. if (project.hasScript(watchScriptName)) { projectsToWatch.set(project.name, project); } } - if (projectsToWatch.size === 0) { throw new _errors.CliError(`There are no projects to watch found. Make sure that projects define 'osd:watch' script in 'package.json'.`); } - const projectNames = Array.from(projectsToWatch.keys()); + _log.log.info(`Running ${watchScriptName} scripts for [${projectNames.join(', ')}].`); - _log.log.info(`Running ${watchScriptName} scripts for [${projectNames.join(', ')}].`); // OpenSearch Dashboards should always be run the last, so we don't rely on automatic + // OpenSearch Dashboards should always be run the last, so we don't rely on automatic // topological batching and push it to the last one-entry batch manually. - - const shouldWatchOpenSearchDashboardsProject = projectsToWatch.delete(opensearchDashboardsProjectName); const batchedProjects = (0, _projects.topologicallyBatchProjects)(projectsToWatch, projectGraph); - if (shouldWatchOpenSearchDashboardsProject) { batchedProjects.push([projects.get(opensearchDashboardsProjectName)]); } - await (0, _parallelize.parallelizeBatches)(batchedProjects, async pkg => { const completionHint = await (0, _watch.waitUntilWatchIsReady)(pkg.runScriptStreaming(watchScriptName, { debug: false }).stdout); - _log.log.success(`[${pkg.name}] Initial build completed (${completionHint}).`); }); } - }; -exports.WatchCommand = WatchCommand; /***/ }), -/* 459 */ +/* 464 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -52045,15 +52517,10 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.waitUntilWatchIsReady = waitUntilWatchIsReady; - var Rx = _interopRequireWildcard(__webpack_require__(8)); - -var _operators = __webpack_require__(460); - -function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); } - -function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; } - +var _operators = __webpack_require__(465); +function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); } +function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; } /* * SPDX-License-Identifier: Apache-2.0 * @@ -52088,12 +52555,13 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && * Number of milliseconds we wait before we fall back to the default watch handler. */ const defaultHandlerDelay = 3000; + /** * If default watch handler is used, then it's the number of milliseconds we wait for * any build output before we consider watch task ready. */ - const defaultHandlerReadinessTimeout = 2000; + /** * Describes configurable watch options. */ @@ -52107,16 +52575,11 @@ function getWatchHandlers(buildOutput$, { const defaultHandler = Rx.of(undefined).pipe((0, _operators.delay)(handlerReadinessTimeout), (0, _operators.map)(() => buildOutput$.pipe((0, _operators.timeout)(handlerDelay), (0, _operators.catchError)(() => Rx.of('timeout'))))); return [typescriptHandler, webpackHandler, defaultHandler]; } - function waitUntilWatchIsReady(stream, opts = {}) { const buildOutput$ = new Rx.Subject(); - const onDataListener = data => buildOutput$.next(data.toString('utf-8')); - const onEndListener = () => buildOutput$.complete(); - const onErrorListener = e => buildOutput$.error(e); - stream.once('end', onEndListener); stream.once('error', onErrorListener); stream.on('data', onDataListener); @@ -52129,141 +52592,141 @@ function waitUntilWatchIsReady(stream, opts = {}) { } /***/ }), -/* 460 */ +/* 465 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); -/* harmony import */ var _internal_operators_audit__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(461); +/* harmony import */ var _internal_operators_audit__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(466); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "audit", function() { return _internal_operators_audit__WEBPACK_IMPORTED_MODULE_0__["audit"]; }); -/* harmony import */ var _internal_operators_auditTime__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(462); +/* harmony import */ var _internal_operators_auditTime__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(467); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "auditTime", function() { return _internal_operators_auditTime__WEBPACK_IMPORTED_MODULE_1__["auditTime"]; }); -/* harmony import */ var _internal_operators_buffer__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(463); +/* harmony import */ var _internal_operators_buffer__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(468); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "buffer", function() { return _internal_operators_buffer__WEBPACK_IMPORTED_MODULE_2__["buffer"]; }); -/* harmony import */ var _internal_operators_bufferCount__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(464); +/* harmony import */ var _internal_operators_bufferCount__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(469); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "bufferCount", function() { return _internal_operators_bufferCount__WEBPACK_IMPORTED_MODULE_3__["bufferCount"]; }); -/* harmony import */ var _internal_operators_bufferTime__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(465); +/* harmony import */ var _internal_operators_bufferTime__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(470); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "bufferTime", function() { return _internal_operators_bufferTime__WEBPACK_IMPORTED_MODULE_4__["bufferTime"]; }); -/* harmony import */ var _internal_operators_bufferToggle__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(466); +/* harmony import */ var _internal_operators_bufferToggle__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(471); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "bufferToggle", function() { return _internal_operators_bufferToggle__WEBPACK_IMPORTED_MODULE_5__["bufferToggle"]; }); -/* harmony import */ var _internal_operators_bufferWhen__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(467); +/* harmony import */ var _internal_operators_bufferWhen__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(472); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "bufferWhen", function() { return _internal_operators_bufferWhen__WEBPACK_IMPORTED_MODULE_6__["bufferWhen"]; }); -/* harmony import */ var _internal_operators_catchError__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(468); +/* harmony import */ var _internal_operators_catchError__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(473); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "catchError", function() { return _internal_operators_catchError__WEBPACK_IMPORTED_MODULE_7__["catchError"]; }); -/* harmony import */ var _internal_operators_combineAll__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(469); +/* harmony import */ var _internal_operators_combineAll__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(474); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "combineAll", function() { return _internal_operators_combineAll__WEBPACK_IMPORTED_MODULE_8__["combineAll"]; }); -/* harmony import */ var _internal_operators_combineLatest__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(470); +/* harmony import */ var _internal_operators_combineLatest__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(475); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "combineLatest", function() { return _internal_operators_combineLatest__WEBPACK_IMPORTED_MODULE_9__["combineLatest"]; }); -/* harmony import */ var _internal_operators_concat__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(471); +/* harmony import */ var _internal_operators_concat__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(476); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "concat", function() { return _internal_operators_concat__WEBPACK_IMPORTED_MODULE_10__["concat"]; }); /* harmony import */ var _internal_operators_concatAll__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(80); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "concatAll", function() { return _internal_operators_concatAll__WEBPACK_IMPORTED_MODULE_11__["concatAll"]; }); -/* harmony import */ var _internal_operators_concatMap__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(472); +/* harmony import */ var _internal_operators_concatMap__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(477); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "concatMap", function() { return _internal_operators_concatMap__WEBPACK_IMPORTED_MODULE_12__["concatMap"]; }); -/* harmony import */ var _internal_operators_concatMapTo__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(473); +/* harmony import */ var _internal_operators_concatMapTo__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(478); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "concatMapTo", function() { return _internal_operators_concatMapTo__WEBPACK_IMPORTED_MODULE_13__["concatMapTo"]; }); -/* harmony import */ var _internal_operators_count__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(474); +/* harmony import */ var _internal_operators_count__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(479); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "count", function() { return _internal_operators_count__WEBPACK_IMPORTED_MODULE_14__["count"]; }); -/* harmony import */ var _internal_operators_debounce__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(475); +/* harmony import */ var _internal_operators_debounce__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(480); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "debounce", function() { return _internal_operators_debounce__WEBPACK_IMPORTED_MODULE_15__["debounce"]; }); -/* harmony import */ var _internal_operators_debounceTime__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(476); +/* harmony import */ var _internal_operators_debounceTime__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(481); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "debounceTime", function() { return _internal_operators_debounceTime__WEBPACK_IMPORTED_MODULE_16__["debounceTime"]; }); -/* harmony import */ var _internal_operators_defaultIfEmpty__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(477); +/* harmony import */ var _internal_operators_defaultIfEmpty__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(482); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "defaultIfEmpty", function() { return _internal_operators_defaultIfEmpty__WEBPACK_IMPORTED_MODULE_17__["defaultIfEmpty"]; }); -/* harmony import */ var _internal_operators_delay__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(478); +/* harmony import */ var _internal_operators_delay__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(483); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "delay", function() { return _internal_operators_delay__WEBPACK_IMPORTED_MODULE_18__["delay"]; }); -/* harmony import */ var _internal_operators_delayWhen__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(480); +/* harmony import */ var _internal_operators_delayWhen__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(485); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "delayWhen", function() { return _internal_operators_delayWhen__WEBPACK_IMPORTED_MODULE_19__["delayWhen"]; }); -/* harmony import */ var _internal_operators_dematerialize__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(481); +/* harmony import */ var _internal_operators_dematerialize__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(486); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "dematerialize", function() { return _internal_operators_dematerialize__WEBPACK_IMPORTED_MODULE_20__["dematerialize"]; }); -/* harmony import */ var _internal_operators_distinct__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(482); +/* harmony import */ var _internal_operators_distinct__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(487); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "distinct", function() { return _internal_operators_distinct__WEBPACK_IMPORTED_MODULE_21__["distinct"]; }); -/* harmony import */ var _internal_operators_distinctUntilChanged__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(483); +/* harmony import */ var _internal_operators_distinctUntilChanged__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(488); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "distinctUntilChanged", function() { return _internal_operators_distinctUntilChanged__WEBPACK_IMPORTED_MODULE_22__["distinctUntilChanged"]; }); -/* harmony import */ var _internal_operators_distinctUntilKeyChanged__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(484); +/* harmony import */ var _internal_operators_distinctUntilKeyChanged__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(489); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "distinctUntilKeyChanged", function() { return _internal_operators_distinctUntilKeyChanged__WEBPACK_IMPORTED_MODULE_23__["distinctUntilKeyChanged"]; }); -/* harmony import */ var _internal_operators_elementAt__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(485); +/* harmony import */ var _internal_operators_elementAt__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(490); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "elementAt", function() { return _internal_operators_elementAt__WEBPACK_IMPORTED_MODULE_24__["elementAt"]; }); -/* harmony import */ var _internal_operators_endWith__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(488); +/* harmony import */ var _internal_operators_endWith__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(493); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "endWith", function() { return _internal_operators_endWith__WEBPACK_IMPORTED_MODULE_25__["endWith"]; }); -/* harmony import */ var _internal_operators_every__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(489); +/* harmony import */ var _internal_operators_every__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(494); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "every", function() { return _internal_operators_every__WEBPACK_IMPORTED_MODULE_26__["every"]; }); -/* harmony import */ var _internal_operators_exhaust__WEBPACK_IMPORTED_MODULE_27__ = __webpack_require__(490); +/* harmony import */ var _internal_operators_exhaust__WEBPACK_IMPORTED_MODULE_27__ = __webpack_require__(495); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "exhaust", function() { return _internal_operators_exhaust__WEBPACK_IMPORTED_MODULE_27__["exhaust"]; }); -/* harmony import */ var _internal_operators_exhaustMap__WEBPACK_IMPORTED_MODULE_28__ = __webpack_require__(491); +/* harmony import */ var _internal_operators_exhaustMap__WEBPACK_IMPORTED_MODULE_28__ = __webpack_require__(496); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "exhaustMap", function() { return _internal_operators_exhaustMap__WEBPACK_IMPORTED_MODULE_28__["exhaustMap"]; }); -/* harmony import */ var _internal_operators_expand__WEBPACK_IMPORTED_MODULE_29__ = __webpack_require__(492); +/* harmony import */ var _internal_operators_expand__WEBPACK_IMPORTED_MODULE_29__ = __webpack_require__(497); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "expand", function() { return _internal_operators_expand__WEBPACK_IMPORTED_MODULE_29__["expand"]; }); /* harmony import */ var _internal_operators_filter__WEBPACK_IMPORTED_MODULE_30__ = __webpack_require__(105); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "filter", function() { return _internal_operators_filter__WEBPACK_IMPORTED_MODULE_30__["filter"]; }); -/* harmony import */ var _internal_operators_finalize__WEBPACK_IMPORTED_MODULE_31__ = __webpack_require__(493); +/* harmony import */ var _internal_operators_finalize__WEBPACK_IMPORTED_MODULE_31__ = __webpack_require__(498); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "finalize", function() { return _internal_operators_finalize__WEBPACK_IMPORTED_MODULE_31__["finalize"]; }); -/* harmony import */ var _internal_operators_find__WEBPACK_IMPORTED_MODULE_32__ = __webpack_require__(494); +/* harmony import */ var _internal_operators_find__WEBPACK_IMPORTED_MODULE_32__ = __webpack_require__(499); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "find", function() { return _internal_operators_find__WEBPACK_IMPORTED_MODULE_32__["find"]; }); -/* harmony import */ var _internal_operators_findIndex__WEBPACK_IMPORTED_MODULE_33__ = __webpack_require__(495); +/* harmony import */ var _internal_operators_findIndex__WEBPACK_IMPORTED_MODULE_33__ = __webpack_require__(500); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "findIndex", function() { return _internal_operators_findIndex__WEBPACK_IMPORTED_MODULE_33__["findIndex"]; }); -/* harmony import */ var _internal_operators_first__WEBPACK_IMPORTED_MODULE_34__ = __webpack_require__(496); +/* harmony import */ var _internal_operators_first__WEBPACK_IMPORTED_MODULE_34__ = __webpack_require__(501); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "first", function() { return _internal_operators_first__WEBPACK_IMPORTED_MODULE_34__["first"]; }); /* harmony import */ var _internal_operators_groupBy__WEBPACK_IMPORTED_MODULE_35__ = __webpack_require__(31); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "groupBy", function() { return _internal_operators_groupBy__WEBPACK_IMPORTED_MODULE_35__["groupBy"]; }); -/* harmony import */ var _internal_operators_ignoreElements__WEBPACK_IMPORTED_MODULE_36__ = __webpack_require__(497); +/* harmony import */ var _internal_operators_ignoreElements__WEBPACK_IMPORTED_MODULE_36__ = __webpack_require__(502); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "ignoreElements", function() { return _internal_operators_ignoreElements__WEBPACK_IMPORTED_MODULE_36__["ignoreElements"]; }); -/* harmony import */ var _internal_operators_isEmpty__WEBPACK_IMPORTED_MODULE_37__ = __webpack_require__(498); +/* harmony import */ var _internal_operators_isEmpty__WEBPACK_IMPORTED_MODULE_37__ = __webpack_require__(503); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "isEmpty", function() { return _internal_operators_isEmpty__WEBPACK_IMPORTED_MODULE_37__["isEmpty"]; }); -/* harmony import */ var _internal_operators_last__WEBPACK_IMPORTED_MODULE_38__ = __webpack_require__(499); +/* harmony import */ var _internal_operators_last__WEBPACK_IMPORTED_MODULE_38__ = __webpack_require__(504); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "last", function() { return _internal_operators_last__WEBPACK_IMPORTED_MODULE_38__["last"]; }); /* harmony import */ var _internal_operators_map__WEBPACK_IMPORTED_MODULE_39__ = __webpack_require__(66); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "map", function() { return _internal_operators_map__WEBPACK_IMPORTED_MODULE_39__["map"]; }); -/* harmony import */ var _internal_operators_mapTo__WEBPACK_IMPORTED_MODULE_40__ = __webpack_require__(501); +/* harmony import */ var _internal_operators_mapTo__WEBPACK_IMPORTED_MODULE_40__ = __webpack_require__(506); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "mapTo", function() { return _internal_operators_mapTo__WEBPACK_IMPORTED_MODULE_40__["mapTo"]; }); -/* harmony import */ var _internal_operators_materialize__WEBPACK_IMPORTED_MODULE_41__ = __webpack_require__(502); +/* harmony import */ var _internal_operators_materialize__WEBPACK_IMPORTED_MODULE_41__ = __webpack_require__(507); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "materialize", function() { return _internal_operators_materialize__WEBPACK_IMPORTED_MODULE_41__["materialize"]; }); -/* harmony import */ var _internal_operators_max__WEBPACK_IMPORTED_MODULE_42__ = __webpack_require__(503); +/* harmony import */ var _internal_operators_max__WEBPACK_IMPORTED_MODULE_42__ = __webpack_require__(508); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "max", function() { return _internal_operators_max__WEBPACK_IMPORTED_MODULE_42__["max"]; }); -/* harmony import */ var _internal_operators_merge__WEBPACK_IMPORTED_MODULE_43__ = __webpack_require__(506); +/* harmony import */ var _internal_operators_merge__WEBPACK_IMPORTED_MODULE_43__ = __webpack_require__(511); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "merge", function() { return _internal_operators_merge__WEBPACK_IMPORTED_MODULE_43__["merge"]; }); /* harmony import */ var _internal_operators_mergeAll__WEBPACK_IMPORTED_MODULE_44__ = __webpack_require__(81); @@ -52274,175 +52737,175 @@ __webpack_require__.r(__webpack_exports__); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "flatMap", function() { return _internal_operators_mergeMap__WEBPACK_IMPORTED_MODULE_45__["flatMap"]; }); -/* harmony import */ var _internal_operators_mergeMapTo__WEBPACK_IMPORTED_MODULE_46__ = __webpack_require__(507); +/* harmony import */ var _internal_operators_mergeMapTo__WEBPACK_IMPORTED_MODULE_46__ = __webpack_require__(512); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "mergeMapTo", function() { return _internal_operators_mergeMapTo__WEBPACK_IMPORTED_MODULE_46__["mergeMapTo"]; }); -/* harmony import */ var _internal_operators_mergeScan__WEBPACK_IMPORTED_MODULE_47__ = __webpack_require__(508); +/* harmony import */ var _internal_operators_mergeScan__WEBPACK_IMPORTED_MODULE_47__ = __webpack_require__(513); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "mergeScan", function() { return _internal_operators_mergeScan__WEBPACK_IMPORTED_MODULE_47__["mergeScan"]; }); -/* harmony import */ var _internal_operators_min__WEBPACK_IMPORTED_MODULE_48__ = __webpack_require__(509); +/* harmony import */ var _internal_operators_min__WEBPACK_IMPORTED_MODULE_48__ = __webpack_require__(514); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "min", function() { return _internal_operators_min__WEBPACK_IMPORTED_MODULE_48__["min"]; }); -/* harmony import */ var _internal_operators_multicast__WEBPACK_IMPORTED_MODULE_49__ = __webpack_require__(510); +/* harmony import */ var _internal_operators_multicast__WEBPACK_IMPORTED_MODULE_49__ = __webpack_require__(515); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "multicast", function() { return _internal_operators_multicast__WEBPACK_IMPORTED_MODULE_49__["multicast"]; }); /* harmony import */ var _internal_operators_observeOn__WEBPACK_IMPORTED_MODULE_50__ = __webpack_require__(41); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "observeOn", function() { return _internal_operators_observeOn__WEBPACK_IMPORTED_MODULE_50__["observeOn"]; }); -/* harmony import */ var _internal_operators_onErrorResumeNext__WEBPACK_IMPORTED_MODULE_51__ = __webpack_require__(511); +/* harmony import */ var _internal_operators_onErrorResumeNext__WEBPACK_IMPORTED_MODULE_51__ = __webpack_require__(516); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "onErrorResumeNext", function() { return _internal_operators_onErrorResumeNext__WEBPACK_IMPORTED_MODULE_51__["onErrorResumeNext"]; }); -/* harmony import */ var _internal_operators_pairwise__WEBPACK_IMPORTED_MODULE_52__ = __webpack_require__(512); +/* harmony import */ var _internal_operators_pairwise__WEBPACK_IMPORTED_MODULE_52__ = __webpack_require__(517); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "pairwise", function() { return _internal_operators_pairwise__WEBPACK_IMPORTED_MODULE_52__["pairwise"]; }); -/* harmony import */ var _internal_operators_partition__WEBPACK_IMPORTED_MODULE_53__ = __webpack_require__(513); +/* harmony import */ var _internal_operators_partition__WEBPACK_IMPORTED_MODULE_53__ = __webpack_require__(518); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "partition", function() { return _internal_operators_partition__WEBPACK_IMPORTED_MODULE_53__["partition"]; }); -/* harmony import */ var _internal_operators_pluck__WEBPACK_IMPORTED_MODULE_54__ = __webpack_require__(514); +/* harmony import */ var _internal_operators_pluck__WEBPACK_IMPORTED_MODULE_54__ = __webpack_require__(519); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "pluck", function() { return _internal_operators_pluck__WEBPACK_IMPORTED_MODULE_54__["pluck"]; }); -/* harmony import */ var _internal_operators_publish__WEBPACK_IMPORTED_MODULE_55__ = __webpack_require__(515); +/* harmony import */ var _internal_operators_publish__WEBPACK_IMPORTED_MODULE_55__ = __webpack_require__(520); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "publish", function() { return _internal_operators_publish__WEBPACK_IMPORTED_MODULE_55__["publish"]; }); -/* harmony import */ var _internal_operators_publishBehavior__WEBPACK_IMPORTED_MODULE_56__ = __webpack_require__(516); +/* harmony import */ var _internal_operators_publishBehavior__WEBPACK_IMPORTED_MODULE_56__ = __webpack_require__(521); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "publishBehavior", function() { return _internal_operators_publishBehavior__WEBPACK_IMPORTED_MODULE_56__["publishBehavior"]; }); -/* harmony import */ var _internal_operators_publishLast__WEBPACK_IMPORTED_MODULE_57__ = __webpack_require__(517); +/* harmony import */ var _internal_operators_publishLast__WEBPACK_IMPORTED_MODULE_57__ = __webpack_require__(522); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "publishLast", function() { return _internal_operators_publishLast__WEBPACK_IMPORTED_MODULE_57__["publishLast"]; }); -/* harmony import */ var _internal_operators_publishReplay__WEBPACK_IMPORTED_MODULE_58__ = __webpack_require__(518); +/* harmony import */ var _internal_operators_publishReplay__WEBPACK_IMPORTED_MODULE_58__ = __webpack_require__(523); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "publishReplay", function() { return _internal_operators_publishReplay__WEBPACK_IMPORTED_MODULE_58__["publishReplay"]; }); -/* harmony import */ var _internal_operators_race__WEBPACK_IMPORTED_MODULE_59__ = __webpack_require__(519); +/* harmony import */ var _internal_operators_race__WEBPACK_IMPORTED_MODULE_59__ = __webpack_require__(524); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "race", function() { return _internal_operators_race__WEBPACK_IMPORTED_MODULE_59__["race"]; }); -/* harmony import */ var _internal_operators_reduce__WEBPACK_IMPORTED_MODULE_60__ = __webpack_require__(504); +/* harmony import */ var _internal_operators_reduce__WEBPACK_IMPORTED_MODULE_60__ = __webpack_require__(509); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "reduce", function() { return _internal_operators_reduce__WEBPACK_IMPORTED_MODULE_60__["reduce"]; }); -/* harmony import */ var _internal_operators_repeat__WEBPACK_IMPORTED_MODULE_61__ = __webpack_require__(520); +/* harmony import */ var _internal_operators_repeat__WEBPACK_IMPORTED_MODULE_61__ = __webpack_require__(525); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "repeat", function() { return _internal_operators_repeat__WEBPACK_IMPORTED_MODULE_61__["repeat"]; }); -/* harmony import */ var _internal_operators_repeatWhen__WEBPACK_IMPORTED_MODULE_62__ = __webpack_require__(521); +/* harmony import */ var _internal_operators_repeatWhen__WEBPACK_IMPORTED_MODULE_62__ = __webpack_require__(526); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "repeatWhen", function() { return _internal_operators_repeatWhen__WEBPACK_IMPORTED_MODULE_62__["repeatWhen"]; }); -/* harmony import */ var _internal_operators_retry__WEBPACK_IMPORTED_MODULE_63__ = __webpack_require__(522); +/* harmony import */ var _internal_operators_retry__WEBPACK_IMPORTED_MODULE_63__ = __webpack_require__(527); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "retry", function() { return _internal_operators_retry__WEBPACK_IMPORTED_MODULE_63__["retry"]; }); -/* harmony import */ var _internal_operators_retryWhen__WEBPACK_IMPORTED_MODULE_64__ = __webpack_require__(523); +/* harmony import */ var _internal_operators_retryWhen__WEBPACK_IMPORTED_MODULE_64__ = __webpack_require__(528); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "retryWhen", function() { return _internal_operators_retryWhen__WEBPACK_IMPORTED_MODULE_64__["retryWhen"]; }); /* harmony import */ var _internal_operators_refCount__WEBPACK_IMPORTED_MODULE_65__ = __webpack_require__(30); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "refCount", function() { return _internal_operators_refCount__WEBPACK_IMPORTED_MODULE_65__["refCount"]; }); -/* harmony import */ var _internal_operators_sample__WEBPACK_IMPORTED_MODULE_66__ = __webpack_require__(524); +/* harmony import */ var _internal_operators_sample__WEBPACK_IMPORTED_MODULE_66__ = __webpack_require__(529); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "sample", function() { return _internal_operators_sample__WEBPACK_IMPORTED_MODULE_66__["sample"]; }); -/* harmony import */ var _internal_operators_sampleTime__WEBPACK_IMPORTED_MODULE_67__ = __webpack_require__(525); +/* harmony import */ var _internal_operators_sampleTime__WEBPACK_IMPORTED_MODULE_67__ = __webpack_require__(530); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "sampleTime", function() { return _internal_operators_sampleTime__WEBPACK_IMPORTED_MODULE_67__["sampleTime"]; }); -/* harmony import */ var _internal_operators_scan__WEBPACK_IMPORTED_MODULE_68__ = __webpack_require__(505); +/* harmony import */ var _internal_operators_scan__WEBPACK_IMPORTED_MODULE_68__ = __webpack_require__(510); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "scan", function() { return _internal_operators_scan__WEBPACK_IMPORTED_MODULE_68__["scan"]; }); -/* harmony import */ var _internal_operators_sequenceEqual__WEBPACK_IMPORTED_MODULE_69__ = __webpack_require__(526); +/* harmony import */ var _internal_operators_sequenceEqual__WEBPACK_IMPORTED_MODULE_69__ = __webpack_require__(531); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "sequenceEqual", function() { return _internal_operators_sequenceEqual__WEBPACK_IMPORTED_MODULE_69__["sequenceEqual"]; }); -/* harmony import */ var _internal_operators_share__WEBPACK_IMPORTED_MODULE_70__ = __webpack_require__(527); +/* harmony import */ var _internal_operators_share__WEBPACK_IMPORTED_MODULE_70__ = __webpack_require__(532); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "share", function() { return _internal_operators_share__WEBPACK_IMPORTED_MODULE_70__["share"]; }); -/* harmony import */ var _internal_operators_shareReplay__WEBPACK_IMPORTED_MODULE_71__ = __webpack_require__(528); +/* harmony import */ var _internal_operators_shareReplay__WEBPACK_IMPORTED_MODULE_71__ = __webpack_require__(533); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "shareReplay", function() { return _internal_operators_shareReplay__WEBPACK_IMPORTED_MODULE_71__["shareReplay"]; }); -/* harmony import */ var _internal_operators_single__WEBPACK_IMPORTED_MODULE_72__ = __webpack_require__(529); +/* harmony import */ var _internal_operators_single__WEBPACK_IMPORTED_MODULE_72__ = __webpack_require__(534); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "single", function() { return _internal_operators_single__WEBPACK_IMPORTED_MODULE_72__["single"]; }); -/* harmony import */ var _internal_operators_skip__WEBPACK_IMPORTED_MODULE_73__ = __webpack_require__(530); +/* harmony import */ var _internal_operators_skip__WEBPACK_IMPORTED_MODULE_73__ = __webpack_require__(535); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "skip", function() { return _internal_operators_skip__WEBPACK_IMPORTED_MODULE_73__["skip"]; }); -/* harmony import */ var _internal_operators_skipLast__WEBPACK_IMPORTED_MODULE_74__ = __webpack_require__(531); +/* harmony import */ var _internal_operators_skipLast__WEBPACK_IMPORTED_MODULE_74__ = __webpack_require__(536); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "skipLast", function() { return _internal_operators_skipLast__WEBPACK_IMPORTED_MODULE_74__["skipLast"]; }); -/* harmony import */ var _internal_operators_skipUntil__WEBPACK_IMPORTED_MODULE_75__ = __webpack_require__(532); +/* harmony import */ var _internal_operators_skipUntil__WEBPACK_IMPORTED_MODULE_75__ = __webpack_require__(537); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "skipUntil", function() { return _internal_operators_skipUntil__WEBPACK_IMPORTED_MODULE_75__["skipUntil"]; }); -/* harmony import */ var _internal_operators_skipWhile__WEBPACK_IMPORTED_MODULE_76__ = __webpack_require__(533); +/* harmony import */ var _internal_operators_skipWhile__WEBPACK_IMPORTED_MODULE_76__ = __webpack_require__(538); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "skipWhile", function() { return _internal_operators_skipWhile__WEBPACK_IMPORTED_MODULE_76__["skipWhile"]; }); -/* harmony import */ var _internal_operators_startWith__WEBPACK_IMPORTED_MODULE_77__ = __webpack_require__(534); +/* harmony import */ var _internal_operators_startWith__WEBPACK_IMPORTED_MODULE_77__ = __webpack_require__(539); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "startWith", function() { return _internal_operators_startWith__WEBPACK_IMPORTED_MODULE_77__["startWith"]; }); -/* harmony import */ var _internal_operators_subscribeOn__WEBPACK_IMPORTED_MODULE_78__ = __webpack_require__(535); +/* harmony import */ var _internal_operators_subscribeOn__WEBPACK_IMPORTED_MODULE_78__ = __webpack_require__(540); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "subscribeOn", function() { return _internal_operators_subscribeOn__WEBPACK_IMPORTED_MODULE_78__["subscribeOn"]; }); -/* harmony import */ var _internal_operators_switchAll__WEBPACK_IMPORTED_MODULE_79__ = __webpack_require__(537); +/* harmony import */ var _internal_operators_switchAll__WEBPACK_IMPORTED_MODULE_79__ = __webpack_require__(542); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "switchAll", function() { return _internal_operators_switchAll__WEBPACK_IMPORTED_MODULE_79__["switchAll"]; }); -/* harmony import */ var _internal_operators_switchMap__WEBPACK_IMPORTED_MODULE_80__ = __webpack_require__(538); +/* harmony import */ var _internal_operators_switchMap__WEBPACK_IMPORTED_MODULE_80__ = __webpack_require__(543); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "switchMap", function() { return _internal_operators_switchMap__WEBPACK_IMPORTED_MODULE_80__["switchMap"]; }); -/* harmony import */ var _internal_operators_switchMapTo__WEBPACK_IMPORTED_MODULE_81__ = __webpack_require__(539); +/* harmony import */ var _internal_operators_switchMapTo__WEBPACK_IMPORTED_MODULE_81__ = __webpack_require__(544); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "switchMapTo", function() { return _internal_operators_switchMapTo__WEBPACK_IMPORTED_MODULE_81__["switchMapTo"]; }); -/* harmony import */ var _internal_operators_take__WEBPACK_IMPORTED_MODULE_82__ = __webpack_require__(487); +/* harmony import */ var _internal_operators_take__WEBPACK_IMPORTED_MODULE_82__ = __webpack_require__(492); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "take", function() { return _internal_operators_take__WEBPACK_IMPORTED_MODULE_82__["take"]; }); -/* harmony import */ var _internal_operators_takeLast__WEBPACK_IMPORTED_MODULE_83__ = __webpack_require__(500); +/* harmony import */ var _internal_operators_takeLast__WEBPACK_IMPORTED_MODULE_83__ = __webpack_require__(505); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "takeLast", function() { return _internal_operators_takeLast__WEBPACK_IMPORTED_MODULE_83__["takeLast"]; }); -/* harmony import */ var _internal_operators_takeUntil__WEBPACK_IMPORTED_MODULE_84__ = __webpack_require__(540); +/* harmony import */ var _internal_operators_takeUntil__WEBPACK_IMPORTED_MODULE_84__ = __webpack_require__(545); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "takeUntil", function() { return _internal_operators_takeUntil__WEBPACK_IMPORTED_MODULE_84__["takeUntil"]; }); -/* harmony import */ var _internal_operators_takeWhile__WEBPACK_IMPORTED_MODULE_85__ = __webpack_require__(541); +/* harmony import */ var _internal_operators_takeWhile__WEBPACK_IMPORTED_MODULE_85__ = __webpack_require__(546); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "takeWhile", function() { return _internal_operators_takeWhile__WEBPACK_IMPORTED_MODULE_85__["takeWhile"]; }); -/* harmony import */ var _internal_operators_tap__WEBPACK_IMPORTED_MODULE_86__ = __webpack_require__(542); +/* harmony import */ var _internal_operators_tap__WEBPACK_IMPORTED_MODULE_86__ = __webpack_require__(547); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "tap", function() { return _internal_operators_tap__WEBPACK_IMPORTED_MODULE_86__["tap"]; }); -/* harmony import */ var _internal_operators_throttle__WEBPACK_IMPORTED_MODULE_87__ = __webpack_require__(543); +/* harmony import */ var _internal_operators_throttle__WEBPACK_IMPORTED_MODULE_87__ = __webpack_require__(548); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "throttle", function() { return _internal_operators_throttle__WEBPACK_IMPORTED_MODULE_87__["throttle"]; }); -/* harmony import */ var _internal_operators_throttleTime__WEBPACK_IMPORTED_MODULE_88__ = __webpack_require__(544); +/* harmony import */ var _internal_operators_throttleTime__WEBPACK_IMPORTED_MODULE_88__ = __webpack_require__(549); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "throttleTime", function() { return _internal_operators_throttleTime__WEBPACK_IMPORTED_MODULE_88__["throttleTime"]; }); -/* harmony import */ var _internal_operators_throwIfEmpty__WEBPACK_IMPORTED_MODULE_89__ = __webpack_require__(486); +/* harmony import */ var _internal_operators_throwIfEmpty__WEBPACK_IMPORTED_MODULE_89__ = __webpack_require__(491); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "throwIfEmpty", function() { return _internal_operators_throwIfEmpty__WEBPACK_IMPORTED_MODULE_89__["throwIfEmpty"]; }); -/* harmony import */ var _internal_operators_timeInterval__WEBPACK_IMPORTED_MODULE_90__ = __webpack_require__(545); +/* harmony import */ var _internal_operators_timeInterval__WEBPACK_IMPORTED_MODULE_90__ = __webpack_require__(550); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "timeInterval", function() { return _internal_operators_timeInterval__WEBPACK_IMPORTED_MODULE_90__["timeInterval"]; }); -/* harmony import */ var _internal_operators_timeout__WEBPACK_IMPORTED_MODULE_91__ = __webpack_require__(546); +/* harmony import */ var _internal_operators_timeout__WEBPACK_IMPORTED_MODULE_91__ = __webpack_require__(551); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "timeout", function() { return _internal_operators_timeout__WEBPACK_IMPORTED_MODULE_91__["timeout"]; }); -/* harmony import */ var _internal_operators_timeoutWith__WEBPACK_IMPORTED_MODULE_92__ = __webpack_require__(547); +/* harmony import */ var _internal_operators_timeoutWith__WEBPACK_IMPORTED_MODULE_92__ = __webpack_require__(552); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "timeoutWith", function() { return _internal_operators_timeoutWith__WEBPACK_IMPORTED_MODULE_92__["timeoutWith"]; }); -/* harmony import */ var _internal_operators_timestamp__WEBPACK_IMPORTED_MODULE_93__ = __webpack_require__(548); +/* harmony import */ var _internal_operators_timestamp__WEBPACK_IMPORTED_MODULE_93__ = __webpack_require__(553); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "timestamp", function() { return _internal_operators_timestamp__WEBPACK_IMPORTED_MODULE_93__["timestamp"]; }); -/* harmony import */ var _internal_operators_toArray__WEBPACK_IMPORTED_MODULE_94__ = __webpack_require__(549); +/* harmony import */ var _internal_operators_toArray__WEBPACK_IMPORTED_MODULE_94__ = __webpack_require__(554); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "toArray", function() { return _internal_operators_toArray__WEBPACK_IMPORTED_MODULE_94__["toArray"]; }); -/* harmony import */ var _internal_operators_window__WEBPACK_IMPORTED_MODULE_95__ = __webpack_require__(550); +/* harmony import */ var _internal_operators_window__WEBPACK_IMPORTED_MODULE_95__ = __webpack_require__(555); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "window", function() { return _internal_operators_window__WEBPACK_IMPORTED_MODULE_95__["window"]; }); -/* harmony import */ var _internal_operators_windowCount__WEBPACK_IMPORTED_MODULE_96__ = __webpack_require__(551); +/* harmony import */ var _internal_operators_windowCount__WEBPACK_IMPORTED_MODULE_96__ = __webpack_require__(556); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "windowCount", function() { return _internal_operators_windowCount__WEBPACK_IMPORTED_MODULE_96__["windowCount"]; }); -/* harmony import */ var _internal_operators_windowTime__WEBPACK_IMPORTED_MODULE_97__ = __webpack_require__(552); +/* harmony import */ var _internal_operators_windowTime__WEBPACK_IMPORTED_MODULE_97__ = __webpack_require__(557); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "windowTime", function() { return _internal_operators_windowTime__WEBPACK_IMPORTED_MODULE_97__["windowTime"]; }); -/* harmony import */ var _internal_operators_windowToggle__WEBPACK_IMPORTED_MODULE_98__ = __webpack_require__(553); +/* harmony import */ var _internal_operators_windowToggle__WEBPACK_IMPORTED_MODULE_98__ = __webpack_require__(558); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "windowToggle", function() { return _internal_operators_windowToggle__WEBPACK_IMPORTED_MODULE_98__["windowToggle"]; }); -/* harmony import */ var _internal_operators_windowWhen__WEBPACK_IMPORTED_MODULE_99__ = __webpack_require__(554); +/* harmony import */ var _internal_operators_windowWhen__WEBPACK_IMPORTED_MODULE_99__ = __webpack_require__(559); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "windowWhen", function() { return _internal_operators_windowWhen__WEBPACK_IMPORTED_MODULE_99__["windowWhen"]; }); -/* harmony import */ var _internal_operators_withLatestFrom__WEBPACK_IMPORTED_MODULE_100__ = __webpack_require__(555); +/* harmony import */ var _internal_operators_withLatestFrom__WEBPACK_IMPORTED_MODULE_100__ = __webpack_require__(560); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "withLatestFrom", function() { return _internal_operators_withLatestFrom__WEBPACK_IMPORTED_MODULE_100__["withLatestFrom"]; }); -/* harmony import */ var _internal_operators_zip__WEBPACK_IMPORTED_MODULE_101__ = __webpack_require__(556); +/* harmony import */ var _internal_operators_zip__WEBPACK_IMPORTED_MODULE_101__ = __webpack_require__(561); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "zip", function() { return _internal_operators_zip__WEBPACK_IMPORTED_MODULE_101__["zip"]; }); -/* harmony import */ var _internal_operators_zipAll__WEBPACK_IMPORTED_MODULE_102__ = __webpack_require__(557); +/* harmony import */ var _internal_operators_zipAll__WEBPACK_IMPORTED_MODULE_102__ = __webpack_require__(562); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "zipAll", function() { return _internal_operators_zipAll__WEBPACK_IMPORTED_MODULE_102__["zipAll"]; }); /** PURE_IMPORTS_START PURE_IMPORTS_END */ @@ -52553,7 +53016,7 @@ __webpack_require__.r(__webpack_exports__); /***/ }), -/* 461 */ +/* 466 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -52632,14 +53095,14 @@ var AuditSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 462 */ +/* 467 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "auditTime", function() { return auditTime; }); /* harmony import */ var _scheduler_async__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(55); -/* harmony import */ var _audit__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(461); +/* harmony import */ var _audit__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(466); /* harmony import */ var _observable_timer__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(108); /** PURE_IMPORTS_START _scheduler_async,_audit,_observable_timer PURE_IMPORTS_END */ @@ -52655,7 +53118,7 @@ function auditTime(duration, scheduler) { /***/ }), -/* 463 */ +/* 468 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -52702,7 +53165,7 @@ var BufferSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 464 */ +/* 469 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -52803,7 +53266,7 @@ var BufferSkipCountSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 465 */ +/* 470 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -52964,7 +53427,7 @@ function dispatchBufferClose(arg) { /***/ }), -/* 466 */ +/* 471 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -53083,7 +53546,7 @@ var BufferToggleSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 467 */ +/* 472 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -53176,7 +53639,7 @@ var BufferWhenSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 468 */ +/* 473 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -53236,7 +53699,7 @@ var CatchSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 469 */ +/* 474 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -53252,7 +53715,7 @@ function combineAll(project) { /***/ }), -/* 470 */ +/* 475 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -53284,7 +53747,7 @@ function combineLatest() { /***/ }), -/* 471 */ +/* 476 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -53304,7 +53767,7 @@ function concat() { /***/ }), -/* 472 */ +/* 477 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -53320,13 +53783,13 @@ function concatMap(project, resultSelector) { /***/ }), -/* 473 */ +/* 478 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "concatMapTo", function() { return concatMapTo; }); -/* harmony import */ var _concatMap__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(472); +/* harmony import */ var _concatMap__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(477); /** PURE_IMPORTS_START _concatMap PURE_IMPORTS_END */ function concatMapTo(innerObservable, resultSelector) { @@ -53336,7 +53799,7 @@ function concatMapTo(innerObservable, resultSelector) { /***/ }), -/* 474 */ +/* 479 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -53401,7 +53864,7 @@ var CountSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 475 */ +/* 480 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -53486,7 +53949,7 @@ var DebounceSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 476 */ +/* 481 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -53562,7 +54025,7 @@ function dispatchNext(subscriber) { /***/ }), -/* 477 */ +/* 482 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -53612,7 +54075,7 @@ var DefaultIfEmptySubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 478 */ +/* 483 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -53620,7 +54083,7 @@ __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "delay", function() { return delay; }); /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(12); /* harmony import */ var _scheduler_async__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(55); -/* harmony import */ var _util_isDate__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(479); +/* harmony import */ var _util_isDate__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(484); /* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(11); /* harmony import */ var _Notification__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(42); /** PURE_IMPORTS_START tslib,_scheduler_async,_util_isDate,_Subscriber,_Notification PURE_IMPORTS_END */ @@ -53719,7 +54182,7 @@ var DelayMessage = /*@__PURE__*/ (function () { /***/ }), -/* 479 */ +/* 484 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -53733,7 +54196,7 @@ function isDate(value) { /***/ }), -/* 480 */ +/* 485 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -53879,7 +54342,7 @@ var SubscriptionDelaySubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 481 */ +/* 486 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -53917,7 +54380,7 @@ var DeMaterializeSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 482 */ +/* 487 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -53993,7 +54456,7 @@ var DistinctSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 483 */ +/* 488 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -54064,13 +54527,13 @@ var DistinctUntilChangedSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 484 */ +/* 489 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "distinctUntilKeyChanged", function() { return distinctUntilKeyChanged; }); -/* harmony import */ var _distinctUntilChanged__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(483); +/* harmony import */ var _distinctUntilChanged__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(488); /** PURE_IMPORTS_START _distinctUntilChanged PURE_IMPORTS_END */ function distinctUntilKeyChanged(key, compare) { @@ -54080,7 +54543,7 @@ function distinctUntilKeyChanged(key, compare) { /***/ }), -/* 485 */ +/* 490 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -54088,9 +54551,9 @@ __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "elementAt", function() { return elementAt; }); /* harmony import */ var _util_ArgumentOutOfRangeError__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(62); /* harmony import */ var _filter__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(105); -/* harmony import */ var _throwIfEmpty__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(486); -/* harmony import */ var _defaultIfEmpty__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(477); -/* harmony import */ var _take__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(487); +/* harmony import */ var _throwIfEmpty__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(491); +/* harmony import */ var _defaultIfEmpty__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(482); +/* harmony import */ var _take__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(492); /** PURE_IMPORTS_START _util_ArgumentOutOfRangeError,_filter,_throwIfEmpty,_defaultIfEmpty,_take PURE_IMPORTS_END */ @@ -54112,7 +54575,7 @@ function elementAt(index, defaultValue) { /***/ }), -/* 486 */ +/* 491 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -54178,7 +54641,7 @@ function defaultErrorFactory() { /***/ }), -/* 487 */ +/* 492 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -54240,7 +54703,7 @@ var TakeSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 488 */ +/* 493 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -54262,7 +54725,7 @@ function endWith() { /***/ }), -/* 489 */ +/* 494 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -54324,7 +54787,7 @@ var EverySubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 490 */ +/* 495 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -54378,7 +54841,7 @@ var SwitchFirstSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 491 */ +/* 496 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -54472,7 +54935,7 @@ var ExhaustMapSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 492 */ +/* 497 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -54584,7 +55047,7 @@ var ExpandSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 493 */ +/* 498 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -54622,7 +55085,7 @@ var FinallySubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 494 */ +/* 499 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -54694,13 +55157,13 @@ var FindValueSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 495 */ +/* 500 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "findIndex", function() { return findIndex; }); -/* harmony import */ var _operators_find__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(494); +/* harmony import */ var _operators_find__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(499); /** PURE_IMPORTS_START _operators_find PURE_IMPORTS_END */ function findIndex(predicate, thisArg) { @@ -54710,7 +55173,7 @@ function findIndex(predicate, thisArg) { /***/ }), -/* 496 */ +/* 501 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -54718,9 +55181,9 @@ __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "first", function() { return first; }); /* harmony import */ var _util_EmptyError__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(63); /* harmony import */ var _filter__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(105); -/* harmony import */ var _take__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(487); -/* harmony import */ var _defaultIfEmpty__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(477); -/* harmony import */ var _throwIfEmpty__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(486); +/* harmony import */ var _take__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(492); +/* harmony import */ var _defaultIfEmpty__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(482); +/* harmony import */ var _throwIfEmpty__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(491); /* harmony import */ var _util_identity__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(25); /** PURE_IMPORTS_START _util_EmptyError,_filter,_take,_defaultIfEmpty,_throwIfEmpty,_util_identity PURE_IMPORTS_END */ @@ -54737,7 +55200,7 @@ function first(predicate, defaultValue) { /***/ }), -/* 497 */ +/* 502 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -54774,7 +55237,7 @@ var IgnoreElementsSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 498 */ +/* 503 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -54818,7 +55281,7 @@ var IsEmptySubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 499 */ +/* 504 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -54826,9 +55289,9 @@ __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "last", function() { return last; }); /* harmony import */ var _util_EmptyError__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(63); /* harmony import */ var _filter__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(105); -/* harmony import */ var _takeLast__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(500); -/* harmony import */ var _throwIfEmpty__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(486); -/* harmony import */ var _defaultIfEmpty__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(477); +/* harmony import */ var _takeLast__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(505); +/* harmony import */ var _throwIfEmpty__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(491); +/* harmony import */ var _defaultIfEmpty__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(482); /* harmony import */ var _util_identity__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(25); /** PURE_IMPORTS_START _util_EmptyError,_filter,_takeLast,_throwIfEmpty,_defaultIfEmpty,_util_identity PURE_IMPORTS_END */ @@ -54845,7 +55308,7 @@ function last(predicate, defaultValue) { /***/ }), -/* 500 */ +/* 505 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -54922,7 +55385,7 @@ var TakeLastSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 501 */ +/* 506 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -54961,7 +55424,7 @@ var MapToSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 502 */ +/* 507 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -55011,13 +55474,13 @@ var MaterializeSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 503 */ +/* 508 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "max", function() { return max; }); -/* harmony import */ var _reduce__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(504); +/* harmony import */ var _reduce__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(509); /** PURE_IMPORTS_START _reduce PURE_IMPORTS_END */ function max(comparer) { @@ -55030,15 +55493,15 @@ function max(comparer) { /***/ }), -/* 504 */ +/* 509 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "reduce", function() { return reduce; }); -/* harmony import */ var _scan__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(505); -/* harmony import */ var _takeLast__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(500); -/* harmony import */ var _defaultIfEmpty__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(477); +/* harmony import */ var _scan__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(510); +/* harmony import */ var _takeLast__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(505); +/* harmony import */ var _defaultIfEmpty__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(482); /* harmony import */ var _util_pipe__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(24); /** PURE_IMPORTS_START _scan,_takeLast,_defaultIfEmpty,_util_pipe PURE_IMPORTS_END */ @@ -55059,7 +55522,7 @@ function reduce(accumulator, seed) { /***/ }), -/* 505 */ +/* 510 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -55141,7 +55604,7 @@ var ScanSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 506 */ +/* 511 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -55161,7 +55624,7 @@ function merge() { /***/ }), -/* 507 */ +/* 512 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -55186,7 +55649,7 @@ function mergeMapTo(innerObservable, resultSelector, concurrent) { /***/ }), -/* 508 */ +/* 513 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -55295,13 +55758,13 @@ var MergeScanSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 509 */ +/* 514 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "min", function() { return min; }); -/* harmony import */ var _reduce__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(504); +/* harmony import */ var _reduce__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(509); /** PURE_IMPORTS_START _reduce PURE_IMPORTS_END */ function min(comparer) { @@ -55314,7 +55777,7 @@ function min(comparer) { /***/ }), -/* 510 */ +/* 515 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -55363,7 +55826,7 @@ var MulticastOperator = /*@__PURE__*/ (function () { /***/ }), -/* 511 */ +/* 516 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -55453,7 +55916,7 @@ var OnErrorResumeNextSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 512 */ +/* 517 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -55501,7 +55964,7 @@ var PairwiseSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 513 */ +/* 518 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -55524,7 +55987,7 @@ function partition(predicate, thisArg) { /***/ }), -/* 514 */ +/* 519 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -55564,14 +56027,14 @@ function plucker(props, length) { /***/ }), -/* 515 */ +/* 520 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "publish", function() { return publish; }); /* harmony import */ var _Subject__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(27); -/* harmony import */ var _multicast__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(510); +/* harmony import */ var _multicast__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(515); /** PURE_IMPORTS_START _Subject,_multicast PURE_IMPORTS_END */ @@ -55584,14 +56047,14 @@ function publish(selector) { /***/ }), -/* 516 */ +/* 521 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "publishBehavior", function() { return publishBehavior; }); /* harmony import */ var _BehaviorSubject__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(32); -/* harmony import */ var _multicast__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(510); +/* harmony import */ var _multicast__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(515); /** PURE_IMPORTS_START _BehaviorSubject,_multicast PURE_IMPORTS_END */ @@ -55602,14 +56065,14 @@ function publishBehavior(value) { /***/ }), -/* 517 */ +/* 522 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "publishLast", function() { return publishLast; }); /* harmony import */ var _AsyncSubject__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(50); -/* harmony import */ var _multicast__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(510); +/* harmony import */ var _multicast__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(515); /** PURE_IMPORTS_START _AsyncSubject,_multicast PURE_IMPORTS_END */ @@ -55620,14 +56083,14 @@ function publishLast() { /***/ }), -/* 518 */ +/* 523 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "publishReplay", function() { return publishReplay; }); /* harmony import */ var _ReplaySubject__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(33); -/* harmony import */ var _multicast__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(510); +/* harmony import */ var _multicast__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(515); /** PURE_IMPORTS_START _ReplaySubject,_multicast PURE_IMPORTS_END */ @@ -55643,7 +56106,7 @@ function publishReplay(bufferSize, windowTime, selectorOrScheduler, scheduler) { /***/ }), -/* 519 */ +/* 524 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -55670,7 +56133,7 @@ function race() { /***/ }), -/* 520 */ +/* 525 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -55735,7 +56198,7 @@ var RepeatSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 521 */ +/* 526 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -55829,7 +56292,7 @@ var RepeatWhenSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 522 */ +/* 527 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -55882,7 +56345,7 @@ var RetrySubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 523 */ +/* 528 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -55968,7 +56431,7 @@ var RetryWhenSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 524 */ +/* 529 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -56023,7 +56486,7 @@ var SampleSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 525 */ +/* 530 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -56083,7 +56546,7 @@ function dispatchNotification(state) { /***/ }), -/* 526 */ +/* 531 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -56206,13 +56669,13 @@ var SequenceEqualCompareToSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 527 */ +/* 532 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "share", function() { return share; }); -/* harmony import */ var _multicast__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(510); +/* harmony import */ var _multicast__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(515); /* harmony import */ var _refCount__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(30); /* harmony import */ var _Subject__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(27); /** PURE_IMPORTS_START _multicast,_refCount,_Subject PURE_IMPORTS_END */ @@ -56229,7 +56692,7 @@ function share() { /***/ }), -/* 528 */ +/* 533 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -56304,7 +56767,7 @@ function shareReplayOperator(_a) { /***/ }), -/* 529 */ +/* 534 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -56384,7 +56847,7 @@ var SingleSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 530 */ +/* 535 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -56426,7 +56889,7 @@ var SkipSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 531 */ +/* 536 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -56488,7 +56951,7 @@ var SkipLastSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 532 */ +/* 537 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -56545,7 +57008,7 @@ var SkipUntilSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 533 */ +/* 538 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -56601,7 +57064,7 @@ var SkipWhileSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 534 */ +/* 539 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -56630,13 +57093,13 @@ function startWith() { /***/ }), -/* 535 */ +/* 540 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "subscribeOn", function() { return subscribeOn; }); -/* harmony import */ var _observable_SubscribeOnObservable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(536); +/* harmony import */ var _observable_SubscribeOnObservable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(541); /** PURE_IMPORTS_START _observable_SubscribeOnObservable PURE_IMPORTS_END */ function subscribeOn(scheduler, delay) { @@ -56661,7 +57124,7 @@ var SubscribeOnOperator = /*@__PURE__*/ (function () { /***/ }), -/* 536 */ +/* 541 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -56725,13 +57188,13 @@ var SubscribeOnObservable = /*@__PURE__*/ (function (_super) { /***/ }), -/* 537 */ +/* 542 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "switchAll", function() { return switchAll; }); -/* harmony import */ var _switchMap__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(538); +/* harmony import */ var _switchMap__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(543); /* harmony import */ var _util_identity__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(25); /** PURE_IMPORTS_START _switchMap,_util_identity PURE_IMPORTS_END */ @@ -56743,7 +57206,7 @@ function switchAll() { /***/ }), -/* 538 */ +/* 543 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -56831,13 +57294,13 @@ var SwitchMapSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 539 */ +/* 544 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "switchMapTo", function() { return switchMapTo; }); -/* harmony import */ var _switchMap__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(538); +/* harmony import */ var _switchMap__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(543); /** PURE_IMPORTS_START _switchMap PURE_IMPORTS_END */ function switchMapTo(innerObservable, resultSelector) { @@ -56847,7 +57310,7 @@ function switchMapTo(innerObservable, resultSelector) { /***/ }), -/* 540 */ +/* 545 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -56895,7 +57358,7 @@ var TakeUntilSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 541 */ +/* 546 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -56963,7 +57426,7 @@ var TakeWhileSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 542 */ +/* 547 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -57051,7 +57514,7 @@ var TapSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 543 */ +/* 548 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -57153,7 +57616,7 @@ var ThrottleSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 544 */ +/* 549 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -57162,7 +57625,7 @@ __webpack_require__.r(__webpack_exports__); /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(12); /* harmony import */ var _Subscriber__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(11); /* harmony import */ var _scheduler_async__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(55); -/* harmony import */ var _throttle__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(543); +/* harmony import */ var _throttle__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(548); /** PURE_IMPORTS_START tslib,_Subscriber,_scheduler_async,_throttle PURE_IMPORTS_END */ @@ -57251,7 +57714,7 @@ function dispatchNext(arg) { /***/ }), -/* 545 */ +/* 550 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -57259,7 +57722,7 @@ __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "timeInterval", function() { return timeInterval; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "TimeInterval", function() { return TimeInterval; }); /* harmony import */ var _scheduler_async__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(55); -/* harmony import */ var _scan__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(505); +/* harmony import */ var _scan__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(510); /* harmony import */ var _observable_defer__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(91); /* harmony import */ var _map__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(66); /** PURE_IMPORTS_START _scheduler_async,_scan,_observable_defer,_map PURE_IMPORTS_END */ @@ -57295,7 +57758,7 @@ var TimeInterval = /*@__PURE__*/ (function () { /***/ }), -/* 546 */ +/* 551 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -57303,7 +57766,7 @@ __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "timeout", function() { return timeout; }); /* harmony import */ var _scheduler_async__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(55); /* harmony import */ var _util_TimeoutError__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(64); -/* harmony import */ var _timeoutWith__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(547); +/* harmony import */ var _timeoutWith__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(552); /* harmony import */ var _observable_throwError__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(49); /** PURE_IMPORTS_START _scheduler_async,_util_TimeoutError,_timeoutWith,_observable_throwError PURE_IMPORTS_END */ @@ -57320,7 +57783,7 @@ function timeout(due, scheduler) { /***/ }), -/* 547 */ +/* 552 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -57328,7 +57791,7 @@ __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "timeoutWith", function() { return timeoutWith; }); /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(12); /* harmony import */ var _scheduler_async__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(55); -/* harmony import */ var _util_isDate__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(479); +/* harmony import */ var _util_isDate__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(484); /* harmony import */ var _innerSubscribe__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(90); /** PURE_IMPORTS_START tslib,_scheduler_async,_util_isDate,_innerSubscribe PURE_IMPORTS_END */ @@ -57399,7 +57862,7 @@ var TimeoutWithSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 548 */ +/* 553 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -57429,13 +57892,13 @@ var Timestamp = /*@__PURE__*/ (function () { /***/ }), -/* 549 */ +/* 554 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "toArray", function() { return toArray; }); -/* harmony import */ var _reduce__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(504); +/* harmony import */ var _reduce__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(509); /** PURE_IMPORTS_START _reduce PURE_IMPORTS_END */ function toArrayReducer(arr, item, index) { @@ -57452,7 +57915,7 @@ function toArray() { /***/ }), -/* 550 */ +/* 555 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -57530,7 +57993,7 @@ var WindowSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 551 */ +/* 556 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -57620,7 +58083,7 @@ var WindowCountSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 552 */ +/* 557 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -57790,7 +58253,7 @@ function dispatchWindowClose(state) { /***/ }), -/* 553 */ +/* 558 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -57933,7 +58396,7 @@ var WindowToggleSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 554 */ +/* 559 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -58030,7 +58493,7 @@ var WindowSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 555 */ +/* 560 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -58125,7 +58588,7 @@ var WithLatestFromSubscriber = /*@__PURE__*/ (function (_super) { /***/ }), -/* 556 */ +/* 561 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -58147,7 +58610,7 @@ function zip() { /***/ }), -/* 557 */ +/* 562 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -58163,7 +58626,7 @@ function zipAll(project) { /***/ }), -/* 558 */ +/* 563 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -58173,17 +58636,11 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.runCommand = runCommand; - var _errors = __webpack_require__(164); - var _log = __webpack_require__(145); - var _projects = __webpack_require__(147); - -var _projects_tree = __webpack_require__(343); - -var _opensearch_dashboards = __webpack_require__(559); - +var _projects_tree = __webpack_require__(349); +var _opensearch_dashboards = __webpack_require__(564); /* * SPDX-License-Identifier: Apache-2.0 * @@ -58213,10 +58670,10 @@ var _opensearch_dashboards = __webpack_require__(559); * specific language governing permissions and limitations * under the License. */ + async function runCommand(command, config) { try { _log.log.debug(`Running [${command.name}] command from [${config.rootPath}]`); - const osd = await _opensearch_dashboards.OpenSearchDashboards.loadFrom(config.rootPath); const projects = osd.getFilteredProjects({ skipOpenSearchDashboardsPlugins: Boolean(config.options['skip-opensearch-dashboards-plugins']), @@ -58224,57 +58681,43 @@ async function runCommand(command, config) { exclude: toArray(config.options.exclude), include: toArray(config.options.include) }); - if (projects.size === 0) { _log.log.error(`There are no projects found. Double check project name(s) in '-i/--include' and '-e/--exclude' filters.`); - return process.exit(1); } - const projectGraph = (0, _projects.buildProjectGraph)(projects); - _log.log.debug(`Found ${projects.size.toString()} projects`); - _log.log.debug((0, _projects_tree.renderProjectsTree)(config.rootPath, projects)); - - await command.run(projects, projectGraph, { ...config, + await command.run(projects, projectGraph, { + ...config, osd }); } catch (error) { _log.log.error(`[${command.name}] failed:`); - if (error instanceof _errors.CliError) { _log.log.error(error.message); - const metaOutput = Object.entries(error.meta).map(([key, value]) => `${key}: ${value}`).join('\n'); - if (metaOutput) { _log.log.info('Additional debugging info:\n'); - _log.log.indent(2); - _log.log.info(metaOutput); - _log.log.indent(-2); } } else { _log.log.error(error); } - process.exit(1); } } - function toArray(value) { if (value == null) { return []; } - return Array.isArray(value) ? value : [value]; } /***/ }), -/* 559 */ +/* 564 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -58284,23 +58727,42 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.OpenSearchDashboards = void 0; - var _path = _interopRequireDefault(__webpack_require__(4)); - -var _multimatch = _interopRequireDefault(__webpack_require__(560)); - -var _isPathInside = _interopRequireDefault(__webpack_require__(428)); - -var _yarn_lock = __webpack_require__(333); - +var _multimatch = _interopRequireDefault(__webpack_require__(565)); +var _isPathInside = _interopRequireDefault(__webpack_require__(434)); +var _yarn_lock = __webpack_require__(339); var _projects = __webpack_require__(147); - -var _config = __webpack_require__(330); - +var _config = __webpack_require__(336); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } - +function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } +function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); } +function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } /* + * SPDX-License-Identifier: Apache-2.0 + * + * The OpenSearch Contributors require contributions made to + * this file be licensed under the Apache-2.0 license or a + * compatible open source license. + * + * Any modifications Copyright OpenSearch Contributors. See + * GitHub history for details. + */ /* + * Licensed to Elasticsearch B.V. under one or more contributor + * license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright + * ownership. Elasticsearch B.V. licenses this file to you under + * the Apache License, Version 2.0 (the "License"); you may + * not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ /** * Helper class for dealing with a set of projects as children of * the OpenSearch Dashboards project. The osd/pm is currently implemented to be @@ -58318,96 +58780,77 @@ class OpenSearchDashboards { rootPath }))); } - constructor(allWorkspaceProjects) { this.allWorkspaceProjects = allWorkspaceProjects; - _defineProperty(this, "opensearchDashboardsProject", void 0); - const opensearchDashboardsProject = allWorkspaceProjects.get('opensearch-dashboards'); - if (!opensearchDashboardsProject) { throw new TypeError('Unable to create OpenSearch Dashboards object without all projects, including the OpenSearch Dashboards project.'); } - this.opensearchDashboardsProject = opensearchDashboardsProject; } - /** make an absolute path by resolving subPath relative to the opensearch-dashboards repo */ - + /** make an absolute path by resolving subPath relative to the opensearch-dashboards repo */ getAbsolute(...subPath) { return _path.default.resolve(this.opensearchDashboardsProject.path, ...subPath); } - /** convert an absolute path to a relative path, relative to the opensearch-dashboards repo */ - + /** convert an absolute path to a relative path, relative to the opensearch-dashboards repo */ getRelative(absolute) { return _path.default.relative(this.opensearchDashboardsProject.path, absolute); } - /** get a copy of the map of all projects in the opensearch-dashboards workspace */ - + /** get a copy of the map of all projects in the opensearch-dashboards workspace */ getAllProjects() { return new Map(this.allWorkspaceProjects); } - /** determine if a project with the given name exists */ - + /** determine if a project with the given name exists */ hasProject(name) { return this.allWorkspaceProjects.has(name); } - /** get a specific project, throws if the name is not known (use hasProject() first) */ - + /** get a specific project, throws if the name is not known (use hasProject() first) */ getProject(name) { const project = this.allWorkspaceProjects.get(name); - if (!project) { throw new Error(`No package with name "${name}" in the workspace`); } - return project; } - /** get a project and all of the projects it depends on in a ProjectMap */ - + /** get a project and all of the projects it depends on in a ProjectMap */ getProjectAndDeps(name) { const project = this.getProject(name); return (0, _projects.includeTransitiveProjects)([project], this.allWorkspaceProjects); } - /** filter the projects to just those matching certain paths/include/exclude tags */ - + /** filter the projects to just those matching certain paths/include/exclude tags */ getFilteredProjects(options) { const allProjects = this.getAllProjects(); const filteredProjects = new Map(); const pkgJsonPaths = Array.from(allProjects.values()).map(p => p.packageJsonLocation); - const filteredPkgJsonGlobs = (0, _config.getProjectPaths)({ ...options, + const filteredPkgJsonGlobs = (0, _config.getProjectPaths)({ + ...options, rootPath: this.opensearchDashboardsProject.path }).map(g => _path.default.resolve(g, 'package.json')); const matchingPkgJsonPaths = (0, _multimatch.default)(pkgJsonPaths, filteredPkgJsonGlobs); - for (const project of allProjects.values()) { const pathMatches = matchingPkgJsonPaths.includes(project.packageJsonLocation); const notExcluded = !options.exclude.includes(project.name); const isIncluded = !options.include.length || options.include.includes(project.name); - if (pathMatches && notExcluded && isIncluded) { filteredProjects.set(project.name, project); } } - return filteredProjects; } - isPartOfRepo(project) { return project.path === this.opensearchDashboardsProject.path || (0, _isPathInside.default)(project.path, this.opensearchDashboardsProject.path); } - isOutsideRepo(project) { return !this.isPartOfRepo(project); } - resolveAllProductionDependencies(yarnLock, log) { const opensearchDashboardsDeps = (0, _yarn_lock.resolveDepsForProject)({ project: this.opensearchDashboardsProject, @@ -58419,21 +58862,19 @@ class OpenSearchDashboards { }); return new Map([...opensearchDashboardsDeps.entries()]); } - } - exports.OpenSearchDashboards = OpenSearchDashboards; /***/ }), -/* 560 */ +/* 565 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; const minimatch = __webpack_require__(151); -const arrayUnion = __webpack_require__(347); -const arrayDiffer = __webpack_require__(561); -const arrify = __webpack_require__(562); +const arrayUnion = __webpack_require__(353); +const arrayDiffer = __webpack_require__(566); +const arrify = __webpack_require__(567); module.exports = (list, patterns, options = {}) => { list = arrify(list); @@ -58457,7 +58898,7 @@ module.exports = (list, patterns, options = {}) => { /***/ }), -/* 561 */ +/* 566 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -58472,7 +58913,7 @@ module.exports = arrayDiffer; /***/ }), -/* 562 */ +/* 567 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -58502,7 +58943,7 @@ module.exports = arrify; /***/ }), -/* 563 */ +/* 568 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -58517,11 +58958,10 @@ Object.defineProperty(exports, "buildProductionProjects", { return _build_production_projects.buildProductionProjects; } }); - -var _build_production_projects = __webpack_require__(564); +var _build_production_projects = __webpack_require__(569); /***/ }), -/* 564 */ +/* 569 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -58531,25 +58971,15 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.buildProductionProjects = buildProductionProjects; - -var _cpy = _interopRequireDefault(__webpack_require__(565)); - -var _del = _interopRequireDefault(__webpack_require__(345)); - +var _cpy = _interopRequireDefault(__webpack_require__(570)); +var _del = _interopRequireDefault(__webpack_require__(351)); var _path = __webpack_require__(4); - -var _config = __webpack_require__(330); - +var _config = __webpack_require__(336); var _fs = __webpack_require__(131); - var _log = __webpack_require__(145); - var _package_json = __webpack_require__(166); - var _projects = __webpack_require__(147); - function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - /* * SPDX-License-Identifier: Apache-2.0 * @@ -58579,6 +59009,7 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de * specific language governing permissions and limitations * under the License. */ + async function buildProductionProjects({ opensearchDashboardsRoot, buildRoot @@ -58587,9 +59018,7 @@ async function buildProductionProjects({ const projectGraph = (0, _projects.buildProjectGraph)(projects); const batchedProjects = (0, _projects.topologicallyBatchProjects)(projects, projectGraph); const projectNames = [...projects.values()].map(project => project.name); - _log.log.info(`Preparing production build for [${projectNames.join(', ')}]`); - for (const batch of batchedProjects) { for (const project of batch) { await deleteTarget(project); @@ -58598,6 +59027,7 @@ async function buildProductionProjects({ } } } + /** * Returns the subset of projects that should be built into the production * bundle. As we copy these into OpenSearch Dashboards 's `node_modules` during the build step, @@ -58605,8 +59035,6 @@ async function buildProductionProjects({ * we only include OpenSearch Dashboards 's transitive _production_ dependencies. If onlyOSS * is supplied, we omit projects with build.oss in their package.json set to false. */ - - async function getProductionProjects(rootPath) { const projectPaths = (0, _config.getProjectPaths)({ rootPath @@ -58615,8 +59043,9 @@ async function getProductionProjects(rootPath) { const projectsSubset = [projects.get('opensearch-dashboards')]; const productionProjects = (0, _projects.includeTransitiveProjects)(projectsSubset, projects, { onlyProductionDependencies: true - }); // We remove OpenSearch Dashboards , as we're already building OpenSearch Dashboards + }); + // We remove OpenSearch Dashboards , as we're already building OpenSearch Dashboards productionProjects.delete('opensearch-dashboards'); productionProjects.forEach(project => { if (project.getBuildConfig().oss === false) { @@ -58625,17 +59054,14 @@ async function getProductionProjects(rootPath) { }); return productionProjects; } - async function deleteTarget(project) { const targetDir = project.targetLocation; - if (await (0, _fs.isDirectory)(targetDir)) { await (0, _del.default)(targetDir, { force: true }); } } - async function buildProject(project) { // Explicitly defined targets override any bootstrap scripts if (project.hasBuildTargets()) { @@ -58644,6 +59070,7 @@ async function buildProject(project) { await project.runScript('build'); } } + /** * Copy all the project's files from its "intermediate build directory" and * into the build. The intermediate directory can either be the root of the @@ -58655,8 +59082,6 @@ async function buildProject(project) { * manage dependencies is that it will "dedupe" them, so we don't include * unnecessary copies of dependencies. */ - - async function copyToBuild(project, opensearchDashboardsRoot, buildRoot) { // We want the package to have the same relative location within the build const relativeProjectPath = (0, _path.relative)(opensearchDashboardsRoot, project.path); @@ -58666,20 +59091,21 @@ async function copyToBuild(project, opensearchDashboardsRoot, buildRoot) { dot: true, nodir: true, parents: true - }); // If a project is using an intermediate build directory, we special-case our + }); + + // If a project is using an intermediate build directory, we special-case our // handling of `package.json`, as the project build process might have copied // (a potentially modified) `package.json` into the intermediate build // directory already. If so, we want to use that `package.json` as the basis // for creating the production-ready `package.json`. If it's not present in // the intermediate build, we fall back to using the project's already defined // `package.json`. - const packageJson = (await (0, _fs.isFile)((0, _path.join)(buildProjectPath, 'package.json'))) ? await (0, _package_json.readPackageJson)(buildProjectPath) : project.json; await (0, _package_json.writePackageJson)(buildProjectPath, packageJson); } /***/ }), -/* 565 */ +/* 570 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -58687,14 +59113,14 @@ async function copyToBuild(project, opensearchDashboardsRoot, buildRoot) { const EventEmitter = __webpack_require__(157); const path = __webpack_require__(4); const os = __webpack_require__(121); -const pMap = __webpack_require__(566); -const arrify = __webpack_require__(562); -const globby = __webpack_require__(567); -const hasGlob = __webpack_require__(747); -const cpFile = __webpack_require__(749); -const junk = __webpack_require__(758); -const pFilter = __webpack_require__(759); -const CpyError = __webpack_require__(761); +const pMap = __webpack_require__(571); +const arrify = __webpack_require__(567); +const globby = __webpack_require__(572); +const hasGlob = __webpack_require__(752); +const cpFile = __webpack_require__(754); +const junk = __webpack_require__(763); +const pFilter = __webpack_require__(764); +const CpyError = __webpack_require__(766); const defaultOptions = { ignoreJunk: true @@ -58845,12 +59271,12 @@ module.exports = (source, destination, { /***/ }), -/* 566 */ +/* 571 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const AggregateError = __webpack_require__(431); +const AggregateError = __webpack_require__(437); module.exports = async ( iterable, @@ -58933,17 +59359,17 @@ module.exports = async ( /***/ }), -/* 567 */ +/* 572 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; const fs = __webpack_require__(134); -const arrayUnion = __webpack_require__(568); +const arrayUnion = __webpack_require__(573); const glob = __webpack_require__(148); -const fastGlob = __webpack_require__(570); -const dirGlob = __webpack_require__(741); -const gitignore = __webpack_require__(744); +const fastGlob = __webpack_require__(575); +const dirGlob = __webpack_require__(746); +const gitignore = __webpack_require__(749); const DEFAULT_FILTER = () => false; @@ -59088,12 +59514,12 @@ module.exports.gitignore = gitignore; /***/ }), -/* 568 */ +/* 573 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var arrayUniq = __webpack_require__(569); +var arrayUniq = __webpack_require__(574); module.exports = function () { return arrayUniq([].concat.apply([], arguments)); @@ -59101,7 +59527,7 @@ module.exports = function () { /***/ }), -/* 569 */ +/* 574 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -59170,10 +59596,10 @@ if ('Set' in global) { /***/ }), -/* 570 */ +/* 575 */ /***/ (function(module, exports, __webpack_require__) { -const pkg = __webpack_require__(571); +const pkg = __webpack_require__(576); module.exports = pkg.async; module.exports.default = pkg.async; @@ -59186,19 +59612,19 @@ module.exports.generateTasks = pkg.generateTasks; /***/ }), -/* 571 */ +/* 576 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -var optionsManager = __webpack_require__(572); -var taskManager = __webpack_require__(573); -var reader_async_1 = __webpack_require__(712); -var reader_stream_1 = __webpack_require__(736); -var reader_sync_1 = __webpack_require__(737); -var arrayUtils = __webpack_require__(739); -var streamUtils = __webpack_require__(740); +var optionsManager = __webpack_require__(577); +var taskManager = __webpack_require__(578); +var reader_async_1 = __webpack_require__(717); +var reader_stream_1 = __webpack_require__(741); +var reader_sync_1 = __webpack_require__(742); +var arrayUtils = __webpack_require__(744); +var streamUtils = __webpack_require__(745); /** * Synchronous API. */ @@ -59264,7 +59690,7 @@ function isString(source) { /***/ }), -/* 572 */ +/* 577 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -59302,13 +59728,13 @@ exports.prepare = prepare; /***/ }), -/* 573 */ +/* 578 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -var patternUtils = __webpack_require__(574); +var patternUtils = __webpack_require__(579); /** * Generate tasks based on parent directory of each pattern. */ @@ -59399,16 +59825,16 @@ exports.convertPatternGroupToTask = convertPatternGroupToTask; /***/ }), -/* 574 */ +/* 579 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var path = __webpack_require__(4); -var globParent = __webpack_require__(357); -var isGlob = __webpack_require__(358); -var micromatch = __webpack_require__(575); +var globParent = __webpack_require__(363); +var isGlob = __webpack_require__(364); +var micromatch = __webpack_require__(580); var GLOBSTAR = '**'; /** * Return true for static pattern. @@ -59554,7 +59980,7 @@ exports.matchAny = matchAny; /***/ }), -/* 575 */ +/* 580 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -59565,18 +59991,18 @@ exports.matchAny = matchAny; */ var util = __webpack_require__(112); -var braces = __webpack_require__(576); -var toRegex = __webpack_require__(577); -var extend = __webpack_require__(590); +var braces = __webpack_require__(581); +var toRegex = __webpack_require__(582); +var extend = __webpack_require__(595); /** * Local dependencies */ -var compilers = __webpack_require__(679); -var parsers = __webpack_require__(708); -var cache = __webpack_require__(709); -var utils = __webpack_require__(710); +var compilers = __webpack_require__(684); +var parsers = __webpack_require__(713); +var cache = __webpack_require__(714); +var utils = __webpack_require__(715); var MAX_LENGTH = 1024 * 64; /** @@ -60438,7 +60864,7 @@ module.exports = micromatch; /***/ }), -/* 576 */ +/* 581 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -60448,18 +60874,18 @@ module.exports = micromatch; * Module dependencies */ -var toRegex = __webpack_require__(577); -var unique = __webpack_require__(595); -var extend = __webpack_require__(596); +var toRegex = __webpack_require__(582); +var unique = __webpack_require__(600); +var extend = __webpack_require__(601); /** * Local dependencies */ -var compilers = __webpack_require__(598); -var parsers = __webpack_require__(608); -var Braces = __webpack_require__(612); -var utils = __webpack_require__(599); +var compilers = __webpack_require__(603); +var parsers = __webpack_require__(613); +var Braces = __webpack_require__(617); +var utils = __webpack_require__(604); var MAX_LENGTH = 1024 * 64; var cache = {}; @@ -60763,16 +61189,16 @@ module.exports = braces; /***/ }), -/* 577 */ +/* 582 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var safe = __webpack_require__(578); -var define = __webpack_require__(584); -var extend = __webpack_require__(590); -var not = __webpack_require__(594); +var safe = __webpack_require__(583); +var define = __webpack_require__(589); +var extend = __webpack_require__(595); +var not = __webpack_require__(599); var MAX_LENGTH = 1024 * 64; /** @@ -60925,10 +61351,10 @@ module.exports.makeRe = makeRe; /***/ }), -/* 578 */ +/* 583 */ /***/ (function(module, exports, __webpack_require__) { -var parse = __webpack_require__(579); +var parse = __webpack_require__(584); var types = parse.types; module.exports = function (re, opts) { @@ -60974,13 +61400,13 @@ function isRegExp (x) { /***/ }), -/* 579 */ +/* 584 */ /***/ (function(module, exports, __webpack_require__) { -var util = __webpack_require__(580); -var types = __webpack_require__(581); -var sets = __webpack_require__(582); -var positions = __webpack_require__(583); +var util = __webpack_require__(585); +var types = __webpack_require__(586); +var sets = __webpack_require__(587); +var positions = __webpack_require__(588); module.exports = function(regexpStr) { @@ -61262,11 +61688,11 @@ module.exports.types = types; /***/ }), -/* 580 */ +/* 585 */ /***/ (function(module, exports, __webpack_require__) { -var types = __webpack_require__(581); -var sets = __webpack_require__(582); +var types = __webpack_require__(586); +var sets = __webpack_require__(587); // All of these are private and only used by randexp. @@ -61379,7 +61805,7 @@ exports.error = function(regexp, msg) { /***/ }), -/* 581 */ +/* 586 */ /***/ (function(module, exports) { module.exports = { @@ -61395,10 +61821,10 @@ module.exports = { /***/ }), -/* 582 */ +/* 587 */ /***/ (function(module, exports, __webpack_require__) { -var types = __webpack_require__(581); +var types = __webpack_require__(586); var INTS = function() { return [{ type: types.RANGE , from: 48, to: 57 }]; @@ -61483,10 +61909,10 @@ exports.anyChar = function() { /***/ }), -/* 583 */ +/* 588 */ /***/ (function(module, exports, __webpack_require__) { -var types = __webpack_require__(581); +var types = __webpack_require__(586); exports.wordBoundary = function() { return { type: types.POSITION, value: 'b' }; @@ -61506,7 +61932,7 @@ exports.end = function() { /***/ }), -/* 584 */ +/* 589 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -61519,8 +61945,8 @@ exports.end = function() { -var isobject = __webpack_require__(585); -var isDescriptor = __webpack_require__(586); +var isobject = __webpack_require__(590); +var isDescriptor = __webpack_require__(591); var define = (typeof Reflect !== 'undefined' && Reflect.defineProperty) ? Reflect.defineProperty : Object.defineProperty; @@ -61551,7 +61977,7 @@ module.exports = function defineProperty(obj, key, val) { /***/ }), -/* 585 */ +/* 590 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -61570,7 +61996,7 @@ module.exports = function isObject(val) { /***/ }), -/* 586 */ +/* 591 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -61583,9 +62009,9 @@ module.exports = function isObject(val) { -var typeOf = __webpack_require__(587); -var isAccessor = __webpack_require__(588); -var isData = __webpack_require__(589); +var typeOf = __webpack_require__(592); +var isAccessor = __webpack_require__(593); +var isData = __webpack_require__(594); module.exports = function isDescriptor(obj, key) { if (typeOf(obj) !== 'object') { @@ -61599,7 +62025,7 @@ module.exports = function isDescriptor(obj, key) { /***/ }), -/* 587 */ +/* 592 */ /***/ (function(module, exports) { var toString = Object.prototype.toString; @@ -61734,7 +62160,7 @@ function isBuffer(val) { /***/ }), -/* 588 */ +/* 593 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -61747,7 +62173,7 @@ function isBuffer(val) { -var typeOf = __webpack_require__(587); +var typeOf = __webpack_require__(592); // accessor descriptor properties var accessor = { @@ -61810,7 +62236,7 @@ module.exports = isAccessorDescriptor; /***/ }), -/* 589 */ +/* 594 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -61823,7 +62249,7 @@ module.exports = isAccessorDescriptor; -var typeOf = __webpack_require__(587); +var typeOf = __webpack_require__(592); module.exports = function isDataDescriptor(obj, prop) { // data descriptor properties @@ -61866,14 +62292,14 @@ module.exports = function isDataDescriptor(obj, prop) { /***/ }), -/* 590 */ +/* 595 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var isExtendable = __webpack_require__(591); -var assignSymbols = __webpack_require__(593); +var isExtendable = __webpack_require__(596); +var assignSymbols = __webpack_require__(598); module.exports = Object.assign || function(obj/*, objects*/) { if (obj === null || typeof obj === 'undefined') { @@ -61933,7 +62359,7 @@ function isEnum(obj, key) { /***/ }), -/* 591 */ +/* 596 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -61946,7 +62372,7 @@ function isEnum(obj, key) { -var isPlainObject = __webpack_require__(592); +var isPlainObject = __webpack_require__(597); module.exports = function isExtendable(val) { return isPlainObject(val) || typeof val === 'function' || Array.isArray(val); @@ -61954,7 +62380,7 @@ module.exports = function isExtendable(val) { /***/ }), -/* 592 */ +/* 597 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -61967,7 +62393,7 @@ module.exports = function isExtendable(val) { -var isObject = __webpack_require__(585); +var isObject = __webpack_require__(590); function isObjectObject(o) { return isObject(o) === true @@ -61998,7 +62424,7 @@ module.exports = function isPlainObject(o) { /***/ }), -/* 593 */ +/* 598 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -62045,14 +62471,14 @@ module.exports = function(receiver, objects) { /***/ }), -/* 594 */ +/* 599 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var extend = __webpack_require__(590); -var safe = __webpack_require__(578); +var extend = __webpack_require__(595); +var safe = __webpack_require__(583); /** * The main export is a function that takes a `pattern` string and an `options` object. @@ -62124,7 +62550,7 @@ module.exports = toRegex; /***/ }), -/* 595 */ +/* 600 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -62174,13 +62600,13 @@ module.exports.immutable = function uniqueImmutable(arr) { /***/ }), -/* 596 */ +/* 601 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var isObject = __webpack_require__(597); +var isObject = __webpack_require__(602); module.exports = function extend(o/*, objects*/) { if (!isObject(o)) { o = {}; } @@ -62214,7 +62640,7 @@ function hasOwn(obj, key) { /***/ }), -/* 597 */ +/* 602 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -62234,13 +62660,13 @@ module.exports = function isExtendable(val) { /***/ }), -/* 598 */ +/* 603 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var utils = __webpack_require__(599); +var utils = __webpack_require__(604); module.exports = function(braces, options) { braces.compiler @@ -62523,25 +62949,25 @@ function hasQueue(node) { /***/ }), -/* 599 */ +/* 604 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var splitString = __webpack_require__(600); +var splitString = __webpack_require__(605); var utils = module.exports; /** * Module dependencies */ -utils.extend = __webpack_require__(596); -utils.flatten = __webpack_require__(601); -utils.isObject = __webpack_require__(585); -utils.fillRange = __webpack_require__(602); -utils.repeat = __webpack_require__(607); -utils.unique = __webpack_require__(595); +utils.extend = __webpack_require__(601); +utils.flatten = __webpack_require__(606); +utils.isObject = __webpack_require__(590); +utils.fillRange = __webpack_require__(607); +utils.repeat = __webpack_require__(612); +utils.unique = __webpack_require__(600); utils.define = function(obj, key, val) { Object.defineProperty(obj, key, { @@ -62873,7 +63299,7 @@ utils.escapeRegex = function(str) { /***/ }), -/* 600 */ +/* 605 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -62886,7 +63312,7 @@ utils.escapeRegex = function(str) { -var extend = __webpack_require__(590); +var extend = __webpack_require__(595); module.exports = function(str, options, fn) { if (typeof str !== 'string') { @@ -63051,7 +63477,7 @@ function keepEscaping(opts, str, idx) { /***/ }), -/* 601 */ +/* 606 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -63080,7 +63506,7 @@ function flat(arr, res) { /***/ }), -/* 602 */ +/* 607 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -63094,10 +63520,10 @@ function flat(arr, res) { var util = __webpack_require__(112); -var isNumber = __webpack_require__(603); -var extend = __webpack_require__(604); -var repeat = __webpack_require__(605); -var toRegex = __webpack_require__(606); +var isNumber = __webpack_require__(608); +var extend = __webpack_require__(609); +var repeat = __webpack_require__(610); +var toRegex = __webpack_require__(611); /** * Return a range of numbers or letters. @@ -63295,7 +63721,7 @@ module.exports = fillRange; /***/ }), -/* 603 */ +/* 608 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -63308,7 +63734,7 @@ module.exports = fillRange; -var typeOf = __webpack_require__(587); +var typeOf = __webpack_require__(592); module.exports = function isNumber(num) { var type = typeOf(num); @@ -63324,13 +63750,13 @@ module.exports = function isNumber(num) { /***/ }), -/* 604 */ +/* 609 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var isObject = __webpack_require__(597); +var isObject = __webpack_require__(602); module.exports = function extend(o/*, objects*/) { if (!isObject(o)) { o = {}; } @@ -63364,7 +63790,7 @@ function hasOwn(obj, key) { /***/ }), -/* 605 */ +/* 610 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -63441,7 +63867,7 @@ function repeat(str, num) { /***/ }), -/* 606 */ +/* 611 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -63454,8 +63880,8 @@ function repeat(str, num) { -var repeat = __webpack_require__(605); -var isNumber = __webpack_require__(603); +var repeat = __webpack_require__(610); +var isNumber = __webpack_require__(608); var cache = {}; function toRegexRange(min, max, options) { @@ -63742,7 +64168,7 @@ module.exports = toRegexRange; /***/ }), -/* 607 */ +/* 612 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -63771,14 +64197,14 @@ module.exports = function repeat(ele, num) { /***/ }), -/* 608 */ +/* 613 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var Node = __webpack_require__(609); -var utils = __webpack_require__(599); +var Node = __webpack_require__(614); +var utils = __webpack_require__(604); /** * Braces parsers @@ -64138,15 +64564,15 @@ function concatNodes(pos, node, parent, options) { /***/ }), -/* 609 */ +/* 614 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var isObject = __webpack_require__(585); -var define = __webpack_require__(610); -var utils = __webpack_require__(611); +var isObject = __webpack_require__(590); +var define = __webpack_require__(615); +var utils = __webpack_require__(616); var ownNames; /** @@ -64637,7 +65063,7 @@ exports = module.exports = Node; /***/ }), -/* 610 */ +/* 615 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -64650,7 +65076,7 @@ exports = module.exports = Node; -var isDescriptor = __webpack_require__(586); +var isDescriptor = __webpack_require__(591); module.exports = function defineProperty(obj, prop, val) { if (typeof obj !== 'object' && typeof obj !== 'function') { @@ -64675,13 +65101,13 @@ module.exports = function defineProperty(obj, prop, val) { /***/ }), -/* 611 */ +/* 616 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var typeOf = __webpack_require__(587); +var typeOf = __webpack_require__(592); var utils = module.exports; /** @@ -65701,17 +66127,17 @@ function assert(val, message) { /***/ }), -/* 612 */ +/* 617 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var extend = __webpack_require__(596); -var Snapdragon = __webpack_require__(613); -var compilers = __webpack_require__(598); -var parsers = __webpack_require__(608); -var utils = __webpack_require__(599); +var extend = __webpack_require__(601); +var Snapdragon = __webpack_require__(618); +var compilers = __webpack_require__(603); +var parsers = __webpack_require__(613); +var utils = __webpack_require__(604); /** * Customize Snapdragon parser and renderer @@ -65812,17 +66238,17 @@ module.exports = Braces; /***/ }), -/* 613 */ +/* 618 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var Base = __webpack_require__(614); -var define = __webpack_require__(640); -var Compiler = __webpack_require__(647); -var Parser = __webpack_require__(676); -var utils = __webpack_require__(655); +var Base = __webpack_require__(619); +var define = __webpack_require__(645); +var Compiler = __webpack_require__(652); +var Parser = __webpack_require__(681); +var utils = __webpack_require__(660); var regexCache = {}; var cache = {}; @@ -65993,20 +66419,20 @@ module.exports.Parser = Parser; /***/ }), -/* 614 */ +/* 619 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; var util = __webpack_require__(112); -var define = __webpack_require__(615); -var CacheBase = __webpack_require__(616); -var Emitter = __webpack_require__(617); -var isObject = __webpack_require__(585); -var merge = __webpack_require__(635); -var pascal = __webpack_require__(638); -var cu = __webpack_require__(639); +var define = __webpack_require__(620); +var CacheBase = __webpack_require__(621); +var Emitter = __webpack_require__(622); +var isObject = __webpack_require__(590); +var merge = __webpack_require__(640); +var pascal = __webpack_require__(643); +var cu = __webpack_require__(644); /** * Optionally define a custom `cache` namespace to use. @@ -66435,7 +66861,7 @@ module.exports.namespace = namespace; /***/ }), -/* 615 */ +/* 620 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -66448,7 +66874,7 @@ module.exports.namespace = namespace; -var isDescriptor = __webpack_require__(586); +var isDescriptor = __webpack_require__(591); module.exports = function defineProperty(obj, prop, val) { if (typeof obj !== 'object' && typeof obj !== 'function') { @@ -66473,21 +66899,21 @@ module.exports = function defineProperty(obj, prop, val) { /***/ }), -/* 616 */ +/* 621 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var isObject = __webpack_require__(585); -var Emitter = __webpack_require__(617); -var visit = __webpack_require__(618); -var toPath = __webpack_require__(621); -var union = __webpack_require__(622); -var del = __webpack_require__(627); -var get = __webpack_require__(624); -var has = __webpack_require__(633); -var set = __webpack_require__(625); +var isObject = __webpack_require__(590); +var Emitter = __webpack_require__(622); +var visit = __webpack_require__(623); +var toPath = __webpack_require__(626); +var union = __webpack_require__(627); +var del = __webpack_require__(632); +var get = __webpack_require__(629); +var has = __webpack_require__(638); +var set = __webpack_require__(630); /** * Create a `Cache` constructor that when instantiated will @@ -66741,7 +67167,7 @@ module.exports.namespace = namespace; /***/ }), -/* 617 */ +/* 622 */ /***/ (function(module, exports, __webpack_require__) { @@ -66922,7 +67348,7 @@ Emitter.prototype.hasListeners = function(event){ /***/ }), -/* 618 */ +/* 623 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -66935,8 +67361,8 @@ Emitter.prototype.hasListeners = function(event){ -var visit = __webpack_require__(619); -var mapVisit = __webpack_require__(620); +var visit = __webpack_require__(624); +var mapVisit = __webpack_require__(625); module.exports = function(collection, method, val) { var result; @@ -66959,7 +67385,7 @@ module.exports = function(collection, method, val) { /***/ }), -/* 619 */ +/* 624 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -66972,7 +67398,7 @@ module.exports = function(collection, method, val) { -var isObject = __webpack_require__(585); +var isObject = __webpack_require__(590); module.exports = function visit(thisArg, method, target, val) { if (!isObject(thisArg) && typeof thisArg !== 'function') { @@ -66999,14 +67425,14 @@ module.exports = function visit(thisArg, method, target, val) { /***/ }), -/* 620 */ +/* 625 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; var util = __webpack_require__(112); -var visit = __webpack_require__(619); +var visit = __webpack_require__(624); /** * Map `visit` over an array of objects. @@ -67043,7 +67469,7 @@ function isObject(val) { /***/ }), -/* 621 */ +/* 626 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -67056,7 +67482,7 @@ function isObject(val) { -var typeOf = __webpack_require__(587); +var typeOf = __webpack_require__(592); module.exports = function toPath(args) { if (typeOf(args) !== 'arguments') { @@ -67083,16 +67509,16 @@ function filter(arr) { /***/ }), -/* 622 */ +/* 627 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var isObject = __webpack_require__(597); -var union = __webpack_require__(623); -var get = __webpack_require__(624); -var set = __webpack_require__(625); +var isObject = __webpack_require__(602); +var union = __webpack_require__(628); +var get = __webpack_require__(629); +var set = __webpack_require__(630); module.exports = function unionValue(obj, prop, value) { if (!isObject(obj)) { @@ -67120,7 +67546,7 @@ function arrayify(val) { /***/ }), -/* 623 */ +/* 628 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -67156,7 +67582,7 @@ module.exports = function union(init) { /***/ }), -/* 624 */ +/* 629 */ /***/ (function(module, exports) { /*! @@ -67212,7 +67638,7 @@ function toString(val) { /***/ }), -/* 625 */ +/* 630 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -67226,8 +67652,8 @@ function toString(val) { const { deleteProperty } = Reflect; -const isPrimitive = __webpack_require__(626); -const isPlainObject = __webpack_require__(592); +const isPrimitive = __webpack_require__(631); +const isPlainObject = __webpack_require__(597); const isObject = value => { return (typeof value === 'object' && value !== null) || typeof value === 'function'; @@ -67388,7 +67814,7 @@ module.exports = setValue; /***/ }), -/* 626 */ +/* 631 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -67410,7 +67836,7 @@ module.exports = function isPrimitive(val) { /***/ }), -/* 627 */ +/* 632 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -67423,8 +67849,8 @@ module.exports = function isPrimitive(val) { -var isObject = __webpack_require__(628); -var has = __webpack_require__(629); +var isObject = __webpack_require__(633); +var has = __webpack_require__(634); const isUnsafeKey = key => { return key === '__proto__' || key === 'constructor' || key === 'prototype'; @@ -67466,7 +67892,7 @@ module.exports = function unset(obj, prop) { /***/ }), -/* 628 */ +/* 633 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -67485,7 +67911,7 @@ function isObject(val) { /***/ }), -/* 629 */ +/* 634 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -67498,8 +67924,8 @@ function isObject(val) { -const get = __webpack_require__(630); -const has = __webpack_require__(632); +const get = __webpack_require__(635); +const has = __webpack_require__(637); module.exports = function(obj, path, options) { if (isObject(obj) && (typeof path === 'string' || Array.isArray(path))) { @@ -67514,7 +67940,7 @@ function isObject(val) { /***/ }), -/* 630 */ +/* 635 */ /***/ (function(module, exports, __webpack_require__) { /*! @@ -67524,7 +67950,7 @@ function isObject(val) { * Released under the MIT License. */ -const isObject = __webpack_require__(631); +const isObject = __webpack_require__(636); module.exports = function(target, path, options) { if (!isObject(options)) { @@ -67630,7 +68056,7 @@ function isValidObject(val) { /***/ }), -/* 631 */ +/* 636 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -67649,7 +68075,7 @@ module.exports = function isObject(val) { /***/ }), -/* 632 */ +/* 637 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -67662,7 +68088,7 @@ module.exports = function isObject(val) { -const typeOf = __webpack_require__(587); +const typeOf = __webpack_require__(592); module.exports = function has(val) { switch (typeOf(val)) { @@ -67705,7 +68131,7 @@ module.exports = function has(val) { /***/ }), -/* 633 */ +/* 638 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -67718,9 +68144,9 @@ module.exports = function has(val) { -var isObject = __webpack_require__(585); -var hasValues = __webpack_require__(634); -var get = __webpack_require__(624); +var isObject = __webpack_require__(590); +var hasValues = __webpack_require__(639); +var get = __webpack_require__(629); module.exports = function(val, prop) { return hasValues(isObject(val) && prop ? get(val, prop) : val); @@ -67728,7 +68154,7 @@ module.exports = function(val, prop) { /***/ }), -/* 634 */ +/* 639 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -67741,8 +68167,8 @@ module.exports = function(val, prop) { -var typeOf = __webpack_require__(587); -var isNumber = __webpack_require__(603); +var typeOf = __webpack_require__(592); +var isNumber = __webpack_require__(608); module.exports = function hasValue(val) { // is-number checks for NaN and other edge cases @@ -67795,14 +68221,14 @@ module.exports = function hasValue(val) { /***/ }), -/* 635 */ +/* 640 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var isExtendable = __webpack_require__(636); -var forIn = __webpack_require__(637); +var isExtendable = __webpack_require__(641); +var forIn = __webpack_require__(642); function mixinDeep(target, objects) { var len = arguments.length, i = 0; @@ -67866,7 +68292,7 @@ module.exports = mixinDeep; /***/ }), -/* 636 */ +/* 641 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -67879,7 +68305,7 @@ module.exports = mixinDeep; -var isPlainObject = __webpack_require__(592); +var isPlainObject = __webpack_require__(597); module.exports = function isExtendable(val) { return isPlainObject(val) || typeof val === 'function' || Array.isArray(val); @@ -67887,7 +68313,7 @@ module.exports = function isExtendable(val) { /***/ }), -/* 637 */ +/* 642 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -67910,7 +68336,7 @@ module.exports = function forIn(obj, fn, thisArg) { /***/ }), -/* 638 */ +/* 643 */ /***/ (function(module, exports) { /*! @@ -67937,17 +68363,17 @@ module.exports = pascalcase; /***/ }), -/* 639 */ +/* 644 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; var util = __webpack_require__(112); -var union = __webpack_require__(623); -var define = __webpack_require__(640); -var staticExtend = __webpack_require__(644); -var isObj = __webpack_require__(585); +var union = __webpack_require__(628); +var define = __webpack_require__(645); +var staticExtend = __webpack_require__(649); +var isObj = __webpack_require__(590); /** * Expose class utils @@ -68314,7 +68740,7 @@ cu.bubble = function(Parent, events) { /***/ }), -/* 640 */ +/* 645 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -68327,7 +68753,7 @@ cu.bubble = function(Parent, events) { -var isDescriptor = __webpack_require__(641); +var isDescriptor = __webpack_require__(646); module.exports = function defineProperty(obj, prop, val) { if (typeof obj !== 'object' && typeof obj !== 'function') { @@ -68352,7 +68778,7 @@ module.exports = function defineProperty(obj, prop, val) { /***/ }), -/* 641 */ +/* 646 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -68365,9 +68791,9 @@ module.exports = function defineProperty(obj, prop, val) { -var typeOf = __webpack_require__(587); -var isAccessor = __webpack_require__(642); -var isData = __webpack_require__(643); +var typeOf = __webpack_require__(592); +var isAccessor = __webpack_require__(647); +var isData = __webpack_require__(648); module.exports = function isDescriptor(obj, key) { if (typeOf(obj) !== 'object') { @@ -68381,7 +68807,7 @@ module.exports = function isDescriptor(obj, key) { /***/ }), -/* 642 */ +/* 647 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -68394,7 +68820,7 @@ module.exports = function isDescriptor(obj, key) { -var typeOf = __webpack_require__(587); +var typeOf = __webpack_require__(592); // accessor descriptor properties var accessor = { @@ -68457,7 +68883,7 @@ module.exports = isAccessorDescriptor; /***/ }), -/* 643 */ +/* 648 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -68470,7 +68896,7 @@ module.exports = isAccessorDescriptor; -var typeOf = __webpack_require__(587); +var typeOf = __webpack_require__(592); // data descriptor properties var data = { @@ -68519,7 +68945,7 @@ module.exports = isDataDescriptor; /***/ }), -/* 644 */ +/* 649 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -68532,8 +68958,8 @@ module.exports = isDataDescriptor; -var copy = __webpack_require__(645); -var define = __webpack_require__(640); +var copy = __webpack_require__(650); +var define = __webpack_require__(645); var util = __webpack_require__(112); /** @@ -68616,15 +69042,15 @@ module.exports = extend; /***/ }), -/* 645 */ +/* 650 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var typeOf = __webpack_require__(587); -var copyDescriptor = __webpack_require__(646); -var define = __webpack_require__(640); +var typeOf = __webpack_require__(592); +var copyDescriptor = __webpack_require__(651); +var define = __webpack_require__(645); /** * Copy static properties, prototype properties, and descriptors from one object to another. @@ -68797,7 +69223,7 @@ module.exports.has = has; /***/ }), -/* 646 */ +/* 651 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -68885,16 +69311,16 @@ function isObject(val) { /***/ }), -/* 647 */ +/* 652 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var use = __webpack_require__(648); -var define = __webpack_require__(640); -var debug = __webpack_require__(649)('snapdragon:compiler'); -var utils = __webpack_require__(655); +var use = __webpack_require__(653); +var define = __webpack_require__(645); +var debug = __webpack_require__(654)('snapdragon:compiler'); +var utils = __webpack_require__(660); /** * Create a new `Compiler` with the given `options`. @@ -69048,7 +69474,7 @@ Compiler.prototype = { // source map support if (opts.sourcemap) { - var sourcemaps = __webpack_require__(675); + var sourcemaps = __webpack_require__(680); sourcemaps(this); this.mapVisit(this.ast.nodes); this.applySourceMaps(); @@ -69069,7 +69495,7 @@ module.exports = Compiler; /***/ }), -/* 648 */ +/* 653 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -69231,7 +69657,7 @@ function define(obj, key, val) { /***/ }), -/* 649 */ +/* 654 */ /***/ (function(module, exports, __webpack_require__) { /** @@ -69240,14 +69666,14 @@ function define(obj, key, val) { */ if (typeof process !== 'undefined' && process.type === 'renderer') { - module.exports = __webpack_require__(650); + module.exports = __webpack_require__(655); } else { - module.exports = __webpack_require__(653); + module.exports = __webpack_require__(658); } /***/ }), -/* 650 */ +/* 655 */ /***/ (function(module, exports, __webpack_require__) { /** @@ -69256,7 +69682,7 @@ if (typeof process !== 'undefined' && process.type === 'renderer') { * Expose `debug()` as the module. */ -exports = module.exports = __webpack_require__(651); +exports = module.exports = __webpack_require__(656); exports.log = log; exports.formatArgs = formatArgs; exports.save = save; @@ -69438,7 +69864,7 @@ function localstorage() { /***/ }), -/* 651 */ +/* 656 */ /***/ (function(module, exports, __webpack_require__) { @@ -69454,7 +69880,7 @@ exports.coerce = coerce; exports.disable = disable; exports.enable = enable; exports.enabled = enabled; -exports.humanize = __webpack_require__(652); +exports.humanize = __webpack_require__(657); /** * The currently active debug mode names, and names to skip. @@ -69646,7 +70072,7 @@ function coerce(val) { /***/ }), -/* 652 */ +/* 657 */ /***/ (function(module, exports) { /** @@ -69804,7 +70230,7 @@ function plural(ms, n, name) { /***/ }), -/* 653 */ +/* 658 */ /***/ (function(module, exports, __webpack_require__) { /** @@ -69820,7 +70246,7 @@ var util = __webpack_require__(112); * Expose `debug()` as the module. */ -exports = module.exports = __webpack_require__(651); +exports = module.exports = __webpack_require__(656); exports.init = init; exports.log = log; exports.formatArgs = formatArgs; @@ -69999,7 +70425,7 @@ function createWritableStdioStream (fd) { case 'PIPE': case 'TCP': - var net = __webpack_require__(654); + var net = __webpack_require__(659); stream = new net.Socket({ fd: fd, readable: false, @@ -70058,13 +70484,13 @@ exports.enable(load()); /***/ }), -/* 654 */ +/* 659 */ /***/ (function(module, exports) { module.exports = require("net"); /***/ }), -/* 655 */ +/* 660 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -70074,9 +70500,9 @@ module.exports = require("net"); * Module dependencies */ -exports.extend = __webpack_require__(656); -exports.SourceMap = __webpack_require__(657); -exports.sourceMapResolve = __webpack_require__(668); +exports.extend = __webpack_require__(661); +exports.SourceMap = __webpack_require__(662); +exports.sourceMapResolve = __webpack_require__(673); /** * Convert backslash in the given string to forward slashes @@ -70119,13 +70545,13 @@ exports.last = function(arr, n) { /***/ }), -/* 656 */ +/* 661 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var isObject = __webpack_require__(597); +var isObject = __webpack_require__(602); module.exports = function extend(o/*, objects*/) { if (!isObject(o)) { o = {}; } @@ -70159,7 +70585,7 @@ function hasOwn(obj, key) { /***/ }), -/* 657 */ +/* 662 */ /***/ (function(module, exports, __webpack_require__) { /* @@ -70167,13 +70593,13 @@ function hasOwn(obj, key) { * Licensed under the New BSD license. See LICENSE.txt or: * http://opensource.org/licenses/BSD-3-Clause */ -exports.SourceMapGenerator = __webpack_require__(658).SourceMapGenerator; -exports.SourceMapConsumer = __webpack_require__(664).SourceMapConsumer; -exports.SourceNode = __webpack_require__(667).SourceNode; +exports.SourceMapGenerator = __webpack_require__(663).SourceMapGenerator; +exports.SourceMapConsumer = __webpack_require__(669).SourceMapConsumer; +exports.SourceNode = __webpack_require__(672).SourceNode; /***/ }), -/* 658 */ +/* 663 */ /***/ (function(module, exports, __webpack_require__) { /* -*- Mode: js; js-indent-level: 2; -*- */ @@ -70183,10 +70609,10 @@ exports.SourceNode = __webpack_require__(667).SourceNode; * http://opensource.org/licenses/BSD-3-Clause */ -var base64VLQ = __webpack_require__(659); -var util = __webpack_require__(661); -var ArraySet = __webpack_require__(662).ArraySet; -var MappingList = __webpack_require__(663).MappingList; +var base64VLQ = __webpack_require__(664); +var util = __webpack_require__(666); +var ArraySet = __webpack_require__(667).ArraySet; +var MappingList = __webpack_require__(668).MappingList; /** * An instance of the SourceMapGenerator represents a source map which is @@ -70595,7 +71021,7 @@ exports.SourceMapGenerator = SourceMapGenerator; /***/ }), -/* 659 */ +/* 664 */ /***/ (function(module, exports, __webpack_require__) { /* -*- Mode: js; js-indent-level: 2; -*- */ @@ -70635,7 +71061,7 @@ exports.SourceMapGenerator = SourceMapGenerator; * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -var base64 = __webpack_require__(660); +var base64 = __webpack_require__(665); // A single base 64 digit can contain 6 bits of data. For the base 64 variable // length quantities we use in the source map spec, the first bit is the sign, @@ -70741,7 +71167,7 @@ exports.decode = function base64VLQ_decode(aStr, aIndex, aOutParam) { /***/ }), -/* 660 */ +/* 665 */ /***/ (function(module, exports) { /* -*- Mode: js; js-indent-level: 2; -*- */ @@ -70814,7 +71240,7 @@ exports.decode = function (charCode) { /***/ }), -/* 661 */ +/* 666 */ /***/ (function(module, exports) { /* -*- Mode: js; js-indent-level: 2; -*- */ @@ -71237,7 +71663,7 @@ exports.compareByGeneratedPositionsInflated = compareByGeneratedPositionsInflate /***/ }), -/* 662 */ +/* 667 */ /***/ (function(module, exports, __webpack_require__) { /* -*- Mode: js; js-indent-level: 2; -*- */ @@ -71247,7 +71673,7 @@ exports.compareByGeneratedPositionsInflated = compareByGeneratedPositionsInflate * http://opensource.org/licenses/BSD-3-Clause */ -var util = __webpack_require__(661); +var util = __webpack_require__(666); var has = Object.prototype.hasOwnProperty; var hasNativeMap = typeof Map !== "undefined"; @@ -71364,7 +71790,7 @@ exports.ArraySet = ArraySet; /***/ }), -/* 663 */ +/* 668 */ /***/ (function(module, exports, __webpack_require__) { /* -*- Mode: js; js-indent-level: 2; -*- */ @@ -71374,7 +71800,7 @@ exports.ArraySet = ArraySet; * http://opensource.org/licenses/BSD-3-Clause */ -var util = __webpack_require__(661); +var util = __webpack_require__(666); /** * Determine whether mappingB is after mappingA with respect to generated @@ -71449,7 +71875,7 @@ exports.MappingList = MappingList; /***/ }), -/* 664 */ +/* 669 */ /***/ (function(module, exports, __webpack_require__) { /* -*- Mode: js; js-indent-level: 2; -*- */ @@ -71459,11 +71885,11 @@ exports.MappingList = MappingList; * http://opensource.org/licenses/BSD-3-Clause */ -var util = __webpack_require__(661); -var binarySearch = __webpack_require__(665); -var ArraySet = __webpack_require__(662).ArraySet; -var base64VLQ = __webpack_require__(659); -var quickSort = __webpack_require__(666).quickSort; +var util = __webpack_require__(666); +var binarySearch = __webpack_require__(670); +var ArraySet = __webpack_require__(667).ArraySet; +var base64VLQ = __webpack_require__(664); +var quickSort = __webpack_require__(671).quickSort; function SourceMapConsumer(aSourceMap) { var sourceMap = aSourceMap; @@ -72537,7 +72963,7 @@ exports.IndexedSourceMapConsumer = IndexedSourceMapConsumer; /***/ }), -/* 665 */ +/* 670 */ /***/ (function(module, exports) { /* -*- Mode: js; js-indent-level: 2; -*- */ @@ -72654,7 +73080,7 @@ exports.search = function search(aNeedle, aHaystack, aCompare, aBias) { /***/ }), -/* 666 */ +/* 671 */ /***/ (function(module, exports) { /* -*- Mode: js; js-indent-level: 2; -*- */ @@ -72774,7 +73200,7 @@ exports.quickSort = function (ary, comparator) { /***/ }), -/* 667 */ +/* 672 */ /***/ (function(module, exports, __webpack_require__) { /* -*- Mode: js; js-indent-level: 2; -*- */ @@ -72784,8 +73210,8 @@ exports.quickSort = function (ary, comparator) { * http://opensource.org/licenses/BSD-3-Clause */ -var SourceMapGenerator = __webpack_require__(658).SourceMapGenerator; -var util = __webpack_require__(661); +var SourceMapGenerator = __webpack_require__(663).SourceMapGenerator; +var util = __webpack_require__(666); // Matches a Windows-style `\r\n` newline or a `\n` newline used by all other // operating systems these days (capturing the result). @@ -73193,15 +73619,15 @@ exports.SourceNode = SourceNode; /***/ }), -/* 668 */ +/* 673 */ /***/ (function(module, exports, __webpack_require__) { -var sourceMappingURL = __webpack_require__(669) +var sourceMappingURL = __webpack_require__(674) -var resolveUrl = __webpack_require__(670) -var decodeUriComponent = __webpack_require__(671) -var urix = __webpack_require__(673) -var atob = __webpack_require__(674) +var resolveUrl = __webpack_require__(675) +var decodeUriComponent = __webpack_require__(676) +var urix = __webpack_require__(678) +var atob = __webpack_require__(679) @@ -73541,7 +73967,7 @@ module.exports = { /***/ }), -/* 669 */ +/* 674 */ /***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_RESULT__;// Copyright 2014 Simon Lydell @@ -73604,10 +74030,10 @@ void (function(root, factory) { /***/ }), -/* 670 */ +/* 675 */ /***/ (function(module, exports, __webpack_require__) { -var url = __webpack_require__(247) +var url = __webpack_require__(252) function resolveUrl(/* ...urls */) { return Array.prototype.reduce.call(arguments, function(resolved, nextUrl) { @@ -73619,10 +74045,10 @@ module.exports = resolveUrl /***/ }), -/* 671 */ +/* 676 */ /***/ (function(module, exports, __webpack_require__) { -var decodeUriComponent = __webpack_require__(672) +var decodeUriComponent = __webpack_require__(677) function customDecodeUriComponent(string) { // `decodeUriComponent` turns `+` into ` `, but that's not wanted. @@ -73633,7 +74059,7 @@ module.exports = customDecodeUriComponent /***/ }), -/* 672 */ +/* 677 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -73734,7 +74160,7 @@ module.exports = function (encodedURI) { /***/ }), -/* 673 */ +/* 678 */ /***/ (function(module, exports, __webpack_require__) { // Copyright 2014 Simon Lydell @@ -73757,7 +74183,7 @@ module.exports = urix /***/ }), -/* 674 */ +/* 679 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -73771,7 +74197,7 @@ module.exports = atob.atob = atob; /***/ }), -/* 675 */ +/* 680 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -73779,8 +74205,8 @@ module.exports = atob.atob = atob; var fs = __webpack_require__(134); var path = __webpack_require__(4); -var define = __webpack_require__(640); -var utils = __webpack_require__(655); +var define = __webpack_require__(645); +var utils = __webpack_require__(660); /** * Expose `mixin()`. @@ -73923,19 +74349,19 @@ exports.comment = function(node) { /***/ }), -/* 676 */ +/* 681 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var use = __webpack_require__(648); +var use = __webpack_require__(653); var util = __webpack_require__(112); -var Cache = __webpack_require__(677); -var define = __webpack_require__(640); -var debug = __webpack_require__(649)('snapdragon:parser'); -var Position = __webpack_require__(678); -var utils = __webpack_require__(655); +var Cache = __webpack_require__(682); +var define = __webpack_require__(645); +var debug = __webpack_require__(654)('snapdragon:parser'); +var Position = __webpack_require__(683); +var utils = __webpack_require__(660); /** * Create a new `Parser` with the given `input` and `options`. @@ -74463,7 +74889,7 @@ module.exports = Parser; /***/ }), -/* 677 */ +/* 682 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -74570,13 +74996,13 @@ MapCache.prototype.del = function mapDelete(key) { /***/ }), -/* 678 */ +/* 683 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var define = __webpack_require__(640); +var define = __webpack_require__(645); /** * Store position for a node @@ -74591,14 +75017,14 @@ module.exports = function Position(start, parser) { /***/ }), -/* 679 */ +/* 684 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var nanomatch = __webpack_require__(680); -var extglob = __webpack_require__(690); +var nanomatch = __webpack_require__(685); +var extglob = __webpack_require__(695); module.exports = function(snapdragon) { var compilers = snapdragon.compiler.compilers; @@ -74675,7 +75101,7 @@ function escapeExtglobs(compiler) { /***/ }), -/* 680 */ +/* 685 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -74686,17 +75112,17 @@ function escapeExtglobs(compiler) { */ var util = __webpack_require__(112); -var toRegex = __webpack_require__(577); -var extend = __webpack_require__(590); +var toRegex = __webpack_require__(582); +var extend = __webpack_require__(595); /** * Local dependencies */ -var compilers = __webpack_require__(681); -var parsers = __webpack_require__(682); -var cache = __webpack_require__(683); -var utils = __webpack_require__(685); +var compilers = __webpack_require__(686); +var parsers = __webpack_require__(687); +var cache = __webpack_require__(688); +var utils = __webpack_require__(690); var MAX_LENGTH = 1024 * 64; /** @@ -75520,7 +75946,7 @@ module.exports = nanomatch; /***/ }), -/* 681 */ +/* 686 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -75866,14 +76292,14 @@ module.exports = function(nanomatch, options) { /***/ }), -/* 682 */ +/* 687 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var regexNot = __webpack_require__(594); -var toRegex = __webpack_require__(577); +var regexNot = __webpack_require__(599); +var toRegex = __webpack_require__(582); /** * Characters to use in negation regex (we want to "not" match @@ -76259,14 +76685,14 @@ module.exports.not = NOT_REGEX; /***/ }), -/* 683 */ +/* 688 */ /***/ (function(module, exports, __webpack_require__) { -module.exports = new (__webpack_require__(684))(); +module.exports = new (__webpack_require__(689))(); /***/ }), -/* 684 */ +/* 689 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -76279,7 +76705,7 @@ module.exports = new (__webpack_require__(684))(); -var MapCache = __webpack_require__(677); +var MapCache = __webpack_require__(682); /** * Create a new `FragmentCache` with an optional object to use for `caches`. @@ -76401,7 +76827,7 @@ exports = module.exports = FragmentCache; /***/ }), -/* 685 */ +/* 690 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -76414,14 +76840,14 @@ var path = __webpack_require__(4); * Module dependencies */ -var isWindows = __webpack_require__(686)(); -var Snapdragon = __webpack_require__(613); -utils.define = __webpack_require__(687); -utils.diff = __webpack_require__(688); -utils.extend = __webpack_require__(590); -utils.pick = __webpack_require__(689); -utils.typeOf = __webpack_require__(587); -utils.unique = __webpack_require__(595); +var isWindows = __webpack_require__(691)(); +var Snapdragon = __webpack_require__(618); +utils.define = __webpack_require__(692); +utils.diff = __webpack_require__(693); +utils.extend = __webpack_require__(595); +utils.pick = __webpack_require__(694); +utils.typeOf = __webpack_require__(592); +utils.unique = __webpack_require__(600); /** * Returns true if the given value is effectively an empty string @@ -76787,7 +77213,7 @@ utils.unixify = function(options) { /***/ }), -/* 686 */ +/* 691 */ /***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/*! @@ -76815,7 +77241,7 @@ var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_ /***/ }), -/* 687 */ +/* 692 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -76828,8 +77254,8 @@ var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_ -var isobject = __webpack_require__(585); -var isDescriptor = __webpack_require__(586); +var isobject = __webpack_require__(590); +var isDescriptor = __webpack_require__(591); var define = (typeof Reflect !== 'undefined' && Reflect.defineProperty) ? Reflect.defineProperty : Object.defineProperty; @@ -76860,7 +77286,7 @@ module.exports = function defineProperty(obj, key, val) { /***/ }), -/* 688 */ +/* 693 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -76914,7 +77340,7 @@ function diffArray(one, two) { /***/ }), -/* 689 */ +/* 694 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -76927,7 +77353,7 @@ function diffArray(one, two) { -var isObject = __webpack_require__(585); +var isObject = __webpack_require__(590); module.exports = function pick(obj, keys) { if (!isObject(obj) && typeof obj !== 'function') { @@ -76956,7 +77382,7 @@ module.exports = function pick(obj, keys) { /***/ }), -/* 690 */ +/* 695 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -76966,18 +77392,18 @@ module.exports = function pick(obj, keys) { * Module dependencies */ -var extend = __webpack_require__(691); -var unique = __webpack_require__(595); -var toRegex = __webpack_require__(577); +var extend = __webpack_require__(696); +var unique = __webpack_require__(600); +var toRegex = __webpack_require__(582); /** * Local dependencies */ -var compilers = __webpack_require__(692); -var parsers = __webpack_require__(704); -var Extglob = __webpack_require__(707); -var utils = __webpack_require__(706); +var compilers = __webpack_require__(697); +var parsers = __webpack_require__(709); +var Extglob = __webpack_require__(712); +var utils = __webpack_require__(711); var MAX_LENGTH = 1024 * 64; /** @@ -77294,13 +77720,13 @@ module.exports = extglob; /***/ }), -/* 691 */ +/* 696 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var isObject = __webpack_require__(597); +var isObject = __webpack_require__(602); module.exports = function extend(o/*, objects*/) { if (!isObject(o)) { o = {}; } @@ -77334,13 +77760,13 @@ function hasOwn(obj, key) { /***/ }), -/* 692 */ +/* 697 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var brackets = __webpack_require__(693); +var brackets = __webpack_require__(698); /** * Extglob compilers @@ -77510,7 +77936,7 @@ module.exports = function(extglob) { /***/ }), -/* 693 */ +/* 698 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -77520,17 +77946,17 @@ module.exports = function(extglob) { * Local dependencies */ -var compilers = __webpack_require__(694); -var parsers = __webpack_require__(696); +var compilers = __webpack_require__(699); +var parsers = __webpack_require__(701); /** * Module dependencies */ -var debug = __webpack_require__(698)('expand-brackets'); -var extend = __webpack_require__(703); -var Snapdragon = __webpack_require__(613); -var toRegex = __webpack_require__(577); +var debug = __webpack_require__(703)('expand-brackets'); +var extend = __webpack_require__(708); +var Snapdragon = __webpack_require__(618); +var toRegex = __webpack_require__(582); /** * Parses the given POSIX character class `pattern` and returns a @@ -77728,13 +78154,13 @@ module.exports = brackets; /***/ }), -/* 694 */ +/* 699 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var posix = __webpack_require__(695); +var posix = __webpack_require__(700); module.exports = function(brackets) { brackets.compiler @@ -77822,7 +78248,7 @@ module.exports = function(brackets) { /***/ }), -/* 695 */ +/* 700 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -77851,14 +78277,14 @@ module.exports = { /***/ }), -/* 696 */ +/* 701 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var utils = __webpack_require__(697); -var define = __webpack_require__(640); +var utils = __webpack_require__(702); +var define = __webpack_require__(645); /** * Text regex @@ -78077,14 +78503,14 @@ module.exports.TEXT_REGEX = TEXT_REGEX; /***/ }), -/* 697 */ +/* 702 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var toRegex = __webpack_require__(577); -var regexNot = __webpack_require__(594); +var toRegex = __webpack_require__(582); +var regexNot = __webpack_require__(599); var cached; /** @@ -78118,7 +78544,7 @@ exports.createRegex = function(pattern, include) { /***/ }), -/* 698 */ +/* 703 */ /***/ (function(module, exports, __webpack_require__) { /** @@ -78127,14 +78553,14 @@ exports.createRegex = function(pattern, include) { */ if (typeof process !== 'undefined' && process.type === 'renderer') { - module.exports = __webpack_require__(699); + module.exports = __webpack_require__(704); } else { - module.exports = __webpack_require__(702); + module.exports = __webpack_require__(707); } /***/ }), -/* 699 */ +/* 704 */ /***/ (function(module, exports, __webpack_require__) { /** @@ -78143,7 +78569,7 @@ if (typeof process !== 'undefined' && process.type === 'renderer') { * Expose `debug()` as the module. */ -exports = module.exports = __webpack_require__(700); +exports = module.exports = __webpack_require__(705); exports.log = log; exports.formatArgs = formatArgs; exports.save = save; @@ -78325,7 +78751,7 @@ function localstorage() { /***/ }), -/* 700 */ +/* 705 */ /***/ (function(module, exports, __webpack_require__) { @@ -78341,7 +78767,7 @@ exports.coerce = coerce; exports.disable = disable; exports.enable = enable; exports.enabled = enabled; -exports.humanize = __webpack_require__(701); +exports.humanize = __webpack_require__(706); /** * The currently active debug mode names, and names to skip. @@ -78533,7 +78959,7 @@ function coerce(val) { /***/ }), -/* 701 */ +/* 706 */ /***/ (function(module, exports) { /** @@ -78691,7 +79117,7 @@ function plural(ms, n, name) { /***/ }), -/* 702 */ +/* 707 */ /***/ (function(module, exports, __webpack_require__) { /** @@ -78707,7 +79133,7 @@ var util = __webpack_require__(112); * Expose `debug()` as the module. */ -exports = module.exports = __webpack_require__(700); +exports = module.exports = __webpack_require__(705); exports.init = init; exports.log = log; exports.formatArgs = formatArgs; @@ -78886,7 +79312,7 @@ function createWritableStdioStream (fd) { case 'PIPE': case 'TCP': - var net = __webpack_require__(654); + var net = __webpack_require__(659); stream = new net.Socket({ fd: fd, readable: false, @@ -78945,13 +79371,13 @@ exports.enable(load()); /***/ }), -/* 703 */ +/* 708 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var isObject = __webpack_require__(597); +var isObject = __webpack_require__(602); module.exports = function extend(o/*, objects*/) { if (!isObject(o)) { o = {}; } @@ -78985,15 +79411,15 @@ function hasOwn(obj, key) { /***/ }), -/* 704 */ +/* 709 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var brackets = __webpack_require__(693); -var define = __webpack_require__(705); -var utils = __webpack_require__(706); +var brackets = __webpack_require__(698); +var define = __webpack_require__(710); +var utils = __webpack_require__(711); /** * Characters to use in text regex (we want to "not" match @@ -79148,7 +79574,7 @@ module.exports = parsers; /***/ }), -/* 705 */ +/* 710 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -79161,7 +79587,7 @@ module.exports = parsers; -var isDescriptor = __webpack_require__(586); +var isDescriptor = __webpack_require__(591); module.exports = function defineProperty(obj, prop, val) { if (typeof obj !== 'object' && typeof obj !== 'function') { @@ -79186,14 +79612,14 @@ module.exports = function defineProperty(obj, prop, val) { /***/ }), -/* 706 */ +/* 711 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var regex = __webpack_require__(594); -var Cache = __webpack_require__(684); +var regex = __webpack_require__(599); +var Cache = __webpack_require__(689); /** * Utils @@ -79262,7 +79688,7 @@ utils.createRegex = function(str) { /***/ }), -/* 707 */ +/* 712 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -79272,16 +79698,16 @@ utils.createRegex = function(str) { * Module dependencies */ -var Snapdragon = __webpack_require__(613); -var define = __webpack_require__(705); -var extend = __webpack_require__(691); +var Snapdragon = __webpack_require__(618); +var define = __webpack_require__(710); +var extend = __webpack_require__(696); /** * Local dependencies */ -var compilers = __webpack_require__(692); -var parsers = __webpack_require__(704); +var compilers = __webpack_require__(697); +var parsers = __webpack_require__(709); /** * Customize Snapdragon parser and renderer @@ -79347,16 +79773,16 @@ module.exports = Extglob; /***/ }), -/* 708 */ +/* 713 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var extglob = __webpack_require__(690); -var nanomatch = __webpack_require__(680); -var regexNot = __webpack_require__(594); -var toRegex = __webpack_require__(577); +var extglob = __webpack_require__(695); +var nanomatch = __webpack_require__(685); +var regexNot = __webpack_require__(599); +var toRegex = __webpack_require__(582); var not; /** @@ -79437,14 +79863,14 @@ function textRegex(pattern) { /***/ }), -/* 709 */ +/* 714 */ /***/ (function(module, exports, __webpack_require__) { -module.exports = new (__webpack_require__(684))(); +module.exports = new (__webpack_require__(689))(); /***/ }), -/* 710 */ +/* 715 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -79457,13 +79883,13 @@ var path = __webpack_require__(4); * Module dependencies */ -var Snapdragon = __webpack_require__(613); -utils.define = __webpack_require__(711); -utils.diff = __webpack_require__(688); -utils.extend = __webpack_require__(590); -utils.pick = __webpack_require__(689); -utils.typeOf = __webpack_require__(587); -utils.unique = __webpack_require__(595); +var Snapdragon = __webpack_require__(618); +utils.define = __webpack_require__(716); +utils.diff = __webpack_require__(693); +utils.extend = __webpack_require__(595); +utils.pick = __webpack_require__(694); +utils.typeOf = __webpack_require__(592); +utils.unique = __webpack_require__(600); /** * Returns true if the platform is windows, or `path.sep` is `\\`. @@ -79760,7 +80186,7 @@ utils.unixify = function(options) { /***/ }), -/* 711 */ +/* 716 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -79773,8 +80199,8 @@ utils.unixify = function(options) { -var isobject = __webpack_require__(585); -var isDescriptor = __webpack_require__(586); +var isobject = __webpack_require__(590); +var isDescriptor = __webpack_require__(591); var define = (typeof Reflect !== 'undefined' && Reflect.defineProperty) ? Reflect.defineProperty : Object.defineProperty; @@ -79805,7 +80231,7 @@ module.exports = function defineProperty(obj, key, val) { /***/ }), -/* 712 */ +/* 717 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -79824,9 +80250,9 @@ var __extends = (this && this.__extends) || (function () { }; })(); Object.defineProperty(exports, "__esModule", { value: true }); -var readdir = __webpack_require__(713); -var reader_1 = __webpack_require__(726); -var fs_stream_1 = __webpack_require__(730); +var readdir = __webpack_require__(718); +var reader_1 = __webpack_require__(731); +var fs_stream_1 = __webpack_require__(735); var ReaderAsync = /** @class */ (function (_super) { __extends(ReaderAsync, _super); function ReaderAsync() { @@ -79887,15 +80313,15 @@ exports.default = ReaderAsync; /***/ }), -/* 713 */ +/* 718 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const readdirSync = __webpack_require__(714); -const readdirAsync = __webpack_require__(722); -const readdirStream = __webpack_require__(725); +const readdirSync = __webpack_require__(719); +const readdirAsync = __webpack_require__(727); +const readdirStream = __webpack_require__(730); module.exports = exports = readdirAsyncPath; exports.readdir = exports.readdirAsync = exports.async = readdirAsyncPath; @@ -79979,7 +80405,7 @@ function readdirStreamStat (dir, options) { /***/ }), -/* 714 */ +/* 719 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -79987,11 +80413,11 @@ function readdirStreamStat (dir, options) { module.exports = readdirSync; -const DirectoryReader = __webpack_require__(715); +const DirectoryReader = __webpack_require__(720); let syncFacade = { - fs: __webpack_require__(720), - forEach: __webpack_require__(721), + fs: __webpack_require__(725), + forEach: __webpack_require__(726), sync: true }; @@ -80020,7 +80446,7 @@ function readdirSync (dir, options, internalOptions) { /***/ }), -/* 715 */ +/* 720 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -80029,9 +80455,9 @@ function readdirSync (dir, options, internalOptions) { const Readable = __webpack_require__(138).Readable; const EventEmitter = __webpack_require__(157).EventEmitter; const path = __webpack_require__(4); -const normalizeOptions = __webpack_require__(716); -const stat = __webpack_require__(718); -const call = __webpack_require__(719); +const normalizeOptions = __webpack_require__(721); +const stat = __webpack_require__(723); +const call = __webpack_require__(724); /** * Asynchronously reads the contents of a directory and streams the results @@ -80407,14 +80833,14 @@ module.exports = DirectoryReader; /***/ }), -/* 716 */ +/* 721 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; const path = __webpack_require__(4); -const globToRegExp = __webpack_require__(717); +const globToRegExp = __webpack_require__(722); module.exports = normalizeOptions; @@ -80591,7 +81017,7 @@ function normalizeOptions (options, internalOptions) { /***/ }), -/* 717 */ +/* 722 */ /***/ (function(module, exports) { module.exports = function (glob, opts) { @@ -80728,13 +81154,13 @@ module.exports = function (glob, opts) { /***/ }), -/* 718 */ +/* 723 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const call = __webpack_require__(719); +const call = __webpack_require__(724); module.exports = stat; @@ -80809,7 +81235,7 @@ function symlinkStat (fs, path, lstats, callback) { /***/ }), -/* 719 */ +/* 724 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -80870,14 +81296,14 @@ function callOnce (fn) { /***/ }), -/* 720 */ +/* 725 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; const fs = __webpack_require__(134); -const call = __webpack_require__(719); +const call = __webpack_require__(724); /** * A facade around {@link fs.readdirSync} that allows it to be called @@ -80941,7 +81367,7 @@ exports.lstat = function (path, callback) { /***/ }), -/* 721 */ +/* 726 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -80970,7 +81396,7 @@ function syncForEach (array, iterator, done) { /***/ }), -/* 722 */ +/* 727 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -80978,12 +81404,12 @@ function syncForEach (array, iterator, done) { module.exports = readdirAsync; -const maybe = __webpack_require__(723); -const DirectoryReader = __webpack_require__(715); +const maybe = __webpack_require__(728); +const DirectoryReader = __webpack_require__(720); let asyncFacade = { fs: __webpack_require__(134), - forEach: __webpack_require__(724), + forEach: __webpack_require__(729), async: true }; @@ -81025,7 +81451,7 @@ function readdirAsync (dir, options, callback, internalOptions) { /***/ }), -/* 723 */ +/* 728 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -81052,7 +81478,7 @@ module.exports = function maybe (cb, promise) { /***/ }), -/* 724 */ +/* 729 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -81088,7 +81514,7 @@ function asyncForEach (array, iterator, done) { /***/ }), -/* 725 */ +/* 730 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -81096,11 +81522,11 @@ function asyncForEach (array, iterator, done) { module.exports = readdirStream; -const DirectoryReader = __webpack_require__(715); +const DirectoryReader = __webpack_require__(720); let streamFacade = { fs: __webpack_require__(134), - forEach: __webpack_require__(724), + forEach: __webpack_require__(729), async: true }; @@ -81120,16 +81546,16 @@ function readdirStream (dir, options, internalOptions) { /***/ }), -/* 726 */ +/* 731 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var path = __webpack_require__(4); -var deep_1 = __webpack_require__(727); -var entry_1 = __webpack_require__(729); -var pathUtil = __webpack_require__(728); +var deep_1 = __webpack_require__(732); +var entry_1 = __webpack_require__(734); +var pathUtil = __webpack_require__(733); var Reader = /** @class */ (function () { function Reader(options) { this.options = options; @@ -81195,14 +81621,14 @@ exports.default = Reader; /***/ }), -/* 727 */ +/* 732 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -var pathUtils = __webpack_require__(728); -var patternUtils = __webpack_require__(574); +var pathUtils = __webpack_require__(733); +var patternUtils = __webpack_require__(579); var DeepFilter = /** @class */ (function () { function DeepFilter(options, micromatchOptions) { this.options = options; @@ -81285,7 +81711,7 @@ exports.default = DeepFilter; /***/ }), -/* 728 */ +/* 733 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -81316,14 +81742,14 @@ exports.makeAbsolute = makeAbsolute; /***/ }), -/* 729 */ +/* 734 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -var pathUtils = __webpack_require__(728); -var patternUtils = __webpack_require__(574); +var pathUtils = __webpack_require__(733); +var patternUtils = __webpack_require__(579); var EntryFilter = /** @class */ (function () { function EntryFilter(options, micromatchOptions) { this.options = options; @@ -81408,7 +81834,7 @@ exports.default = EntryFilter; /***/ }), -/* 730 */ +/* 735 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -81428,8 +81854,8 @@ var __extends = (this && this.__extends) || (function () { })(); Object.defineProperty(exports, "__esModule", { value: true }); var stream = __webpack_require__(138); -var fsStat = __webpack_require__(731); -var fs_1 = __webpack_require__(735); +var fsStat = __webpack_require__(736); +var fs_1 = __webpack_require__(740); var FileSystemStream = /** @class */ (function (_super) { __extends(FileSystemStream, _super); function FileSystemStream() { @@ -81479,14 +81905,14 @@ exports.default = FileSystemStream; /***/ }), -/* 731 */ +/* 736 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -const optionsManager = __webpack_require__(732); -const statProvider = __webpack_require__(734); +const optionsManager = __webpack_require__(737); +const statProvider = __webpack_require__(739); /** * Asynchronous API. */ @@ -81517,13 +81943,13 @@ exports.statSync = statSync; /***/ }), -/* 732 */ +/* 737 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -const fsAdapter = __webpack_require__(733); +const fsAdapter = __webpack_require__(738); function prepare(opts) { const options = Object.assign({ fs: fsAdapter.getFileSystemAdapter(opts ? opts.fs : undefined), @@ -81536,7 +81962,7 @@ exports.prepare = prepare; /***/ }), -/* 733 */ +/* 738 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -81559,7 +81985,7 @@ exports.getFileSystemAdapter = getFileSystemAdapter; /***/ }), -/* 734 */ +/* 739 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -81611,7 +82037,7 @@ exports.isFollowedSymlink = isFollowedSymlink; /***/ }), -/* 735 */ +/* 740 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -81642,7 +82068,7 @@ exports.default = FileSystem; /***/ }), -/* 736 */ +/* 741 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -81662,9 +82088,9 @@ var __extends = (this && this.__extends) || (function () { })(); Object.defineProperty(exports, "__esModule", { value: true }); var stream = __webpack_require__(138); -var readdir = __webpack_require__(713); -var reader_1 = __webpack_require__(726); -var fs_stream_1 = __webpack_require__(730); +var readdir = __webpack_require__(718); +var reader_1 = __webpack_require__(731); +var fs_stream_1 = __webpack_require__(735); var TransformStream = /** @class */ (function (_super) { __extends(TransformStream, _super); function TransformStream(reader) { @@ -81732,7 +82158,7 @@ exports.default = ReaderStream; /***/ }), -/* 737 */ +/* 742 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -81751,9 +82177,9 @@ var __extends = (this && this.__extends) || (function () { }; })(); Object.defineProperty(exports, "__esModule", { value: true }); -var readdir = __webpack_require__(713); -var reader_1 = __webpack_require__(726); -var fs_sync_1 = __webpack_require__(738); +var readdir = __webpack_require__(718); +var reader_1 = __webpack_require__(731); +var fs_sync_1 = __webpack_require__(743); var ReaderSync = /** @class */ (function (_super) { __extends(ReaderSync, _super); function ReaderSync() { @@ -81813,7 +82239,7 @@ exports.default = ReaderSync; /***/ }), -/* 738 */ +/* 743 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -81832,8 +82258,8 @@ var __extends = (this && this.__extends) || (function () { }; })(); Object.defineProperty(exports, "__esModule", { value: true }); -var fsStat = __webpack_require__(731); -var fs_1 = __webpack_require__(735); +var fsStat = __webpack_require__(736); +var fs_1 = __webpack_require__(740); var FileSystemSync = /** @class */ (function (_super) { __extends(FileSystemSync, _super); function FileSystemSync() { @@ -81879,7 +82305,7 @@ exports.default = FileSystemSync; /***/ }), -/* 739 */ +/* 744 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -81895,13 +82321,13 @@ exports.flatten = flatten; /***/ }), -/* 740 */ +/* 745 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -var merge2 = __webpack_require__(348); +var merge2 = __webpack_require__(354); /** * Merge multiple streams and propagate their errors into one stream in parallel. */ @@ -81916,13 +82342,13 @@ exports.merge = merge; /***/ }), -/* 741 */ +/* 746 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; const path = __webpack_require__(4); -const pathType = __webpack_require__(742); +const pathType = __webpack_require__(747); const getExtensions = extensions => extensions.length > 1 ? `{${extensions.join(',')}}` : extensions[0]; @@ -81988,13 +82414,13 @@ module.exports.sync = (input, opts) => { /***/ }), -/* 742 */ +/* 747 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; const fs = __webpack_require__(134); -const pify = __webpack_require__(743); +const pify = __webpack_require__(748); function type(fn, fn2, fp) { if (typeof fp !== 'string') { @@ -82037,7 +82463,7 @@ exports.symlinkSync = typeSync.bind(null, 'lstatSync', 'isSymbolicLink'); /***/ }), -/* 743 */ +/* 748 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -82128,17 +82554,17 @@ module.exports = (obj, opts) => { /***/ }), -/* 744 */ +/* 749 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; const fs = __webpack_require__(134); const path = __webpack_require__(4); -const fastGlob = __webpack_require__(570); -const gitIgnore = __webpack_require__(745); -const pify = __webpack_require__(280); -const slash = __webpack_require__(746); +const fastGlob = __webpack_require__(575); +const gitIgnore = __webpack_require__(750); +const pify = __webpack_require__(285); +const slash = __webpack_require__(751); const DEFAULT_IGNORE = [ '**/node_modules/**', @@ -82236,7 +82662,7 @@ module.exports.sync = options => { /***/ }), -/* 745 */ +/* 750 */ /***/ (function(module, exports) { // A simple implementation of make-array @@ -82705,7 +83131,7 @@ module.exports = options => new IgnoreBase(options) /***/ }), -/* 746 */ +/* 751 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -82723,7 +83149,7 @@ module.exports = input => { /***/ }), -/* 747 */ +/* 752 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -82736,7 +83162,7 @@ module.exports = input => { -var isGlob = __webpack_require__(748); +var isGlob = __webpack_require__(753); module.exports = function hasGlob(val) { if (val == null) return false; @@ -82756,7 +83182,7 @@ module.exports = function hasGlob(val) { /***/ }), -/* 748 */ +/* 753 */ /***/ (function(module, exports, __webpack_require__) { /*! @@ -82766,7 +83192,7 @@ module.exports = function hasGlob(val) { * Licensed under the MIT License. */ -var isExtglob = __webpack_require__(359); +var isExtglob = __webpack_require__(365); module.exports = function isGlob(str) { if (typeof str !== 'string' || str === '') { @@ -82787,17 +83213,17 @@ module.exports = function isGlob(str) { /***/ }), -/* 749 */ +/* 754 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; const path = __webpack_require__(4); const {constants: fsConstants} = __webpack_require__(134); -const pEvent = __webpack_require__(750); -const CpFileError = __webpack_require__(753); -const fs = __webpack_require__(755); -const ProgressEmitter = __webpack_require__(757); +const pEvent = __webpack_require__(755); +const CpFileError = __webpack_require__(758); +const fs = __webpack_require__(760); +const ProgressEmitter = __webpack_require__(762); const cpFileAsync = async (source, destination, options, progressEmitter) => { let readError; @@ -82911,12 +83337,12 @@ module.exports.sync = (source, destination, options) => { /***/ }), -/* 750 */ +/* 755 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const pTimeout = __webpack_require__(751); +const pTimeout = __webpack_require__(756); const symbolAsyncIterator = Symbol.asyncIterator || '@@asyncIterator'; @@ -83209,13 +83635,13 @@ module.exports.TimeoutError = pTimeout.TimeoutError; /***/ }), -/* 751 */ +/* 756 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const pFinally = __webpack_require__(752); +const pFinally = __webpack_require__(757); class TimeoutError extends Error { constructor(message) { @@ -83273,7 +83699,7 @@ module.exports.TimeoutError = TimeoutError; /***/ }), -/* 752 */ +/* 757 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -83295,12 +83721,12 @@ module.exports = (promise, onFinally) => { /***/ }), -/* 753 */ +/* 758 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const NestedError = __webpack_require__(754); +const NestedError = __webpack_require__(759); class CpFileError extends NestedError { constructor(message, nested) { @@ -83314,7 +83740,7 @@ module.exports = CpFileError; /***/ }), -/* 754 */ +/* 759 */ /***/ (function(module, exports, __webpack_require__) { var inherits = __webpack_require__(112).inherits; @@ -83370,16 +83796,16 @@ module.exports = NestedError; /***/ }), -/* 755 */ +/* 760 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; const {promisify} = __webpack_require__(112); const fs = __webpack_require__(133); -const makeDir = __webpack_require__(756); -const pEvent = __webpack_require__(750); -const CpFileError = __webpack_require__(753); +const makeDir = __webpack_require__(761); +const pEvent = __webpack_require__(755); +const CpFileError = __webpack_require__(758); const stat = promisify(fs.stat); const lstat = promisify(fs.lstat); @@ -83476,7 +83902,7 @@ exports.copyFileSync = (source, destination, flags) => { /***/ }), -/* 756 */ +/* 761 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -83484,7 +83910,7 @@ exports.copyFileSync = (source, destination, flags) => { const fs = __webpack_require__(134); const path = __webpack_require__(4); const {promisify} = __webpack_require__(112); -const semver = __webpack_require__(191); +const semver = __webpack_require__(196); const useNativeRecursiveOption = semver.satisfies(process.version, '>=10.12.0'); @@ -83639,7 +84065,7 @@ module.exports.sync = (input, options) => { /***/ }), -/* 757 */ +/* 762 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -83680,7 +84106,7 @@ module.exports = ProgressEmitter; /***/ }), -/* 758 */ +/* 763 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -83726,12 +84152,12 @@ exports.default = module.exports; /***/ }), -/* 759 */ +/* 764 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const pMap = __webpack_require__(760); +const pMap = __webpack_require__(765); const pFilter = async (iterable, filterer, options) => { const values = await pMap( @@ -83748,7 +84174,7 @@ module.exports.default = pFilter; /***/ }), -/* 760 */ +/* 765 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -83827,12 +84253,12 @@ module.exports.default = pMap; /***/ }), -/* 761 */ +/* 766 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -const NestedError = __webpack_require__(754); +const NestedError = __webpack_require__(759); class CpyError extends NestedError { constructor(message, nested) { diff --git a/packages/osd-pm/package.json b/packages/osd-pm/package.json index 94b2c327274d..f6c25309e992 100644 --- a/packages/osd-pm/package.json +++ b/packages/osd-pm/package.json @@ -56,6 +56,7 @@ "prettier": "^2.1.1", "read-pkg": "^5.2.0", "rxjs": "^6.5.5", + "semver": "^7.5.3", "strip-ansi": "^6.0.0", "strong-log-transformer": "^2.1.0", "tempy": "^0.3.0", diff --git a/packages/osd-pm/src/cli.ts b/packages/osd-pm/src/cli.ts index 420298aefb0d..63e9a1a274e7 100644 --- a/packages/osd-pm/src/cli.ts +++ b/packages/osd-pm/src/cli.ts @@ -42,7 +42,7 @@ function help() { dedent` usage: osd [] - By default commands are run for OpenSearch Dashboards itself, all packages in the 'packages/' + By default, commands are run for OpenSearch Dashboards itself, all packages in the 'packages/' folder and for all plugins in './plugins' and '../opensearch-dashboards-extra'. Available commands: @@ -57,6 +57,7 @@ function help() { -i, --include Include only specified projects. If left unspecified, it defaults to including all projects. --skip-opensearch-dashboards-plugins Filter all plugins in ./plugins and ../opensearch-dashboards-extra when running command. --no-cache Disable the bootstrap cache + --single-version Set single version validation method: 'strict', 'loose', 'ignore', or 'brute-force' --verbose Set log level to verbose --debug Set log level to debug --quiet Set log level to error @@ -92,6 +93,7 @@ export async function run(argv: string[]) { cache: true, }, boolean: ['prefer-offline', 'frozen-lockfile', 'cache'], + string: ['single-version'], }); const args = options._; diff --git a/packages/osd-pm/src/commands/bootstrap.ts b/packages/osd-pm/src/commands/bootstrap.ts index 54d48daa5f54..b3a0551f6111 100644 --- a/packages/osd-pm/src/commands/bootstrap.ts +++ b/packages/osd-pm/src/commands/bootstrap.ts @@ -69,7 +69,7 @@ export const BootstrapCommand: ICommand = { const yarnLock = await readYarnLock(osd); - await validateDependencies(osd, yarnLock); + await validateDependencies(osd, yarnLock, options['single-version']?.toLowerCase?.()); await linkProjectExecutables(projects, projectGraph); diff --git a/packages/osd-pm/src/utils/project.ts b/packages/osd-pm/src/utils/project.ts index 3eddcfd472bb..b6ced1517bf9 100644 --- a/packages/osd-pm/src/utils/project.ts +++ b/packages/osd-pm/src/utils/project.ts @@ -28,8 +28,8 @@ * under the License. */ -import fs from 'fs'; -import Path from 'path'; +import { existsSync, unlinkSync } from 'fs'; +import { resolve, relative } from 'path'; import { inspect } from 'util'; import { CliError } from './errors'; @@ -43,6 +43,7 @@ import { } from './package_json'; import { installInDir, + patchFile, runScriptInPackage, runScriptInPackageStreaming, yarnWorkspacesInfo, @@ -97,9 +98,9 @@ export class Project { this.json = Object.freeze(packageJson); this.path = projectPath; - this.packageJsonLocation = Path.resolve(this.path, 'package.json'); - this.nodeModulesLocation = Path.resolve(this.path, 'node_modules'); - this.targetLocation = Path.resolve(this.path, 'target'); + this.packageJsonLocation = resolve(this.path, 'package.json'); + this.nodeModulesLocation = resolve(this.path, 'node_modules'); + this.targetLocation = resolve(this.path, 'target'); this.version = this.json.version; this.productionDependencies = this.json.dependencies || {}; @@ -130,7 +131,7 @@ export class Project { if (dependentProjectIsInWorkspace) { expectedVersionInPackageJson = project.json.version; } else { - const relativePathToProject = normalizePath(Path.relative(this.path, project.path)); + const relativePathToProject = normalizePath(relative(this.path, project.path)); expectedVersionInPackageJson = `link:${relativePathToProject}`; } @@ -168,7 +169,7 @@ export class Project { * instead of everything located in the project directory. */ public getIntermediateBuildDirectory() { - return Path.resolve(this.path, this.getBuildConfig().intermediateBuildDirectory || '.'); + return resolve(this.path, this.getBuildConfig().intermediateBuildDirectory || '.'); } public getCleanConfig(): CleanConfig { @@ -196,14 +197,14 @@ export class Project { if (typeof raw === 'string') { return { - [this.name]: Path.resolve(this.path, raw), + [this.name]: resolve(this.path, raw), }; } if (typeof raw === 'object') { const binsConfig: { [k: string]: string } = {}; for (const binName of Object.keys(raw)) { - binsConfig[binName] = Path.resolve(this.path, raw[binName]); + binsConfig[binName] = resolve(this.path, raw[binName]); } return binsConfig; } @@ -261,6 +262,51 @@ export class Project { await this.removeExtraneousNodeModules(); } + /** + * Install a specific version of a dependency and update the package.json. + * When a range is not specified, ^ is used. The range is then + * placed in the package.json with intentionally no validation. + */ + public async installDependencyVersion( + depName: string, + version: string, + dev: boolean = false, + range?: string + ) { + log.info(`[${this.name}] running yarn to install ${depName}@${version}`); + + log.write(''); + + const rangeToUse = range || `^${version}`; + + const extraArgs = [`${depName}@${version}`]; + if (dev) extraArgs.push('--dev'); + + if (this.isWorkspaceProject) { + await installInDir(this.path); + } else { + await installInDir(this.path, extraArgs, true); + } + + log.info(`[${this.name}] updating manifests with ${depName}@${rangeToUse}`); + + await patchFile( + this.packageJsonLocation, + `"${depName}": "${version}"`, + `"${depName}": "${rangeToUse}"` + ); + // The lock-file of workspace packages are symlinked to the root project's and editing the one in the project suffices + await patchFile( + resolve(this.path, 'yarn.lock'), + `${depName}@${version}`, + `${depName}@${rangeToUse}` + ); + + log.write(''); + + await this.removeExtraneousNodeModules(); + } + /** * Yarn workspaces symlinks workspace projects to the root node_modules, even * when there is no depenency on the project. This results in unnecicary, and @@ -283,13 +329,13 @@ export class Project { unusedWorkspaces.forEach((name) => { const { dependencies, devDependencies } = this.json; - const nodeModulesPath = Path.resolve(this.nodeModulesLocation, name); + const nodeModulesPath = resolve(this.nodeModulesLocation, name); const isDependency = dependencies && dependencies.hasOwnProperty(name); const isDevDependency = devDependencies && devDependencies.hasOwnProperty(name); - if (!isDependency && !isDevDependency && fs.existsSync(nodeModulesPath)) { + if (!isDependency && !isDevDependency && existsSync(nodeModulesPath)) { log.debug(`No dependency on ${name}, removing link in node_modules`); - fs.unlinkSync(nodeModulesPath); + unlinkSync(nodeModulesPath); } }); } diff --git a/packages/osd-pm/src/utils/scripts.ts b/packages/osd-pm/src/utils/scripts.ts index cbb49875c021..7011c09fb585 100644 --- a/packages/osd-pm/src/utils/scripts.ts +++ b/packages/osd-pm/src/utils/scripts.ts @@ -28,6 +28,8 @@ * under the License. */ +import { createReadStream, createWriteStream, unlinkSync, renameSync } from 'fs'; +import { createInterface } from 'readline'; import { spawn, spawnStreaming } from './child_process'; import { Project } from './project'; @@ -45,8 +47,8 @@ interface WorkspacesInfo { /** * Install all dependencies in the given directory */ -export async function installInDir(directory: string, extraArgs: string[] = []) { - const options = ['install', '--non-interactive', ...extraArgs]; +export async function installInDir(directory: string, extraArgs: string[] = [], useAdd = false) { + const options = [useAdd ? 'add' : 'install', '--non-interactive', ...extraArgs]; // We pass the mutex flag to ensure only one instance of yarn runs at any // given time (e.g. to avoid conflicts). @@ -55,6 +57,40 @@ export async function installInDir(directory: string, extraArgs: string[] = []) }); } +/** + * Patch a file by replacing a given string + */ +export function patchFile( + filePath: string, + searchValue: string, + replacement: string +): Promise { + return new Promise(async (resolve, reject) => { + const patchWriter = createWriteStream(`${filePath}.patched`, { + flags: 'w', + }); + const fileReader = createInterface({ + input: createReadStream(filePath), + crlfDelay: Infinity, + }); + for await (const line of fileReader) { + if (line.includes(searchValue)) { + patchWriter.write(line.replace(searchValue, replacement) + '\n', 'utf8'); + } else { + patchWriter.write(line + '\n', 'utf8'); + } + } + + patchWriter.on('finish', () => resolve()); + patchWriter.on('error', reject); + + fileReader.close(); + patchWriter.end(); + unlinkSync(filePath); + renameSync(`${filePath}.patched`, filePath); + }); +} + /** * Run script in the given directory */ diff --git a/packages/osd-pm/src/utils/validate_dependencies.ts b/packages/osd-pm/src/utils/validate_dependencies.ts index 2264681b986c..930f48ef5947 100644 --- a/packages/osd-pm/src/utils/validate_dependencies.ts +++ b/packages/osd-pm/src/utils/validate_dependencies.ts @@ -29,9 +29,12 @@ */ // @ts-expect-error published types are useless -import { stringify as stringifyLockfile } from '@yarnpkg/lockfile'; +import { stringify as stringifyLockfile, parse as parseLockFile } from '@yarnpkg/lockfile'; import dedent from 'dedent'; import chalk from 'chalk'; +import path from 'path'; +import { readFileSync } from 'fs'; +import { satisfies, rcompare } from 'semver'; import { writeFile } from './fs'; import { OpenSearchDashboards } from '../utils/opensearch_dashboards'; @@ -40,8 +43,43 @@ import { log } from './log'; import { Project } from './project'; import { ITree, treeToString } from './projects_tree'; -export async function validateDependencies(osd: OpenSearchDashboards, yarnLock: YarnLock) { - // look through all of the packages in the yarn.lock file to see if +enum SingleVersionResolution { + STRICT = 'strict', + LOOSE = 'loose', + FORCE = 'force', + BRUTE_FORCE = 'brute-force', + IGNORE = 'ignore', +} + +export async function validateDependencies( + osd: OpenSearchDashboards, + yarnLock: YarnLock, + /* `singleVersionResolution` controls how violations of single-version-dependencies is applied. + * STRICT (default): throw an error and exit + * LOOSE: identify and install a single version that satisfies all ranges + * BRUTE_FORCE: identify and install the newest version + * IGNORE: show all errors without exiting + * + * `LOOSE`: + * Reconciles the various versions installed as a result of having multiple ranges for a dependency, by + * choosing one that satisfies all said ranges. Even though installing the chosen version updates the + * lock-files, no package.json changes would be needed. + * + * `BRUTE_FORCE`: + * With no care for reconciliation, the newest of the various versions installed is chosen, irrespective of + * whether it satisfies any of the ranges. Installing the chosen version updates the lock-files and a range + * in the form of `^` is applied to all `package.json` files that declared the dependency. + * + * `FORCE`: + * For each dependency, first LOOSE resolution is attempted but if that fails, BRUTE_FORCE is applied. + * + * `IGNORE`: + * Behaves just like `strict` by showing errors when different ranges of a package are marked as + * dependencies, but it does not terminate the script. + */ + singleVersionResolution: SingleVersionResolution = SingleVersionResolution.STRICT +) { + // look through all the packages in the yarn.lock file to see if // we have accidentally installed multiple lodash v4 versions const lodash4Versions = new Set(); const lodash4Reqs = new Set(); @@ -109,11 +147,17 @@ export async function validateDependencies(osd: OpenSearchDashboards, yarnLock: process.exit(1); } - // TODO: remove this once we move into a single package.json + let hasIssues = false; + // look through all the package.json files to find packages which have mismatched version ranges const depRanges = new Map>(); for (const project of osd.getAllProjects().values()) { - for (const [dep, range] of Object.entries(project.allDependencies)) { + for (const [dep, range] of Object.entries( + // Don't be bothered with validating dev-deps when validating single-version loosely + singleVersionResolution === SingleVersionResolution.LOOSE + ? project.productionDependencies + : project.allDependencies + )) { const existingDep = depRanges.get(dep); if (!existingDep) { depRanges.set(dep, [ @@ -138,21 +182,181 @@ export async function validateDependencies(osd: OpenSearchDashboards, yarnLock: } } - const duplicateRanges = Array.from(depRanges.entries()) - .filter(([, ranges]) => ranges.length > 1) - .reduce( - (acc: string[], [dep, ranges]) => [ - ...acc, - dep, - ...ranges.map( - ({ range, projects }) => ` ${range} => ${projects.map((p) => p.name).join(', ')}` - ), - ], - [] - ) - .join('\n '); - - if (duplicateRanges) { + const cachedManifests = new Map(); + const violatingSingleVersionDepRanges = new Map< + string, + Array<{ range: string; projects: Project[] }> + >(); + depRangesLoop: for (const [depName, ranges] of depRanges) { + // No violation if just a single range of a dependency is used + if (ranges.length === 1) continue; + + const installedVersions = new Set(); + const installedDepVersionsCache = new Map(); + const desiredRanges = new Map(); + + rangesLoop: for (const { range, projects } of ranges) { + for (const project of projects) { + if (!cachedManifests.has(project.path)) + cachedManifests.set( + project.path, + // If there are errors reading or parsing the lockfiles, don't catch and let them fall through + parseLockFile(readFileSync(path.join(project.path, 'yarn.lock'), 'utf-8')) + ); + const { object: deps } = cachedManifests.get(project.path); + if (deps?.[`${depName}@${range}`]?.version) { + installedVersions.add(deps[`${depName}@${range}`].version); + installedDepVersionsCache.set( + `${project.name}#${depName}`, + deps[`${depName}@${range}`].version + ); + } else { + log.warning(`Failed to find the installed version for ${depName}@${range}`); + // If we cannot read any one of the installed versions of a depName, there is no point in continuing with it + installedVersions.clear(); + desiredRanges.clear(); + break rangesLoop; + } + } + + desiredRanges.set(range, projects); + } + + // More than one range is used but couldn't get all the installed versions: call out violation + if (installedVersions.size === 0) { + violatingSingleVersionDepRanges.set(depName, ranges); + continue; // go to the next depRange + } + + if ( + singleVersionResolution === SingleVersionResolution.LOOSE || + // validating with force first acts like loose + singleVersionResolution === SingleVersionResolution.FORCE + ) { + if (installedVersions.size === 1) { + hasIssues = true; + + /* When validating single-version loosely, ignore multiple ranges when they result in the installation of + * a single version. + */ + log.info( + `Ignored single version requirement for ${depName} as all installations are using v${ + installedVersions.values().next().value + }.` + ); + + continue; // go to the next depRange + } + + const sortedInstalledVersion = Array.from(installedVersions).sort(rcompare); + const rangePatterns = Array.from(desiredRanges.keys()); + + for (const installedVersion of sortedInstalledVersion) { + if (rangePatterns.every((range) => satisfies(installedVersion, range))) { + // Install the version on all projects that have this dep; keep the original range. + for (const { range, projects } of ranges) { + for (const project of projects) { + // Don't bother updating anything if the desired version is already installed + if (installedDepVersionsCache.get(`${project.name}#${depName}`) === installedVersion) + continue; + + await project.installDependencyVersion( + depName, + installedVersion, + depName in project.devDependencies, + // When validating single-version loosely, when a version change is needed, the range shouldn't change + range + ); + } + } + + hasIssues = true; + + const conflictingRanges = ranges + .map(({ range, projects }) => `${range} => ${projects.map((p) => p.name).join(', ')}`) + .join('\n '); + log.warning(dedent` + + [single_version_dependencies] Multiple version ranges for package "${depName}" + were found across different package.json files. A suitable version, v${installedVersion}, was + identified and installed. + + The conflicting version ranges are: + ${conflictingRanges} + `); + + // A usable version was identified so no need to check the lower versions + continue depRangesLoop; // go to the next depRange + } + } + + /* Here because a suitable version was not found. When validating single-version loosely and here, give up. + * However, don't give up when validating with force and act like brute-force! + */ + if (singleVersionResolution === SingleVersionResolution.LOOSE) { + violatingSingleVersionDepRanges.set(depName, ranges); + continue; // go to the next depRange + } + } + + if ( + singleVersionResolution === SingleVersionResolution.BRUTE_FORCE || + // validating with force here means we failed to get results when acting loosely + singleVersionResolution === SingleVersionResolution.FORCE + ) { + const sortedInstalledVersion = Array.from(installedVersions).sort(rcompare); + + hasIssues = true; + + const suitableVersion = sortedInstalledVersion[0]; + const suitableRange = `^${suitableVersion}`; + + // Install the version on all projects that have this dep; use the suitable range. + for (const { projects } of ranges) { + for (const project of projects) { + await project.installDependencyVersion( + depName, + suitableVersion, + depName in project.devDependencies, + suitableRange + ); + } + } + + const conflictingRanges = ranges + .map(({ range, projects }) => `${range} => ${projects.map((p) => p.name).join(', ')}`) + .join('\n '); + log.warning(dedent` + + [single_version_dependencies] Multiple version ranges for package "${depName}" + were found across different package.json files. A version, v${suitableVersion}, was identified as the most recent + already installed replacement. All package.json files have been updated to indicate a dependency on \`${depName}@${suitableRange}\`. + + The conflicting version ranges are: + ${conflictingRanges} + `); + + continue; // go to the next depRange + } + + // Here because validation was not loose, forced, or brute-forced; just call out the vilation. + violatingSingleVersionDepRanges.set(depName, ranges); + } + + if (violatingSingleVersionDepRanges.size > 0) { + const duplicateRanges = Array.from(violatingSingleVersionDepRanges.entries()) + .reduce( + (acc: string[], [dep, ranges]) => [ + ...acc, + dep, + ...ranges.map( + ({ range, projects }) => ` ${range} => ${projects.map((p) => p.name).join(', ')}` + ), + ], + [] + ) + .join('\n '); + log.error(dedent` [single_version_dependencies] Multiple version ranges for the same dependency @@ -167,10 +371,12 @@ export async function validateDependencies(osd: OpenSearchDashboards, yarnLock: ${duplicateRanges} `); - process.exit(1); + if (singleVersionResolution !== SingleVersionResolution.IGNORE) { + process.exit(1); + } } - // look for packages that have the the `opensearchDashboards.devOnly` flag in their package.json + // look for packages that have the `opensearchDashboards.devOnly` flag in their package.json // and make sure they aren't included in the production dependencies of OpenSearch Dashboards const devOnlyProjectsInProduction = getDevOnlyProductionDepsTree(osd, 'opensearch-dashboards'); if (devOnlyProjectsInProduction) { @@ -187,7 +393,9 @@ export async function validateDependencies(osd: OpenSearchDashboards, yarnLock: process.exit(1); } - log.success('yarn.lock analysis completed without any issues'); + log.success( + hasIssues ? 'yarn.lock analysis completed' : 'yarn.lock analysis completed without any issues' + ); } function getDevOnlyProductionDepsTree(osd: OpenSearchDashboards, projectName: string) {